[AIGC] LangChain 框架--OpenAI目前最“强”框架入门

今天,我们来带大家学习一个强大的OpenAI框架LangChain,在以往的开发过程当中,我需要一个一个模型进行调用,而有了LangChain,能够为我们省去至少1/2的工作量!

一、LangChain小白入门简介!

LangChain是一个强大的框架,旨在帮助开发人员使用语言模型构建端到端的应用程序,它提供了一套工具、组件和接口,可简化创建由大型语言模型(LLM)和聊天模型提供支持的应用程序的过程。

LangChain作为一个语言模型集成框架,其使用案例与语言模型的使用案例大致重叠,包括文档分析和摘要、聊天机器人和代码分析。它提供了灵活的抽象和AI优先的工具,可帮助开发人员将LLM应用程序从原型转化为生产环境。

通过LangChain我们可以实现例如:

  • 基于文档数据的问答
  • 聊天机器人
  • 代码分析

等等功能,这里我们分享一个大佬的链接,里面有关于LangChain框架的更多用法:wtf-langchain/01_Hello_Langchain at main · sugarforever/wtf-langchain (github.com)

二、OpenAI简介

相关玩AIGC的各位大佬,对OpenAI已经相当哇塞了!这里我还是为大家简单介绍一遍!

OpenAI(Open Artificial Intelligence)是一个致力于推动人工智能(AI)研究和开发的研究实验室。大家所熟知的ChatGPT-3.5,ChatGPT-4等等模型都是其产品!我们可以通过一个OpenAI提供的Api-Key来对这些模型进行调用!

