2025 AI基础设施风向标,不看必后悔!#AI基础设施峰会 了解详情
写点什么

LangChain:2023 年最潮大语言模型 Web 开发框架

  • 2023-06-20
    北京
  • 本文字数:2195 字

    阅读完需:约 7 分钟

LangChain:2023年最潮大语言模型Web开发框架

LangChain 是一个帮助在应用程序中使用大型语言模型(LLM)的编程框架。与生成式 AI 中的所有东西一样,这个项目的发展也非常迅速。2022 年 10 月,它先是作为一款 Python 工具,然后在今年 2 月增加了对 TypeScript 的支持。到今年 4 月,它支持多种 JavaScript 环境,包括 Node.js、浏览器、Cloudflare Workers、Vercel/Next.js、Deno 和 Supabase Edge Functions。

 

那么,对于 JavaScript 开发者来说,他们需要了解有关 LangChain 的哪些方面以及如何使用 LLM?在本文中,我们将通过分析 LangChain 作者 Harrison Chase 最近的两次演讲来回答这个问题。

 

LangChain 最初是一个开源项目,在 GitHub 上获得大量关注之后迅速转变为一家初创公司。2017 年,Harrison Chase 还在哈佛上大学,如今已是硅谷的一家热门初创公司的 CEO,这对他来说是一次重大而迅速的跃迁。早些时候,微软首席技术官 Kevin Scott 在他的 Build 主题演讲中对 Chase 大加赞赏。

 

Chat App 的风靡

 

不出所料,LangChain 目前的主要应用是在 LLM(尤其是 ChatGPT)之上构建基于聊天的应用程序。正如 Tyler McGinnis 在 bytes.dev 上对 LangChain 调侃的那样:“聊天接口再多都不为过。”

 

在今年早些时候的一次采访中,Chase 说目前 LangChain 最好的一个应用场景是“基于文档的聊天”。LangChain 也提供了其他功能来增强聊天体验,比如流——也就是可以逐个返回 LLM 输出的单词,而不是一次返回所有内容。

 

不过 Chase 也指出,其他类型的接口也在迅速发展。

 

“从长远来看,可能会有比聊天应用更好的体验。但我认为,就目前而言,这是我们不需要做很多额外工作就能够迅速起步的一种方式。我们能说聊天应用在这半年内就一定是最好的体验吗?可能不能,但我认为目前能够带来价值的东西很可能就是聊天应用。”

 

毕竟基于 LLM 开发应用程序是一项新技术,这个领域的初创公司(比如 LangChain)一直都在努力推出一些工具来帮助了解与 LLM 相关的问题。以提示词工程为例,它仍然主要依赖开发者的直觉来判断哪个提示词会更好。不过,LangChain 今年引入了“追踪”等功能来帮助解决这个问题。

 

代理

 

LangChain 最近引入的一个特性是“定制代理”,Chase 在今年 4 月于旧金山举行的 LLM 训练营上提到了这个。他将代理定义为一种“使用语言模型作为推理引擎”来确定如何根据用户输入与外部世界发生交互的方式。



Harrison Chase 在 LLM 训练营上

 

他举了一个与 SQL 数据库发生交互的例子。他说,通常我们会使用自然语言查询和将其转换为 SQL 查询的语言模型。我们执行查询,并将结果传给语言模型,要求它根据原始问题对其进行综合,最终得到 Chase 所说的“基于 SQL 数据库的自然语言包装器”。

 

代理的作用是处理 Chase 所说的“边缘情况”,也就是 LLM 在上述示例中任何时候都可能出现的模糊输出。

 

他说:“你可以通过代理来选择要使用的工具和针对工具的输入。然后你执行它,得到结果,再把结果反馈到语言模型中。然后继续这样做,直到满足停止条件。”



实现代理

 

我们把代理称为“ReAct”,这与 JavaScript 框架 React 没有任何关系,“ReAct”是指“Reason + Act”。Chase 表示,与其他形式的提示词工程相比,这种方法能产生“更高质量、更可靠的结果”。



ReAct(并非 React)

 

Chase 承认,代理也存在“很多挑战”,而且“大多数代理目前还没有做好生产就绪的准备。”

 

记忆问题

 

他列出的一些问题似乎都是基础的计算机问题,但在 LLM 中,它们更具挑战性。例如,LLM 通常没有长期记忆。正如 Pinecone 教程中所指出的,“默认情况下,LLM 是无状态的——这意味着每一个查询的处理都是独立于其他查询进行的。”

 

LangChain 在这方面为开发者提供了帮助,它将记忆等组件添加到 LLM 的处理过程中。实际上,对于 JavaScript 和 TypeScript,LangChain 提供了两个与记忆相关的方法:loadMemoryVariables 和 saveContext。第一个方法“用于从内存中检索数据(也可使用当前输入值),第二个方法用于在内存中保存数据”。

 

Chase 提到的另一种形式的代理是 Auto-GPT,一种可以配置和部署自主 AI 代理的程序。

 

