初始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))

相关推荐
DS随心转插件几秒前
DeepSeek 代码手机端导出与 AI 辅助方案实测
android·人工智能·chatgpt·智能手机·deepseek·ai导出鸭
He少年1 分钟前
【实践AI 编程规则引擎深度解读:从零理解工程化设计】
人工智能
hero827482741 分钟前
公司武装AI
人工智能
Irissgwe3 分钟前
十、LangGraph能力详解:LangGraph 的其他特性
python·ai·langchain·langgraph
阿文的代码库6 分钟前
机器学习任务二分类的应用案例
人工智能·机器学习·分类
hixiong1237 分钟前
C# LLamaSharp部署大语言模型实例
人工智能·语言模型·自然语言处理
吴阿福|一人公司8 分钟前
类变量和实例变量的命名规范有哪些避坑点?
开发语言·python
morning_judger13 分钟前
Agent开发系列(八)-组织知识库建设
人工智能
HERR_QQ13 分钟前
端到端课程自用 8 规划 端到端与VLA 世界模型 RL的关系
人工智能·深度学习·自动驾驶·transformer
小江的记录本14 分钟前
【Spring全家桶】Spring AI核心原理、大模型集成、Prompt工程、RAG实现、AI Agent开发(附《思维导图》+《面试高频考点清单》)
java·人工智能·spring boot·后端·spring·面试·prompt