LangChain

LangChain 的提供了以下 6 种标准化、可扩展的接口并且可以外部集成的核心模块:模型输 入/输出(Model I/O)与语言模型交互的接口;数据连接(Data connection)与特定应用程序的数 据进行交互的接口;链(Chains)用于复杂的应用的调用序列;智能体(Agents)语言模型作为推 理器决定要执行的动作序列;记忆(Memory)用于链的多次运行之间持久化应用程序状态;回调

(Callbacks)记录和流式传输任何链式组装的中间步骤。

1. 模型输入/输出(Model I/O)

主要包含以下部分:Prompts、Language Models 以 及 Output Parsers。

Prompts 部分主要功能是提示词模板、提示词动态选择和输入管理。LangChain 中的 PromptTemplate 类可以根据模板生成提示词,它包含了一个 文本字符串("模板"),可以根据从用户获取的一组参数生成提示词。

Language Models 部分提供了与大语言模型的接口,LangChain 提供了两种类型模型的接口和 集成:LLMs,接受文本字符串作为输入并返回文本字符串;Chat Model,由大语言模型支持,但 接受 Chat Messages 列表作为输入并返回 Chat Message。在 LangChain 中,LLMs 指纯文本完成模 型。接受字符串提示词作为输入,并输出字符串完成。OpenAI 的 GPT-3 是 LLM 实现的一个实例。 其中的"Chat Model"专为会话交互设计。与传统的纯文本补全模型相比,这一模型的 API 采用了 不同的接口方式:它需要一个标有说话者身份的聊天消息列表作为输入,如"系统"、"AI"或"人 类"。作为响应,Chat Model 会返回一个标为"AI"的聊天消息输出。GPT-4 和 Anthropic 的 Claude

都可以通过 Chat Model 调用。

Output Parsers 部分的目标是辅助开发者从大语言模型输出中获取比仅文本更结构化的信息。比如 PydanticOutputParser 允许用户指定任 意的 JSON 模式,并通过构建指令的方式与用户输入结合,使得大语言模型输出符合指定模式的JSON。

2. 数据连接(Data connection)

加载、转 换、存储和查询数据:Document loaders、Document transformers、Text embedding models、Vector stores 以及 Retrievers。

Document loaders(文档加载)旨在从源中加载数据构建 Document。

Document transformers(文档转换)旨在处理文档拆分、合并、过滤等。

Text embedding model(s 文本嵌入模型)旨在将非结构化文本转换为嵌入表示。

Vector Stores(向量存储)是存储和检索非结构化数据的主要方式之一。它首先将数据转化为 嵌入表示,然后存储这些生成的嵌入向量。在查询阶段,系统会利用这些嵌入向量来检索与查询内 容"最相似"的文档。向量存储的主要任务是保存这些嵌入数据并执行基于向量的搜索。

Retrievers(检索器)是一个接口,其功能是基于非结构化查询返回相应的文档。

3. 链(Chain)

将多个 大语言模型进行链式组合

4. 记忆(Memory)

5. 智能体(Agents)

智能体通过将大语言模型与动作列表结合,自动地选择最佳的动作序列,从而实现自动化决策和行动。

Agent:是负责决定下一步该采取什么步骤的类。由大语言模型和提示驱动。

Toolkits:是一组旨在一起使用以完成特定任务的工具集合,并具有方便的加载方法。

Tools:是智能体调用的函数。这里有两个重要的考虑因素:1)为智能体提供正确的工具访 问权限;2)用对智能体最有帮助的方式描述工具。

AgentExecutor:是智能体的运行空间,这是实际调用智能体并执行其选择的操作的部分。

6. 回调(Callbacks)

LangChain 提供了回调系统,允许连接到大语言模型应用程序的各个阶段。这对于日志记录、 监控、流式处理和其他任务非常有用。可以通过使用 API 中提供的 callbacks 参数订阅这些事件。

相关推荐
nihaoma30205 小时前
//C++中的智能指针自动资源管理与内存安全指南
langchain
玲小珑7 小时前
LangChain.js 完全开发手册(十三)AI Agent 生态系统与工具集成
前端·langchain·ai编程
想学全栈的菜鸟阿董18 小时前
LangChain部署RAG part2.搭建多模态RAG引擎(赋范大模型社区公开课听课笔记)
langchain
听到微笑1 天前
LLM 只会生成文本?用 ReAct 模式手搓一个简易 Claude Code Agent
人工智能·langchain·llm
Stream_Silver2 天前
LangChain入门实践3:PromptTemplate提示词模板详解
java·python·学习·langchain·language model
爱喝白开水a3 天前
2025时序数据库选型,从架构基因到AI赋能来解析
开发语言·数据库·人工智能·架构·langchain·transformer·时序数据库
小墨宝4 天前
web前端学习 langchain
前端·学习·langchain
脚踏实地的大梦想家5 天前
【LangChain】P10 LangChain 提示词模板深度解析(一):Prompt Template
langchain·prompt
OopsOutOfMemory5 天前
LangChain源码分析(十三)- 运行时与监控
ai·langchain·aigc·ai编程·ai应用
OopsOutOfMemory5 天前
LangChain源码分析(一)- LLM大语言模型
人工智能·语言模型·langchain·aigc