langchain入门一:python+langchain+通义千问,白嫖qwen大模型实现自己的聊天机器人

什么是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.搜索灵积模型服务,开通服务

点击立即开通,开启零元乐享.

  1. 进入产品控制台,创建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

相关推荐
陈苏同学9 分钟前
4. 将pycharm本地项目同步到(Linux)服务器上——深度学习·科研实践·从0到1
linux·服务器·ide·人工智能·python·深度学习·pycharm
唐家小妹13 分钟前
介绍一款开源的 Modern GUI PySide6 / PyQt6的使用
python·pyqt
羊小猪~~44 分钟前
深度学习项目----用LSTM模型预测股价(包含LSTM网络简介,代码数据均可下载)
pytorch·python·rnn·深度学习·机器学习·数据分析·lstm
Marst Code1 小时前
(Django)初步使用
后端·python·django
985小水博一枚呀1 小时前
【对于Python爬虫的理解】数据挖掘、信息聚合、价格监控、新闻爬取等,附代码。
爬虫·python·深度学习·数据挖掘
立秋67892 小时前
Python的defaultdict详解
服务器·windows·python
萧鼎2 小时前
Python第三方库选择与使用陷阱避免
开发语言·python
白拾2 小时前
使用Conda管理python环境的指南
开发语言·python·conda
是刃小木啦~2 小时前
三维模型点云化工具V1.0使用介绍:将三维模型进行点云化生成
python·软件工程·pyqt·工业软件
总裁余(余登武)3 小时前
算法竞赛(Python)-万变中的不变“随机算法”
开发语言·python·算法