赞
踩
LangChain是一个用于开发由语言模型驱动的应用程序的框架
官网
中文官网
python langchain
https://python.langchain.com.cn/docs/get_started/introduction
https://python.langchain.com/docs/get_started/introduction
langchain中有六大核心模块,分别是
对于模型,LangChain中可以使用如下三种的不同类型的模型
LLMs
大型语言模型(LLMs)是将文本字符串作为输入,并返回文本字符串作为输出。
聊天模型
聊天模型将聊天消息列表作为输入,并返回聊天消息。
文本嵌入模型
文本嵌入将文本作为输入,并返回一个浮点数列表。
1、永久设置pip源为国内源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple
2、安装langchain 如果不想永久设置国内源,可以指定临时源
pip install langchain -i https://mirrors.aliyun.com/pypi/simple
大语言模型(LLM)是指使用大量文本数据训练的深度学习模型,可以生成自然语言文本或理解语言文本的含义。大语言模型可以处理多种自然语言任务,如文本分类、问答、对话等,是通向人工智能的一条重要途径。
简单理解:
GPT3 June 11,2020 发布
2022年11月,OpenAI发布GPT3.5 API的新模型(text-davinci-003)
2022 12月,互联网热度爆发
2022 12月,Langchain第一版发布
于是LangChain出现了
现在我们已经安装了 LangChain 并设置了我们的环境,我们可以开始构建我们的语言模型LLM应用程序了。
我们可以在自己的本地运行一个开源的LLM模型,但是性能好点的LLM模型需要庞大的GPU资源,家里一般电脑无法支撑,当然你如果有一个a100的显卡那可以
既然我们无法本地搭建,那就可找第三方已经搭建好的模型,有提供好的API供我们使用,比如
这些公司都有API,通过这些API调用他们自己搭建好的模型
这里使用国外openai的API调用模型,所以我们首先需要安装他们的 SDK:
pip install openai -i https://mirrors.aliyun.com/pypi/simple
openai api key 获取参考
https://zhuanlan.zhihu.com/p/626463325
我们需要在终端设置环境变量。
export OPENAI_API_KEY="xxxx"
或者,你可以在 Jupiter 教程(或 Python 脚本)内部完成:
- import os
- os.environ["OPENAI_API_KEY"] = "xxxx"
比如我们要构建一个基于公司产品生成公司名称的服务。首先需要导入 LLM 包装器。
from langchain.llms import OpenAI
然后可以用任何参数初始化包装器。在这个例子中,我们可能希望输出更加随机,所以我们将以温度(temperature)初始化它。
llm = OpenAI(temperature=0.9)
如果你不想设置环境变量,你可以在初始化OpenAI LLM类时直接通过openai_api_key
命名参数传递密钥:
- from langchain.llms import OpenAI
-
- llm = OpenAI(openai_api_key="...")
然后根据输入调用LLM
- text = "What would be a good company name for a company that makes colorful socks?"
- print(llm(text)) # Feetful of Fun
完整代码
- import os
- from langchain.llms import OpenAI
-
- os.environ["OPENAI_API_KEY"] = "xxxx"
-
- llm = OpenAI(temperature=0.9)
- text = "What would be a good company name for a company that makes colorful socks?"
- print(llm(text))
上面案例演示了LLM最基本的功能:根据输入的文本生成新的文本
实际llm模块中的predict方法专门用于根据输入文本生成对应文本
所以上面的代码也可以如下实现
- import os
- from langchain.llms import OpenAI
-
- os.environ["OPENAI_API_KEY"] = "xxxx"
-
- llm = OpenAI()
-
- llm.predict("What would be a good company name for a company that makes colorful socks?",temperature=0.9)
-
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。