初始AIGC(五):LangChain框架初体验

前言

在之前的OpenAI专栏中,曾先后介绍了如何实现简单的AI客服回复、简单的图片识别、简单的情感分析以及tokenizer模块。在其中我们学习了来自Hugging Face的transformers库,它是一个流行的用于自然语言处理(NLP)的 Python 库,并导入其中的pipeline模块以实现简单情感分析。还使用了来自大众点评的中文模型以进行更准确的分析。之后还学习到了pipeline模块中引入字典SUPPORTED_TASKS ,其中包含了 Transformers 库支持的各种任务(tasks)的信息。结合PIL(Python的图片的专业库)实现了图片中物体位置的识别。最近我正在学习LangChain框架,由于是很新的框架,你在GPT3.5也搜索不到他的相关知识。下面我会简单介绍一下我的学习成果。

首先,何为LangChain框架呢?

LangChain 是一个帮助在应用程序中使用大型语言模型的编程框架。是一款Python工具,2023年2月份增加了对Typescript的支持。2023年4月份,可以支持多种 JavaScript 环境了,包括 Node.js、浏览器、Cloudflare Workers、Vercel/Next.js、Deno 和 Supabase Edge Functions。它可以让AI开发人员把像GPT-4这样的大型语言模型和外部数据结合起来。它提供了Python或JavaScript(TypeScript) 的包。

LangChain框架有什么作用

由于大模型本身存在应用局限,LangChain 可以加快基于大模型的应用构建速度。以ChatGPT为例, 其训练数据只截至 2021 年底,无法实时获取外部信息,所以你在GPT3.5都搜不到LangChain框架的信息,因为它是2022年诞生的,另一个缺点就是,通用大模型仅训练了公开的数据知识,对于一些较为专业的问题大模型会给出胡说八道的答案。目前这些缺陷都可以通过外接 API 的方式来进行改善,比如 OpenAI 官方给出了 Plugin 让 ChatGPT 可以接入互联网,用向量数据库 作为知识库对 prompt 进行处理后再对大模型进行提问等。而LangChain为开发者们提供了方便,它封装好了大量的API相关逻辑和代码实现,开发者们可以直接调用,大大加快了构建一个应用的速度。

在学习LangChain框架之前,我们得先做好一些准备工作。

获取Openai_key

  1. 进入OpenAI官网

2.使用Google账号登录(现在好像得绑定国外手机号才能进去,大家可以去网上租一个短时间的国外手机号(不是很贵,大概一块多)进行验证,)

3.登录后点击右上角Log in 会来到下面页面,点击右边的API

  1. 右上角找到View API keys
  1. 创建一个新的key

OK,拿到API keys之后,我们就可以进行今天的学习了。

我们依旧使用Colaboratory来书写代码,这个在之前的文章介绍过。今天我们只进行简单代码的书写(博主也刚入门^-^)

第一步:

  • 安装LangChain框架
ini 复制代码
!pip install langchain==0.0.316

第二步:

  • 安装openai,这里值得注意的是,这里版本的选择很重要,这里我们一定要指定版本为0.28.1,如果没有指定安装的版本,就会默认安装最新版得openai,但是最新版在这里不兼容!所以我们要指定OpenAI的代码,才能进行接下来的操作。
ini 复制代码
!pip install openai==0.28.1

第三步:

  • 导入LangChain中的HumanMessage,准备进行回复。
python 复制代码
from langchain.chat_models import ChatOpenAI
from langchain.schema import HumanMessage
import os
os.environ['OPENAI_API_KEY'] = '这里输入自己的API keys'
chat = ChatOpenAI(temperature=0,model_name="gpt-3.5-turbo")
# openai  接受的就是一个数组
response = chat([HumanMessage(content="Hello LangChain!")])
print(response)

第四步:

  • 试试自定义
scss 复制代码
response = chat([HumanMessage(content="怎样才能变得更优秀?")])
print(response)

今天的内容比较简单,接下来我还会继续学习更深层次的内容,并更新我的分享。资料来源在下面的链接中,大家感兴趣的也可以去了解一下。

参考资料

-(wtf-langchain/01_Hello_Langchain at main · sugarforever/wtf-langchain (github.com))

相关推荐
chengxuyuan1213_6 分钟前
Python有哪些常用的库
开发语言·python
小白—人工智能17 分钟前
有一个4*5的矩阵如下,要求编写程序计算总和与平均值,并找出其中值最大的那个元素输出,以及其所在的行号和列号。
数据结构·python·算法·矩阵
海域云赵从友20 分钟前
香港 GPU 服务器托管引领 AI 创新,助力 AI 发展
运维·服务器·人工智能
四口鲸鱼爱吃盐32 分钟前
Pytorch | 利用GRA针对CIFAR10上的ResNet分类器进行对抗攻击
人工智能·pytorch·python·深度学习·计算机视觉
蓝天星空32 分钟前
制作一个类似ChatGPT的AI对话网站,模型能力使用ChatGPT
人工智能
汤姆和佩琦35 分钟前
24-12-28-pytorch深度学习中音频I/O 中遇到的问题汇总
人工智能·pytorch·python·深度学习·音视频·i/o
IT管理圈1 小时前
50个JAVA常见代码大全:学完这篇从Java小白到架构师
java·windows·python
静静AI学堂1 小时前
SCSA:探索空间与通道注意力之间的协同效应
人工智能·深度学习·yolo·目标跟踪
kkkkkkkkkkaZZL1 小时前
图片拼接|横向拼接|竖向拼接|正方形拼接|其他模式拼接 python
python·opencv·计算机视觉
网安kk1 小时前
2025年三个月自学手册 网络安全(黑客技术)
linux·网络·python·安全·web安全·网络安全·密码学