【AIGC】新手如何入门目前 AI 最强框架 LangChain 一起对话 GPT-3.5 Turbo 大模型

引言

在人工智能的浩瀚领域中,一场引人入胜的对话正在展开,如今开发者们可以通过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包,分别是langchainopenai,并且指定了它们的版本号。

  • !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环境中安装特定版本的 langchainopenai 包,以确保我们接下来的的代码能够在这些特定版本的包上正确运行。

配置环境 运行查看效果

点击+代码再添加一段新对话,然后输入下列指令:

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的强大力量,让我们一起相信、贡献、学习着。

那么到了这里我们今天的文章就结束啦~

创作不易,如果感觉这个文章对你有帮助的话,点个赞吧♥

更多内容【AIGC】如何使用Autogen库打造智能对话体验?请看保姆级教学

ReacheMe : GitHub Gitee

相关推荐
volcanical30 分钟前
Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena
人工智能·自然语言处理·机器翻译
大知闲闲哟32 分钟前
深度学习J6周 ResNeXt-50实战解析
人工智能·深度学习
静静AI学堂1 小时前
Yolo11改策略:卷积改进|SAC,提升模型对小目标和遮挡目标的检测性能|即插即用
人工智能·深度学习·目标跟踪
martian6652 小时前
【人工智能离散数学基础】——深入详解数理逻辑:理解基础逻辑概念,支持推理和决策系统
人工智能·数理逻辑·推理·决策系统
Schwertlilien2 小时前
图像处理-Ch7-图像金字塔和其他变换
图像处理·人工智能
凡人的AI工具箱2 小时前
每天40分玩转Django:Django类视图
数据库·人工智能·后端·python·django·sqlite
千天夜2 小时前
深度学习中的残差网络、加权残差连接(WRC)与跨阶段部分连接(CSP)详解
网络·人工智能·深度学习·神经网络·yolo·机器学习
凡人的AI工具箱2 小时前
每天40分玩转Django:实操图片分享社区
数据库·人工智能·后端·python·django
小军军军军军军2 小时前
MLU运行Stable Diffusion WebUI Forge【flux】
人工智能·python·语言模型·stable diffusion
诚威_lol_中大努力中2 小时前
关于VQ-GAN利用滑动窗口生成 高清图像
人工智能·神经网络·生成对抗网络