LangChain:大语言模型的新篇章

LangChain:大型语言模型的新篇章与应用

一、引言

近期,大型语言模型(LLM)如GPT系列模型引领了人工智能领域的一场技术革命。开发者们都在利用这些LLM进行各种尝试,虽然已经产生了许多有趣的应用,但是单独使用这些LLM往往难以构建功能强大的实用应用。

LangChain通过将大型语言模型与其他知识库、计算逻辑相结合,实现了功能更加强大的人工智能应用。简单来说,个人理解LangChain可以被视为开源版的GPT插件,它提供了丰富的大语言模型工具,可以在开源模型的基础上快速增强模型的能力。

在此,我总结了最近对LangChain的学习内容,希望能与更多的朋友一起交流。LangChain使得语言技术的运用更加活跃多元,它有望在人工智能领域发挥重要作用,推动我们工作效率的变革。我们正处在人工智能爆发的前夜,积极拥抱新技术将会带来全新的体验。

二、介绍

什么是LangChain?

LangChain产生源于Harrison与领域内的一些人交谈,这些人正在构建复杂的LLM应用,他在开发方式上看到了一些可以抽象的部分。一个应用可能需要多次提示LLM并解析其输出,因此需要编写大量的复制粘贴。

LangChain使这个开发过程更加简单。一经推出后,在社区被广泛采纳,不仅有众多用户,还有许多贡献者参与开源工作。

主要特性:

1.数据感知:能够将语言模型与其他数据源进行连接。 数据的读取和处理

2.代理性:允许语言模型与其环境进行交互。可以通过写工具的方式做各种事情,数据的写入更新。 我理解是对数据的更新写入

主要价值:

1、将需要开发LLM应用所需要的功能进行组件化,并且提供了很多工具,方便使用,开箱即用。

2、有一些现成的可以完整特定功能的链,也可以理解为提高了工具方便使用,不仅有工具也封装了一些现成的产品场景。

LangChain的主要模块?

这一部分我第一次接触在4月份,那个时候LangChain在v0.0.6x的版本,最近新增了一些功能,当然最近新增的功能看起来更加的合理,往好的方向发展,但是主要模块变化不大。

image.png

三、LangChain主要概念与示例

以下核心部分模块,都有对应的实践代码放在本仓库中,执行代码需要做的一些准备:

  • 能访问外网
  • 模型使用:申请OpenAPI的Key、申请HuggingFace的Key.
  • Google搜素工具:申请SERPAPI。serpapi.com/
  • 模型调试:注册下WandB账号,复制下key: wandb.ai/site
OPENAI_API_KEY=
HUG_API_KEY=
SERPAPI_API_KEY=
WANDB_API_KEY=

另外本次案例,一些比较重要的模块安装:

pip install openai python-dotenv langchain google-search-results tiktoken sentence_transformers chromadb redis faiss-cpu playwright wandb langflow

模块 说明 安装命令
openai python-dotenv langchain 主要的LangChain模块 pip install openai python-dotenv langchain
google-search-results 使用Google搜索的接口 pip install google-search-results
tiktoken 进行summary的时候,需要进行分割 pip install tiktoken
sentence_transformers 进行文本Embedding pip install sentence_transformers
chromadb 向量数据库,存储文本嵌入向量 pip install chromadb
redis 如果chromadb有bug,使用redis存储向量也可以 pip install redis
faiss-cpu Facebook的相似性向量搜索库 pip install faiss-cpu
playwright 浏览器测试工具,Agent测试时候用 pip install playwright
wandb LangChain调试工具 pip install wandb
langflow LangChain可视化配置工具 pip install langflow

Model I/O

和大模型交互的部分,LangChain为我们抽象了三个组件,模型输入、模型、模型输出解析器:

image.png

Model

LangChain的一个核心价值就是它提供了标准的模型接口;然后我们可以自由的切换不同的模型,当前主要有两种类型的模型,LLMs(语言模型)和Chat Models(聊天模型).说到模型,大家就理解模型就是ChatGPT就可以。单纯的模型只能生成文本内容。

  • LLMs:这类模型接受一个文本字符串作为输入,然后返回一个文本字符串作为输出。主要用于文本生成任务
  • Chat Models:将聊天消息列表作为输入,并返回一个聊天消息,通常这些消息会标明语言的角色(通常是"System"、“AI"或"Human”),这类模型是基于语言模型的,但是它们被专门调整用于进行对话。

image.png

Prompt

面向模型编程,其实就是写Prompt。 Prompt是模型的输入,高质量的Prompt对于充分发挥AI的能力至关重要。LangChain提供了两个工具:

  • Prompt templates:参数化模板。
  • Example selectors: 动态的选择在Prompt中的例子

image.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值