2024-08-02|
LangChain大语言模型AI应用Python
LangChain 模型接口
记录 LangChain 串联大模型、复用 Prompt、连接外部工具和构建记忆能力的模型接口。
基本介绍
- 串联多个大模型对话任务,实现多伦对话
- 将大模型与其他外部工具无缝连接
- 给大模型增加记忆能力
为什么选择langchain
- 全家桶式的体验,一套代码搞定多种需求 浪chain提供了覆盖 LLM 应用哥哥关键纬度的模块,快速构建智能体
| 模块 | 说明 |
|---|---|
| Models | 支持 OpenAI Anthropic Llama 等多种模型,封装调用细节和响应结构 |
| Prompts | 提供模版引擎和变量差值机制,让提示词更容易复用 |
| indexes | 索引与检索接口,构建企业级知识库能力 |
| Memory | 支持对话中记忆上下文,(长期+短期) 提升交互的连贯性 |
| Chains | 串联多个步骤形成逻辑工作流,是 LangChain 的灵魂 |
| Agents | 构建 能自己调用工具的大模型智能体,实现真正的自主行为 |
- 社区活跃,生态丰富 插件丰富: 社区适配众多模型与工具 教程齐全: 官方文档与第三方教程 对接成熟: 无缝支持 FAISS,Webhook 等外部工具
支持的语言
LangChain 支持主流的语言模型
- 文本补全模型
- 对话模型
文本补全模型
以一段纯文本输入,输出结果是一段连续的生成文字,通常用于单轮任务,如: 段落续写,内容润色,等
对话模型
支持多轮对话,通常用于需要上下文的场景,如: 聊天机器人,智能助手,等 输入格式: 带有身份标签的list,模型根据对话历史,生成更加自然的连续回复
LangChain生态由多个模块组成,每个模块各司其职
- @langchain/core Langchain 的内核,提供基础的抽象能力,如 Runnable(可运行的代码), Prompt (提示词模版),OutputParser(输出解析器),等
- @langchain/community 社区扩展包,收录了大量的第三方集成,如:各类向量数据库,模型api, 文档加载器、等
- langchain 是在核心能力基础的高阶封装,内置了常见的链式组件(Chains),智能体模块(Agents),工具调度(Tool),等大多数Langchain 应用的默认入口包
模型接口
- Models
- Prompts
- indexes
- Memory
- Chains
- Agents