一、什么是LangChain
起源:帮助开发者们快速构建基于大型语言模型的端到端应用程序或工作流程。
LangChain 框架是一个用于开发各种下游应用的开源工具,可为各种大型语言模型应用提供通用接口,从而简化应用程序的开发流程。
利用 LangChain 框架构建的RAG应用可使用本地数据与用户问题通过一系列流程生成Prompt,输入大模型生成更好的回答
加载本地文档 -> 读取文本 -> 文本分割 -> 文本向量化 -> question 向量化 -> 在文本向量中匹配出与问句向量最相似的 top k 个 -> 匹配出的文本作为上下文和问题一起添加到 Prompt 中 -> 提交给 LLM 生成回答
二、LangChain的核心组件
LangChain 主要由 6 个核心组件组成:
模型输入/输出(Model I/O):语言模型交互接口
数据连接(Data connection):特定应用程序数据交互接口
链(Chains):组合组件,实现端到端应用
记忆(Memory):用于链的多次运行之间持久化应用程序状态
代理(Agents)、回调(Callbacks):扩展模型的推理能力
这六个组件可视实际情况自由组合
三、LangChain的稳定版本
2024年1月9日
LangChain 正式发布了其稳定版本 v0.1.0,涵盖上述六个组件
此外,LangChain v0.1.0版本兼顾了对 Python 和 JavaScript
的支持,架构设计更加条理清晰和稳固,具有很强的调试和观测功能,对于所有利用 LCEL 创建的 chain 均能支持流式处理,能够以结构化的格式返回信息,检索技术先进,并且了丰富的智能体和工具集合
四、LangChain的生态
包括
·LangChain Community:第三方集成
·LangChain Core:LangChain 框架的核心库、核心组件
·LangChain CLI:命令行工具
·LangServe:部署服务
·LangSmith:开发者平台