引言
在人工智能的浩瀚领域中,一场引人入胜的对话正在展开,如今开发者们可以通过LangChain
这样的框架利用OpenAI的GPT-3.5 Turbo
等先进模型的力量。在上一篇AIGC文章我们感受了通过Atuogen
库体验了一回当老板的感觉。那么今天呢,我们的内容也十分有趣,如果你是新手也不用担心,因为通过LangChain
这个AI框架,将会大大减少我们需要编写的代码量,那么话不多说,让我们一起通过这个框架,开启一段充满趣味和创意的对话式人工智能之旅吧!
前奏(准备工作)
我们最重要的是我们能够获取一个还有Tokens
(余额)的api_key
,然后就是要用到的Colab
网站。
如何获取APIkeys?
首先我们进入到OPENAI的官网并且登入,然后我们会看到两个选项框 点击API
框
进入API页面后 鼠标移动到左侧选项栏并点击API keys
创建一个APIkey
然后点击创建一个新的APIkey 点击Create secret key
创建(随便给个名字) 然后点击复制按钮
到这里你就获取到了你的API_key啦,于是我们准备工作就做完了,下一步我们就可以直接开始今天的主题啦!
使用Colab进行编写
首先我们需要创建一个新的笔记本
- 在左上角点击文件然后点击新建笔记本
## 安装依赖 点击`+代码`添加对话,然后输入安装包的指令: ```python !pip install langchain==0.0.316 !pip install openai==0.28.1 ``` 最后点击运行,如果效果和我一样则说明这一步就成功啦~
解释下代码:
我们在Colab中的这段代码用于安装两个Python包,分别是langchain
和openai
,并且指定了它们的版本号。
!pip install
:这是Colab中的一种特殊语法,用于在Jupyter笔记本中运行系统命令,这里我们是用来安装Python包。langchain==0.0.316
:这表示安装langchain
包的版本号为0.0.316
。==
表示指定版本。openai==0.28.1
:这表示安装openai
包的版本号为0.28.1
。有的小伙伴可能会问,为什么要用低版本的openai
包,因为最新版本的openai包更新完导致与langchain
发生了不兼容冲突,但是我们使用版本号为0.28.1
的openai包时不会发生报错。
整体而言,我们这段代码的目的是在Colab环境中安装特定版本的
langchain
和openai
包,以确保我们接下来的的代码能够在这些特定版本的包上正确运行。
配置环境 运行查看效果
点击+代码
再添加一段新对话,然后输入下列指令:
python
from langchain.chat_models import ChatOpenAI
# 分为三种角色 system、 assistant、 user
# HumanMessage? 问题传给它就好了。
from langchain.schema import HumanMessage
import os
# 设置环境变量
os.environ['OPENAI_API_KEY'] = "Input your api_keys" //输入你的api_keys
chat = ChatOpenAI(temperature=0, model_name="gpt-3.5-turbo")
# openai接收的就是一个数组
response = chat([HumanMessage(content="Hello LangChain!")])
print(response)
然后我们点击运行 就可以查看到效果啦~
代码逐步解析
1. 导入所需模块
python
from langchain.chat_models import ChatOpenAI
from langchain.schema import HumanMessage
import os
这里我们导入了三个关键的Python
模块:
ChatOpenAI
: 提供了对ChatOpenAI
对话生成模型的访问。HumanMessage
: 是一个用于封装用户输入文本信息的类。os
: 提供了与操作系统交互的功能,这里用于设置环境变量。
2. 设置OpenAI API密钥
python
os.environ['OPENAI_API_KEY'] = "Input your api_keys" //输入你的api_keys
这里我们通过os.environ
设置了一个名为OPENAI_API_KEY
的环境变量,其值是你的OpenAI API密钥。我们配置API密钥的目的是用于验证并访问OpenAI服务的凭证。
3. 实例化ChatOpenAI模型
python
chat = ChatOpenAI(temperature=0, model_name="gpt-3.5-turbo")
在这一步,我们创建了一个ChatOpenAI
类的实例,即chat
对象。通过这个对象,使得我们可以与OpenAI GPT-3.5-turbo模型进行对话。并且给这个对象设置了两个参数:
temperature=0
: 控制模型生成输出的随机性,值为0表示生成更加确定性的输出。model_name="gpt-3.5-turbo"
: 指定了使用的对话生成模型。
4. 发送用户消息并获取模型回复
python
response = chat([HumanMessage(content="Hello LangChain!")])
这里我们通过chat
对象发送了一个包含用户消息的数组,用户消息使用HumanMessage
类封装,内容是"Hello LangChain!",当然我们可以根据自己的需求进行更改。后续chat
模型将处理这个消息并返回一个包含模型生成的回复的数组
,这里我们声明了一个变量response
用来存储返回值。
5. 打印模型回复
python
print(response)
最后一步呢,通过print
语句将模型生成的回复打印输出到Colab环境的控制台。这样,我们可以查看对话生成模型的回应结果啦。
当我们向其打招呼时,它给予了我们一个反馈,于是我们还可以向其询问其他问题:
总结
今天的内容就到此结束啦,总的来说就是认识了LangChain这个框架,使得我们编写代码的风格更加的轻量化了,当然我们实现的任务并不是很复杂,主要带着大家一起来感受一下AIGC的力量,在未来的发展中,我相信通过更多丰富强大的大模型和轻巧的AI框架能够让更多的人接触并轻松使用AI的强大力量,让我们一起相信、贡献、学习着。