LangChain如何将GenAI变成真正有用的助手

2024年01月03日 由 neo 发表 306 0

OpenAI的ChatGPT及其衍生品的生成式AI运动,可能让人印象最深的是自动化编程辅助。但是,有一个新的开源框架,它基于大型语言模型,正在为GenAI带来更实用的焦点。

LangChain,才上线一年多,你可以将它视为一个简单的库,它可以成为GenAI模型上编程AI代理的一个入门级的介绍。这项技术得到了一个同名的风险投资支持的初创公司的赞助,该公司提供了一个服务器平台,用于商业部署用 LangChain 开发的应用程序。

LangChain的核心是它将一个大型语言模型的提示和各种外部资源结合在一起。这样,它就可以从数据库中提取数据,比如,然后将语言模型的输出送给一个应用程序,获取该应用程序的输出并将其送回语言模型,反复循环。

这个框架因此允许将资源连接在一起,其中每个资源都成为一种代理,处理语言模型和提示的上下文中的问题的一部分。

例如,使用 LangChain,程序员们可以将超声波成像和诸如乳腺癌诊断等事情结合起来,使用类似于ChatGP 的自然语言提示。放射科医生可以用一句话,比如“请给我一个根据探头位置给出的观察的总结”,在乳腺超声波图像中调用计算机作为分析助手。

langchain-breast-ultrasound-application

这个程序的一个有趣的方面,是它由韩国高等科学技术学院的 Jaeyoung Huh 和他的同事们构建,它将三个不同的神经网络结合在一起,这是一种广泛使用的类型——ResNet-50——它是一种擅长图像分类的经典视觉神经网络。

这三个神经网络中的每一个都分别被训练来执行一个任务,比如识别超声波图像中的可疑形状,对该形状进行分类,以及找出该形状在身体中的位置。

LangChain 的目的是将这三个网络包裹在自然语言命令中,比如“给我一个给定图像的探头信息”,然后“给我一个给定观察的总结”。

在最简单的层面上,LangChain可以是一种创建AI的用户友好的前端的方法,这是诸如医疗AI领域的专家们长期梦想的一种方法,他们试图创建一种能够响应口头命令的医生助手。

一些LangChain努力的目标是试图消除GenAI的臭名昭著的幻觉(程序的错误信息)通过将技术基于权威的外部来源。咨询公司Accenture的一个团队,由 Sohini Roychowdhury 领导,描述了一个通过“财务聊天机器人”进行财务预测的系统。

该系统从电子表格中取出单元格,并将它们转换为关于数据的自然语言陈述,然后可以在这些陈述上进行搜索,以找到与问题匹配的句子。

它是这样工作的:用户用一个自然语言问题提示语言模型,比如“我的销售情况如何?”这个提示被输入到一个模板中,该模板生成一个更精确的语言模型的提示。这个提示可能包含比一个人想到的更多的详细的问题词,以产生一个更好的提示。

finance-chat-bot-2023

改进后的提示触发了一个关键词搜索,这个搜索从由表格数据构建的句子中挑选出哪些句子指向表格中最相关的数据(例如,销售额、利润)。

一旦获取了相关数据,第二套模板就会帮助聊天机器人使用表格数据中的句子来对查询进行回复。

Roychowdhury和他的团队并没有消除幻觉。相反,他们设计了一个“置信度”评分机制,让聊天机器人根据问题检查它的答案,看它们匹配得有多好,然后为它的答案分配高、中或低的置信度。

Roychowdhury解释说:“置信度告诉用户在使用中低置信度的回答做关键决策时要谨慎。置信度还有助于确定哪些用户查询需要进一步改进以提高可靠性。”

程序员们发现LangChain可以是一种自动化一些极其平凡的任务的方法。一个例子是检查员工的网页使用情况,确保他们没有浏览非法的网站。一个描述公司“可接受使用政策”的文档被上传到所谓的向量数据库,这是一种特殊的数据库,可以将文本字符串,比如说一个 URL,与文档中的一组文本字符串进行比较,看是否有匹配。

当一个人在浏览器中输入一个 URL 时,网站的 URL 和网站内容的摘要都可以自动与向量数据库中的政策文档进行比较,看网站的内容是否与任何禁止的主题匹配。程序员可以用一个简单的文本提示来自动化比较,问:“这个网站中有没有什么东西与禁止的项目匹配?”

这个例子清楚地表明,大型语言模型和LangChain正在超越个人的查询。它们正在成为程序员使用自然语言命令来集成他们手头的各种工具,以实现幕后功能的一种方法。

LangChain 不是唯一一个具有代理质量的编译工作流的框架,还有更多这样的框架正在被创建,包括微软的语义内核和开源的 LlamaIndex,它是基于 LangChain 构建的。

一群来自斯坦福大学、加州大学伯克利分校和卡内基梅隆大学的学者,以及来自私营企业的合作者,在十月份推出了他们称之为DSPy的编程方法,它用功能描述替换了手工编码的自然语言提示,并可以反过来自动生成提示。功能描述可以非常广泛,比如“消费问题并返回答案”。DSPy具有一个编译器,可以优化语言模型和支持工具的流程。

作者指出,DSPy 的努力类似于通过抽象层推进神经网络的深度学习框架,包括Torch 和 Theano。

作者声称,在每个实例中,不使用手工制作的提示,而使用功能描述,可以显著提高质量。“在几分钟到几十分钟的编译内,DSPy模块的组合可以将简单程序的质量从 33% 提高到提高到 82%,”他们写道。


在 GenAI 框架游戏中,这还是非常早期的阶段,你可以期待在未来的一年里,在LangChain的上面、下面和周围有更多的抽象层。”
文章来源:https://www.zdnet.com/article/how-langchain-turns-genai-into-a-genuinely-useful-assistant/
欢迎关注ATYUN官方公众号
商务合作及内容投稿请联系邮箱:bd@atyun.com
评论 登录
热门职位
Maluuba
20000~40000/月
Cisco
25000~30000/月 深圳市
PilotAILabs
30000~60000/年 深圳市
写评论取消
回复取消