人人都能學會的 ChatGPT 接入公衆號教程
背景
我之前的教程已經教了大家怎麼註冊 ChatGPT,如果還沒有註冊的小夥伴可以看我之前的教程。https://www.leftpocket.cn/post/chatgpt/register/
這篇教程來教大家怎麼把 chatGPT 接入到公衆號來提問交流及自動回覆。
可以看到我這裏已經成功接入 ChatGPT。我要一步一步教大家也能輕鬆接入 ChatGPT 隨時隨地可以和 ChatGPT 對話。
ChatGPT 綁定到公衆號流程
- Github 代碼
首先,我們需要使用到 github 上的一份第三方代碼,這份代碼將 AI 模型 接入各類 消息應用,開發者通過輕量配置即可在二者之間選擇一條連線,運行起一個智能對話機器人,在一個項目中輕鬆完成多條鏈路的切換。該架構擴展性強,每接入一個應用可複用已有的算法能力,同樣每接入一個模型也可作用於所有應用之上。
它可以支持:
• 微信 • 公衆號 •Telegram•QQ•Gmail
等等,未來還會支持更多的平臺。
https://github.com/zhayujie/bot-on-anything
- OpenAPI 地址
需要一個 chatGPT 賬號並生成一個 API Key,這個 API secret Key 是爲了驗證你的身份。
這個非常簡單,我們打開 openai 的平臺地址:https://platform.openai.com/
登錄之後點擊右上角的頭像,點擊Manage Account
->API Keys
->Create New Secret Key
, 然後複製下來保存備用。
部署服務
1. 運行環境
最後我們需要一臺雲服務器,沒有云服務器的小夥伴可以看我之前的教程。
我們登錄到雲服務器之後執行命令。
支持 Linux、MacOS、Windows 系統(Linux 服務器上可長期運行)。同時需安裝 Python,建議 Python 版本在 3.7.1~3.10 之間。
項目代碼克隆:
git clone https://github.com/zhayujie/bot-on-anything
cd bot-on-anything/
2. 配置說明
核心配置文件爲 config.json
,在項目中提供了模板文件 config-template.json
,可以從模板複製生成最終生效的 config.json
文件:
cp config-template.json config.json
每一個模型和應用都有自己的配置塊,最終組成完整的配置文件,我們這個教程只需要接入公衆號,我已經在 json 文件裏面刪除了其他平臺的配置,只保留公衆號的配置即可:
{
"model": {
"type" : "chatgpt",
"openai": {
"api_key": "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",
"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,因爲公衆號不支持自定義端口
3. 安裝依賴
升級 pip 包管理工具和 openai
pip3 install --upgrade pip
pip3 install --upgrade openai
安裝 werobot[3] 依賴:
pip3 install werobot
4. 運行程序
配置修改完成,依賴也安裝好了,我們就可以運行程序了。
在項目目錄下運行 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.
5. 瀏覽器打開 WeRoBot
瀏覽器輸入你的服務器的IP地址
打開 WeRoBot 頁面代表服務正常運行。
這個 IP 地址的 http 鏈接後面需要填到公衆號裏面。
http://a.b.c.d/
公衆號設置
1. 設置公衆號回調地址
在 微信公衆平臺 https://mp.weixin.qq.com/ 中進入個人訂閱號,點擊左邊側邊欄的基本配置,然後點擊右邊修改配置,進入以下界面。
URL
就是你的服務器的 IP 地址:http://a.b.c.d/
Token
就是你服務器的 config.json 配置的那個 Token
消息加密密鑰隨機生成即可,選擇默認的明文模式,點擊提交
。
2. 啓用配置
修改完配置點擊右方的啓用
配置,會顯示爲:服務器配置(已啓用)。此時我們的服務器配置已經啓用成功。
3. 使用
用戶關注訂閱號後,發送消息即可。
注:用戶發送消息後,微信後臺會向配置的 URL 地址推送,但如果 5s 內未回覆就會斷開連接,同時重試 3 次,但往往請求 openai 接口不止 5s。本項目中通過異步和緩存將 5s 超時限制優化至 15s。
所以需要點擊繼續主動拉取緩存信息。待後續優化。
結語
今天的 ChatGPT 接入微信公衆號的教程就完成了。下個視頻我會繼續教大家更多有用的教程。
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/8ZbyNuQDKWYgxcgZZCEV8g