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 参数订阅这些事件。

相关推荐
Jamence3 小时前
LLM试用-让Kimi、智谱、阿里通义、腾讯元宝、字节豆包、讯飞星火输出system prompt
gpt·chatgpt·langchain·prompt
科研小达人9 小时前
LangChain中使用Prompt01
langchain·prompt
功城师3 天前
大模型RAG:文档分块方案与RAG全流程
人工智能·自然语言处理·langchain·大模型·llm·大语言模型·rag
Langchain5 天前
不可错过!CMU最新《生成式人工智能大模型》课程:从文本、图像到多模态大模型
人工智能·自然语言处理·langchain·大模型·llm·大语言模型·多模态大模型
我爱学Python!6 天前
基于 LangChain 的自动化测试用例的生成与执行
人工智能·自然语言处理·langchain·自动化·llm·测试用例·大语言模型
贪玩懒悦8 天前
用langchain+streamlit应用RAG实现个人知识库助手搭建
人工智能·ai·语言模型·langchain·aigc
AI-智能8 天前
《开源大模型食用指南》,一杯奶茶速通大模型!新增Examples最佳实践!
人工智能·自然语言处理·langchain·开源·prompt·ai大模型
AI知识分享官11 天前
大模型增量训练--基于transformer制作一个大模型聊天机器人
人工智能·深度学习·算法·数据挖掘·langchain·机器人·transformer
weijie.zwj13 天前
LLM基础概念:Prompt
人工智能·python·langchain