什么是langchain
是一个用于开发由语言模型驱动的应用程序的框架,致力于简化AI模型应用的开发.简单来说,langchain就是一个帮助开发者轻松完成AI模型应用开发的框架,现在支持python和js两个版本,它集成多种大语言模型及第三方api.
这篇文章将在python环境下使用langchain白嫖通义千问大模型,实现一个最简单的简单AI聊天机器人废话少说,直接进入正题:
1.安装langchain
打开cmd,输入命令安装环境
python
pip install langchain #安装langchain环境
pip install langchain-community #安装第三方集成,就是各种大语言模型
pip install dotenv #加载工具
2.准备工作
写代码之前先做一个准备工作-拿到阿里云灵积模型服务的apikey
传送门:阿里云开发者社区-云计算社区-阿里云 (aliyun.com)
1.登录或者注册
点击右上角进行注册账号,有账号的可以直接登录
2.搜索灵积模型服务,开通服务
点击立即开通,开启零元乐享.
- 进入产品控制台,创建api-key
进入API-KEY管理,同时记住这个qwen-max
创建一个api-key,这个api-key要好好保存,不慎遗失了,可以在查看里面找到这个key
3.写代码
在VScode或者PyCharm中编辑都行,创建好文件后就要开始编写代码了.
1.导入相关包
python
#导入相关包
import os
from dotenv import find_dotenv, load_dotenv
load_dotenv(find_dotenv())
SERPAPI_API_KEY=os.environ["DASHSCOPE_API_KEY"]
from langchain_community.llms import Tongyi
from langchain.chains import LLMChain
from langchain.prompts import PromptTemplate
os,dotenv都是用来加载环境变量DASHSCOPE_API_KEY的
Tongyi
就是这里使用的通义千问大语言模型
PromptTemplate
是提示词模板,用来给大模型做回答限制的,他会按照提示词模板的内容进行回答,跟模型的智慧程度有关,数据集越大的模型根据提示词做的回答越好,后期做Agent的效果越好.
LLMChain
就是用来把LLM和prompt进行联系的
2.实例化一个llm,定义它的角色
python
llm=Tongyi(temperature=1)
template='''
你的名字是小黑子,当人问问题的时候,你都会在开头加上'唱,跳,rap,篮球!',然后再回答{question}
'''
prompt=PromptTemplate(
template=template,
input_variables=["question"]#这个question就是用户输入的内容,这行代码不可缺少
)
chain = LLMChain(#将llm与prompt联系起来
llm=llm,
prompt=prompt
)
question='你是谁'
res=chain.invoke(question)#运行
print(res['text'])#打印结果
temperature=1
是调节文本多样性的,让回答更加丰富,为0时就会更加准确,大于0回答的就会带有llm的思维回答(可能会胡编乱造) res['text']
就是回答内容了,回答的一个字典包含了question和text
3.创建一个.env文件
python
DASHSCOPE_API_KEY="你的apikey"
4.关键点,修改langchain的底层代码
按住ctrl点击鼠标左键进入llms,
ctrl+F搜索tongyi,再点进去
再搜索qwen,找到这个qwen-plus将他修改成qwen-max
白嫖成功,看看输出结果
更多有趣的langchain程序,持续更新~
参考资料 LangChain