他说:“Auto-GPT 为代理和工具之间的交互提供了长期记忆,并使用检索向量作为存储(向量数据库)。”

 

新的 LAMP 技术栈?

 

显然,构建基于 LLM 的应用程序还有很多事情要做。在 Build 主题演讲中,微软将 LangChain 作为其“Copilot 技术栈”的“编排”层的一部分。在微软的系统中,编排包括提示词工程和所谓的“元提示词(Meta Prompt)”。

 

微软推出了自己的工具 Semantic Kernel,功能与 LangChain 类似。微软还发布了一个叫作 Prompt Flow 的工具,微软首席技术官 Kevin Scott 称其为“另一种整合了 LangChain 和 Semantic Kernel 的编排机制”。

 

需要注意的是,LangChain 中的“Chain”表明它可以与其他工具互操作——不仅是各种 LLM,还有其他开发框架。今年 5 月,Cloudflare 宣布其 Workers 框架支持 LangChain。

 

甚至还出现了一个关于 LangChain 的缩略词:OPL,即 OpenAI、Pinecone 和 LangChain。它的灵感可能来自 LAMP(Linux、Apache、MySQL、PHP/Perl/Python),20 世纪 90 年代的一个关键技术栈,Web 2.0 的推动器。我们不知道 OPL 会不会成为一个技术术语——当然,它的组件并不都是开源的——但无论如何,这是一个好迹象,表明 LangChain 已经成为许多开发者个人技术栈的重要组成部分。

 

原文链接:


https://thenewstack.io/langchain-the-trendiest-web-framework-of-2023-thanks-to-ai/


相关阅读:


Web3当下,最佳投资就是投资自己

Web3的反思,不要抱怨

给Web3创业者的28个原则

和我一起学习Web3

2023-06-20 15:138251

评论

发布
暂无评论
发现更多内容

过去一周热点回顾|Hoo虎符研究院 区块链简报 20220418期

区块链前沿News

虎符交易所

OceanBase 杨传辉参与数据库技术与应用发展研讨会

OceanBase 数据库

oceanbase

在线CSV转Plaintext(txt)工具

入门小站

工具

TDesign 更新周报(2022 年 4 月第 3 周)

TDesign

高效进行接口测试,简单易懂!

Liam

测试 Jmeter Postman swagger 测试工具

利用 Dio 完成数据删除操作

岛上码农

ios 跨平台 移动端开发 flutter开发 安卓开发

深圳助力建设全国「数据交易」大市场,「隐私计算」技术赋能数据要素安全流通

洞见科技

Apache Doris (incubating) 1.0 Release 版本正式发布!

ApacheDoris

数据库 大数据 开源 OLAP apache doris

[Day19]-[动态规划]分割等和子集

方勇(gopher)

LeetCode 动态规划 数据结构和算法

优秀程序员的30种思维(29/100)

hackstoic

技术思维

易周金融观点:遏制NFT金融化等打下监管良基

易观分析

NFT

【ELT.ZIP】OpenHarmony啃论文俱乐部——浅析稀疏表示医学图像

ELT.ZIP

OpenHarmony 医学影像 稀疏矩阵 ELT.ZIP

企业管理理念之人本善还是本恶

秋去冬来春未远

企业管理 人性本善 人性本恶 一念之差

另一视角看元宇宙:元宇宙文化正悄然改变世界

CECBC

Camtasia Studio2022汉化版

茶色酒

Camtasia2022

火遍全网的MBTI人格测试,为什么会有那么多人相信?

小炮

MBTI

国产化云平台如何实现多云管控,黄河云来“打样儿”

BoCloud博云

国产化 云管理平台

博云 BeyondCMP 云管理平台 5.6 版本发布

BoCloud博云

云管理平台

安全之花如何盛开在华为云空间的每个角落?

脑极体

linux之rpm命令

入门小站

Linux

Web3.0 时代,我们的生活将产生什么变化?

CECBC

关于数字货币的几点问题及回应

CECBC

【ELT.ZIP】OpenHarmony啃论文俱乐部——这些小风景你不应该错过

ELT.ZIP

神经网络 OpenHarmony ELT.ZIP

Java 操作 Office:POI word 之文档信息提取

程序员架构进阶

内容审核 4月日更 文档识别 4月月更

移动端日历组件设计与实现

CRMEB

如何做好任务管理,手把手教你怎么做最高效的任务管理

阿里云云效

云计算 阿里云 云原生 研发团队 项目协作

TASKCTL 连接不到服务器的4种情况

敏捷调度TASKCTL

分布式 调度引擎 ETL 自动化运维 调度任务

物联网低代码平台常用《组件介绍》

AIRIOT

开发 物联网 平台搭建、

以OceanBase为例,分析事务型评测基准对分布式数据库的适用性

OceanBase 数据库

分布式数据库 oceanbase

在线YAML转CSV工具

入门小站

工具

论利润中心内部核算和集团核算

秋去冬来春未远

阿米巴 利润中心 集团成本

LangChain:2023年最潮大语言模型Web开发框架_框架_Richard MacManus_InfoQ精选文章