简介
对大语言模型的调用实际上是一次或多次上下文无关的独立事件,如果想要实现聊天、问答、API调用甚至一些更复杂的业务场景,直接去调用API是无法实现的。需要在这个过程里面整合不同类型的业务代码逻辑。
LangChain就是对这些通用逻辑做了封装,让使用者可以不用关注在与大模型之间的交互细节,能够更专注在业务本身上,通过组合模块和能力抽象来扩展 LLM 的能力,通过 chain、agent、model 等多种封装工具,提供了扩展 LLM 使用场景、便捷 LLM 调用方式的一系列功能。
正如这张图所展示的,LangChain 主要具备的核心模块有:
| 模块 | 能力介绍 |
|---|---|
| Prompts | 模板化、动态选择和管理模型输入 |
| Models | 通过通用接口调用语言模型 |
| Parser | 标准化输出模型返回信息 |
| Memory | 上下文信息存储功能 |
| Chains | 将零散的功能逻辑串联成完整的业务流程 |
| Agents | 工具类的合集,解决大模型处理不了的问题 |
通过这些能力,LangChain 能够解决的应用场景有:
- 问答机器人
- 摘要汇总
- 聊天机器人
- 数据查询
- 与接口交互
- 理解代码
官方网站
- Python 官方教程:python.langchain.com/
- 源码地址:github.com/langchain-a…
其主要支持语言为:
- python
- js/ts
LangChain 的价值
最近几个月, LangChain 已经成为了 AIGC 领域最火的框架。
看到这里,可能很多人心存疑问,为什么开发者要用 LangChain 而不是直接使用 OpenAI 所提供的方法呢?原因是目前的 GPT 模型存在以下的缺点,在产品中集成与使用依然需要大量的成本:
- Max Token 限制
- 私有化模型
- 没法查询数据库
- 数据截止 2021 年 Q3
- 不能调用第三方 API
- 无法联网
- 无法对接外部工具
- 数据隐私
- 输出结果不稳定
实践演练
环境准备
- 稳定的科学上网环境。
- Python 环境。
- API Token: Api Token 获取教程
环境安装
通过 pip 安装 langchain:
pip install langchain
通过 pip 安装 openai:
pip install openai