一、准备
本项目使用www.perfxcloud.net 大模型平台,网站上有详细的说明文档。
注意:PerfXCloud的API接口兼容 OpenAI 的ChatGPT,可以直接使用 OpenAI SDK或者其他中间件来访问 PerfXCloud。这使得开发者从ChatGPT或者其他平台切换到PerfXCloud变得非常非常容易。
- 如果还没有PerfXCloud的账号,可以登录网站创建一个。
- PerfXCloud目前支持 :Qwen1.5-110B-Chat-GPTQ-Int4, Qwen1.5-72B-Chat-GPTQ-Int4, Qwen2-72B-Instruct-GPTQ-Int4, Meta-Llama-3-70B-Instruct-GPTQ-Int4, Qwen-14B-Chat-Int4, Meta-Llama-3-8B-Instruct,Llama3-Chinese_v2, chatglm3-6b,llama-3-8b, Qwen1.5-7B,Qwen2-7B,gpt2, SOLAR-10_7B-Instruct,llama-2-7b, PHI_1-5,opt-1b3, phi-2,internLM, Mistral-7B-Instruct, MindChat-Qwen-7B-v2,StarCoder-1B (还在持续更新中)
二、微信助手
微信助手是一个基于大型语言模型搭建的智能对话机器人, 具备多种实用功能,包括聊天会话、娱乐与资讯、查询工具等。能够处理文本、语音和图片,通过插件访问操作系统和互联网,还支持基于自有知识库进行定制的企业智能客服。本项目基于https://github.com/zhayujie/chatgpt-on-wechat/wiki/FAQs进行开发。
AI助手聊天效果图下:
三、程序部署
本地开发环境支持 MacOS、Windows、Linux 系统,需要安装 python 环境,推荐的版本在 3.7.1 ~ 3.9.X 之间,可前往官网下载。
(1) 下载源码
在命令行使用 git 克隆项目并进入目录:
git clone https://gitee.com/PerfXCloud-APP/chatgpt-on-wechat.git
cd chatgpt-on-wechat/
(2) 安装依赖
pip3 install -r requirements.txt # 必选依赖
pip3 install -r requirements-optional.txt # 可选依赖,语音、tool插件等功能需要
(3) 配置
复制项目中的模板文件config-template.json
,来生成最终起效果的配置文件config.json
,你可以通过执行以下命令完成:
cp config-template.json config.json
然后打开config.json
文件,添加所需配置,具体配置含义参考配置说明。
配置的效果如下,可以配置自己的模型和api-key(api-key获取方式):
配置说明:
1.个人聊天
- 个人聊天中,需要以 "bot"或"@bot" 为开头的内容触发机器人,对应配置项
single_chat_prefix
(如果不需要以前缀触发可以填写"single_chat_prefix": [""]
) - 机器人回复的内容会以 "[bot] " 作为前缀, 以区分真人,对应的配置项为
single_chat_reply_prefix
(如果不需要前缀可以填写"single_chat_reply_prefix": ""
)
2.群组聊天
- 群组聊天中,群名称需配置在
group_name_white_list
中才能开启群聊自动回复。如果想对所有群聊生效,可以直接填写"group_name_white_list": ["ALL_GROUP"]
- 默认只要被人 @ 就会触发机器人自动回复;另外群聊天中只要检测到以 "@bot" 开头的内容,同样会自动回复(方便自己触发),这对应配置项
group_chat_prefix
- 可选配置:
group_name_keyword_white_list
配置项支持模糊匹配群名称,group_chat_keyword
配置项则支持模糊匹配群消息内容,用法与上述两个配置项相同。(Contributed by evolay) group_chat_in_one_session
:使群聊共享一个会话上下文,配置["ALL_GROUP"]
则作用于所有群聊
四、运行
本地运行
如果是开发机本地运行,直接在项目根目录下执行:
python3 app.py
扫描输出的二维码即可完成登录。如果你使用的是 pycharm 等IDE,就更方便了,点击运行按钮就可以直接运行。
终端输出二维码后,使用微信进行扫码,当输出 "Start auto replying" 时表示自动回复程序已经成功运行了(注意:用于登录的微信需要在支付处已完成实名认证)。扫码登录后你的账号就成为机器人了,可以在微信手机端通过配置的关键词触发自动回复 (任意好友发送消息给你,或是自己发消息给好友)。
服务器部署
使用nohup命令在后台运行程序:
touch nohup.out # 首次运行需要新建日志文件
nohup python3 app.py & tail -f nohup.out # 在后台运行程序并通过日志输出二维码
扫码登录后程序即可运行于服务器后台,此时可通过ctrl+c
关闭日志,不会影响后台程序的运行。使用ps -ef | grep app.py | grep -v grep
命令可查看运行于后台的进程,如果想要重新启动程序可以先kill
掉对应的进程。日志关闭后如果想要再次打开只需输入 tail -f nohup.out
。此外,scripts
目录下有一键运行、关闭程序的脚本供使用。
微信小助手部署完成后聊天效果图如下:
本项目视频教程地址:https://www.bilibili.com/video/BV137421d71a
本项目代码地址:https://gitee.com/PerfXCloud-AP