基于 LangChain 构建 LLM 应用程序设计与实践

本文介绍了LangChain,一个解决LLM开发痛点的框架,包括数据滞后、token限制等问题。文章详细阐述了LangChain的架构组件,如ModelI/O、Dataconnection、Memory和Agent,并展示了基于LangChain的检索增强聊天机器人实例。直播活动预告了实战应用开发的深入讲解。
摘要由CSDN通过智能技术生成

▼最近直播超级多,预约保你有收获

近期直播:基 LangChain大模型架构案例实践

 1

LangChain 是什么?

LangChain 和 Semantic Kernel 是当前比较受欢迎的两款 LLM 应用开发框架。

LangChain 作为一个大语言模型应用开发框架,解决了现在开发 LLM 大语言模型应用的一些切实痛点。以 ChatGPT 模型为例:

1、数据滞后,现在训练的数据是到 2021 年 9 月。

2、token 数量限制,如果让它对一个 800 页的 pdf 进行总结,直接使用则无能为力。

3、不能进行联网,获取不到最新的内容。

4、不能与其他数据源链接。

另外作为一个胶水层框架,极大地提高了开发效率,它的作用可以类比于 SpringCloud 在互联网后端开发中的角色,使得开发者可以更专注于创新和优化产品功能。

LangChain 发展速度非常快,也很火爆,短短半年就收获了个 66.9 K  star。LangChain 官方提供了 Python 和 JS 开发语言,第三方提供了 Java 版本。

e0e4ea53e7c8d289ccf0c7d0af226830.png

 2 

LangChain 架构设计剖析

以下是 LangChain 的组件与架构图(LangChain Python 和 LangChain JS/TS 的架构基本一致,本文中以 LangChain Python来完成剖析),基本完整描述了 LangChain 的组件与抽象层(callbacks 除外),以及它们之间的相关联系。

de1371d9c7f98d16d5f5d47f7febde22.png

第一、Model I/O

首先我们从最基本面的部分讲起,Model I/O 指的是和 LLM 直接进行交互的过程。

52c06ab0e0bbe17c28e2e1edfe832002.png

在 Model I/O 这一流程中,LangChain 抽象的组件主要有三个:Language models、Prompts、Output parsers。

第二、Data connection(是 LLM 的血液系统)

集成外部数据到 Language Model 中是 LangChain 提供的核心能力之一,也是市面上很多优秀的大语言模型应用成功的核心之一(Github Copilot Chat,网页聊天助手,论文总结助手,youtube 视频总结助手…),在LangChain中,Data connection这一层主要包含以下四个抽象组件:Document loaders、Document transformers、Vector stores、Retrievers。

52466a76441b200701924c547735783e.png

第三、Memory

Memory 可以帮助 Language Model 补充历史信息的上下文,LangChain 中的 Memory 是一个有点模糊的术语,它可以像记住你过去聊天过的信息一样简单,也可以结合向量数据库做更加复杂的历史信息检索,甚至维护相关实体及其关系的具体信息,这取决于具体的应用。

通常 Memory 用于较长的 Chain,能一定程度上提高模型的推理表现。

5e5f39936a7863f1620f1b0b05ae23f7.png

第四、Agent

在一些场景下,我们需要根据用户输入灵活地调用 LLM 和其它工具(LangChain 将工具抽象为 Tools 这一组件),Agent 为这样的应用程序提供了相关的支持。

Agent 可以访问一套工具,并根据用户输入确定要使用 Chain或是 Function,我们可以简单的理解为他可以动态的帮我们选择和调用 Chain 或者已有的工具。

ffb032cf0e2c4244f1c152f0f29617b8.png

 3

基于 LnagChain 的 LLM 应用程序架构设计

第一、基于 LangChain 使用检索增强(RAG)构建聊天机器人

在餐饮公司工作时,我们有一个任务是创建一个基于 ChatGPT 的聊天机器人,可以与用户聊天并提供相关食谱。

具体来说,源菜谱将被转换为嵌入式菜谱并保存在一个向量存储中:例如如果用户询问「健康食品」,查询会被转换为嵌入式菜谱,然后执行近似最近邻搜索以找到与嵌入式查询相似的菜谱,然后将其作为附加上下文提供给 ChatGPT,再由 ChatGPT 显示给用户。这种方法通常被称为检索增强生成。使用检索增强生成的聊天机器人的架构设计如下:

628a1b20466735cc524b4de87381c450.png

第二、还有众多的企业级使用场景,比如:构建本地知识库问答机器人等。

99da6de0c6174e53076e5e0a5acb927b.png

 4

免费超干货大模型 LangChain 应用开发实战直播

为了帮助同学们掌握好 LangChain 的技术架构和应用案例实战,本周日晚上8点,我会开一场直播和同学们深度聊聊 LangChain 技术架构剖析、LangChain 的应用案例实战,请同学点击下方按钮预约直播,咱们本周日晚8点不见不散哦~~

近期直播:基于LangChain大模型架构案例实践

END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值