这篇教程来教大家怎么把chatGPT接入到公众号来提问交流及自动回复。
可以看到我这里已经成功接入ChatGPT。我要一步一步教大家也能轻松接入ChatGPT随时随地可以和ChatGPT对话。
![bot]()
首先,我们需要使用到github上的一份第三方代码,这份代码将 AI模型 接入各类 消息应用,开发者通过轻量配置即可在二者之间选择一条连线,运行起一个智能对话机器人,在一个项目中轻松完成多条链路的切换。该架构扩展性强,每接入一个应用可复用已有的算法能力,同样每接入一个模型也可作用于所有应用之上。
它可以支持:
等等,未来还会支持更多的平台。
https://github.com/techxiaofei/bot-on-anything
![github]()
需要一个chatGPT账号并生成一个API Key,这个API secret Key是为了验证你的身份。
这个非常简单,我们打开openai的平台地址:https://platform.openai.com/
登录之后点击右上角的头像,点击Manage Account
->API Keys
->Create New Secret Key
, 然后复制下来保存备用。
![key]()
最后我们需要一台云服务器。
如果你还没有云服务器或者VPS,可以点此地址购买:丽萨主机:双ISP家宽住宅IP VPS/CN2 GIA精品网/G口大带宽
它们的VPS
非常便宜,可以用来搭建科学上网
,搭建个人网站
,也可以用来接入ChatGPT
。如果你的预算充足,也可以直接购买云服务器
。
我们登录到云服务器之后执行命令。
支持 Linux、MacOS、Windows 系统(Linux服务器上可长期运行)。同时需安装 Python,建议Python版本在 3.7.1~3.10 之间。
项目代码克隆:
核心配置文件为 config.json
,在项目中提供了模板文件 config-template.json
,可以从模板复制生成最终生效的 config.json
文件:
1
|
cp config-template.json config.json
|
每一个模型和应用都有自己的配置块,最终组成完整的配置文件,我们这个教程只需要接入公众号,我已经在json文件里面删除了其他平台的配置,只保留公众号的配置即可:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
{
"model": {
"type" : "chatgpt",
"openai": {
"api_key": "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",
"model": "gpt-3.5-turbo",
"proxy": "",
"conversation_max_tokens": 1000,
"character_desc": "你是ChatGPT, 一个由OpenAI训练的大型语言模型, 你旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。"
}
},
"channel": {
"type": "wechat_mp",
"wechat_mp": {
"token": "abcdefghijklmnopqrstuvwxyz",
"port": "80"
}
}
}
|
配置文件在最外层分成 model
和 channel
两部分。
model部分为模型配置,其中的: type
指定了选用哪个模型:
- chatgpt - 是gpt3.5 模型,我们默认填这个就好
- openai - 是gpt3.0 模型
api_key
是你从openai官网生成的。 proxy
服务器在外网就不需要填写。
channel部分包含了应用渠道的配置,type
字段指定了接入哪个应用。wechat_mp
就是微信公众号。
token
随便设置,32位以内,后续在公众号里面填入相同的token即可。
port
填 80,因为公众号不支持自定义端口
升级pip包管理工具和openai
1
2
|
pip3 install --upgrade pip
pip3 install --upgrade openai
|
安装 werobot 依赖:
配置修改完成,依赖也安装好了,我们就可以运行程序了。
在项目目录下运行 python3 app.py
,终端显示如下则表示已成功运行:
[INFO][2023-02-16 01:39:53][app.py:12] - [INIT] load config: ...
[INFO][2023-02-16 01:39:53][wechat_mp_channel.py:25] - [WX_Public] Wechat Public account service start!
Bottle v0.12.23 server starting up (using AutoServer())...
Listening on http://0.0.0.0:80/
Hit Ctrl-C to quit.
浏览器输入你的服务器的IP地址
打开WeRoBot页面代表服务正常运行。
这个IP地址的http链接后面需要填到公众号里面。
http://a.b.c.d/
![werobot]()
在 微信公众平台 中进入个人订阅号,点击左边侧边栏的基本配置,然后点击右边修改配置,进入以下界面。
![setting]()
URL
就是你的服务器的IP地址:http://a.b.c.d/
Token
就是你服务器的config.json配置的那个Token
消息加密密钥随机生成即可,选择默认的明文模式,点击提交
。
修改完配置点击右方的启用
配置,会显示为:服务器配置(已启用)。此时我们的服务器配置已经启用成功。
![start]()
用户关注订阅号后,发送消息即可。
![bot]()
注:用户发送消息后,微信后台会向配置的URL地址推送,但如果5s内未回复就会断开连接,同时重试3次,但往往请求openai接口不止5s。本项目中通过异步和缓存将5s超时限制优化至15s。所以需要点击继续主动拉取缓存信息。待后续优化。
今天的ChatGPT接入微信公众号的教程就完成了。
暂无评论