三、LangChain开发必备

  1. 谷歌账号 --用于登录Colab(欢迎使用 Colaboratory - Colaboratory (google.com)

    • Google Colab(Colaboratory)是一款由Google提供的免费云端Python编程环境。通过Colab,你可以在任何地方、任何设备上使用浏览器运行和编写Python代码,而无需担心本地环境的设置和配置。它的界面基于Jupyter Notebooks,这种交互式文档格式让你能够在代码中嵌入文字、图像,从而更好地组织和分享你的工作。

      Colab不仅提供免费的云计算资源,包括GPU和TPU,还内置了许多常用的Python库和框架,如NumPy、Pandas、Matplotlib,以及流行的深度学习框架TensorFlow和PyTorch。这使得Colab成为进行数据分析、机器学习实验和深度学习模型训练的理想选择。

  1. OpenAI账号--用于获取Api-key调用OpenAI模型(注意查看自己的账号是否还有余额,不然会报错!)

四、安装指令

1、安装LangChain框架

python 复制代码
!pip install langchain==0.0.316

首先安装的是版本号为0.0.316的langchain模型! 安装界面如下图所示!

2、安装OpenAI模型

python 复制代码
!pip install openai==0.28.1

**注意!!!**这里我们一定要指定版本为0.28.1,如果没有指定安装的版本,会默认安装最新版,而最新版不兼容!所以我们要指定OpenAI的代码,才能完成我们的后续操作!!

安装界面如下图所示:

3、版本号知识普及

例如0.0.316

面试官:0.0.316是什么意思?

版本号通常由三个数字组成,形式为 X.Y.Z。在版本号 "0.0.316" 中:

X: 主版本号。当进行重大更改或不向后兼容的更改时,递增 X。

Y: 次版本号。当添加新功能或进行向后兼容的更改时,递增 Y。

Z: 补丁版本号。通常是修复错误或进行其他小的改进时递增 Z。

"0.0.316" 是一个非常早期或者是一个处于开发阶段的版本号。在大多数情况下,主版本号为零表示产品可能处于早期开发或测试阶段,而不稳定或者可能会发生重大更改。还没有正式公测。

五、运行代码!

python 复制代码
from langchain.chat_models import ChatOpenAI
from langchain.schema import HumanMessage
import os 
os.environ['OPENAI_API_KEY']='你的有效的OepnAI Api key'
chat = ChatOpenAI(temperature=0,model_name="gpt-3.5-turbo")
response = chat([HumanMessage(content="Hello LangChain!")])
print(response)

输入完上述代码之后,你应该看到这样的一个回复:

python 复制代码
content='Hello! How can I assist you today?'

我接下来为大家分析一下这段代码:

  • from langchain.chat_models import ChatOpenAI:从 langchain 包的 chat_models 模块中导入名为 ChatOpenAI 的类。
  • from langchain.schema import HumanMessage:导入一个聊天模型,指定一个角色 我们是HumanMessage OpenAI是system
    • 这里分为三种角色,system assistant(助理) user(human人类)
  • import os引入一下文件系统
  • os.environ['OPENAI_API_KEY']='你的有效的OepnAI Api key':设置环境变量,LangChain自动来拿
  • chat = ChatOpenAI(temperature=0,model_name="gpt-3.5-turbo")temperature=0自由度为0,模型名称 (model_name)为"gpt-3.5-turbo"
  • response = chat([HumanMessage(content="Hello LangChain!")]):将一条人类的消息("Hello LangChain!")传递给 chat 对象,然后获取由 Chat 模型生成的响应,将其存储在 response 变量中。这可以用于进一步处理或显示模型生成的聊天响应。
    • 这里OpenAI接收的其实就是数组!
  • print(response):这个就很简单啦!输出一下OpenAI的响应!

接下来,我们就可以这样去与我们的模型进行对话了!

py 复制代码
response = chat([HumanMessage(content="我怎么样赚够一个亿")])
print(response)

我们会收到这样一个回复:

python 复制代码
content='要赚够一个亿,需要具备以下几个方面的条件和策略:\n\n1. 设定明确的目标:确定赚取一个亿的具体时间和方式,制定详细的计划和步骤。\n\n2. 提高自身能力:通过学习、培训和积累经验,提升自己的技能和知识,增加自身的竞争力。\n\n3. 创业或投资:可以选择创业或投资来实现财富积累。创业需要有创新的商业模式和市场需求,投资需要有正确的投资策略和风险控制能力。\n\n4. 多元化投资:将资金分散投资于不同的领域和项目,降低风险,提高回报。\n\n5. 深入了解市场:研究市场趋势和行业发展,找到有潜力的投资机会和商业机会。\n\n6. 节约和理财:合理规划和管理个人财务,控制开支,积极进行理财投资,增加财富积累。\n\n7. 建立人脉关系:与成功人士建立联系和合作,借助他们的经验和资源,获取更多的机会和支持。\n\n8. 坚持和耐心:赚取一个亿需要时间和努力,要有坚定的信念和持之以恒的精神。\n\n请注意,以上仅为一般性建议,具体的赚取一个亿的方法和策略需要根据个人情况和市场环境进行调整和实施。'

大家学会了吗?

这个框架还有更多用法,大家可以自己去探索一下!

如果大家对AIGC内容感兴趣的话,可以关注走一波哦!后续文章会持续输出的!点个赞鼓励支持一下吧🌹🌹🌹

个人github库:Aidan路修远i (github.com)

相关推荐
夏季疯42 分钟前
读论文:STARS 是什么结构?一个统一的歌声自动标注框架
python
光测实验室2 小时前
3种Python降噪算法实测:我把处理速度提升了20倍
python
AOwhisky2 小时前
Python 学习笔记(第三期)——流程控制核心知识点自测与详解
开发语言·笔记·python·学习·云原生·运维开发·流程控制
feiyu_gao2 小时前
别再让 AI 从零开始了
人工智能·架构·aigc
花花无缺3 小时前
Windows 定时执行 Python 脚本方案
python·操作系统·命令行
anyup3 小时前
这一套绝了!AI 大模型写故事,星云 SDK 驱动 3D 数字人实时演绎
前端·人工智能·aigc
墨风如雪3 小时前
WorkBuddy小白教程
aigc
穷人小水滴3 小时前
(科幻) 备用肉身虫 (Backup Body Bug, BBB) 系列设定 (202607 更新)
aigc·bug·科幻
孟陬3 小时前
高质量全方位的 AI 工具 sse-stuntman — Mock SSE 接口
前端·node.js·openai
流云鹤4 小时前
1. 配置环境、创建导航栏
python·django