一号机:基於 GPT3.0 模型 + mirai QQ 構建的 QQ 聊天機器人部署#
日期:2023 年 1 月 7 日
標識:13
狀態:已發佈
標籤:技術
類型:文章
一、註冊 OpenAI 帳號#
註冊方法:1. 有美國手機號(Google voice 不可用)的可以直接註冊 2. 沒有美國手機號的可以使用 sms 接碼平台 3. 像我這種懶人選擇直接在 pdd 上代註冊總之,註冊的具體過程不在此贅述。註冊成功後前往個人中心查看 api-key,會附送 18 美刀的免費 api 調用額度。
二、自動化部署方式#
Linux 首選 docker,windows 首選安裝器
Linux 平台部署#
(以 CentOS 為例)
一個不用 docker 的人,有兩種可能性。一種是沒有能力使用 docker。因為買不起伺服器和看不懂文件等各種自身因素,他的人生都是失敗的,第二種可能:有能力卻不用 docker 的人,在有能力而沒有用 docker 的想法時,那麼這個人的思想境界便低到了一個令人發指的程度。一個有能力的人不付出行動來證明自己,只能證明此人行為素質修養之低下。是灰暗的,是不被真正的社會認可的。
1. 安裝 Docker 和 Docker Compose#
- 安裝 Docker:
sudo curl -sSL https://get.daocloud.io/docker|sh
- 啟動 Docker:
systemctlstart docker
- 守護 Docker:
sudo systemctl daemon-reload
- 安裝 Docker-compose:
sudo pip3 install docker-compose
沒有 pip 的要執行 ```
sudo yum install python3-pip
2. 下載所需要的文件#
i. 克隆倉庫#
git clone https://github.com/mikumifa/QChatGPT-Docker-Installer
cd QChatGPT-Docker-Installer
ii. 部署#
chmod +x loadFile.sh && ./loadFile.sh
部署之後,文件目錄如下:
.
├── bot
│ ├── config-template.py
│ ├── LICENSE
│ ├── main.py
│ ├── pkg
│ ├── README.md
│ ├── requirements.txt
│ ├── res
│ ├── sensitive.json
│ └── tests
├── docker-compose.yaml
├── loadFile.sh
├── mirai
│ ├── LICENSE
│ ├── mcl
│ ├── mcl.cmd
│ ├── mcl.jar
│ └── README.md
├── _mirai.Dockerfile
└── _setup.Dockerfile
3. 配置和啟動 mirai#
i. 初始化 mirai#
docker compose run --rm mirai
ii. 在 mirai 上登錄 QQ#
login <機器人QQ號> <機器人QQ密碼>
注意,被當作機器人的小號最好不要設置設備鎖,當登錄的時候可能需要滑動驗證碼,這個時候需要使用
iii. 配置自動登錄#
當機器人帳號登錄成功之後,執行
autologinadd <機器人QQ號> <機器人密碼>
autologin setConfig <機器人QQ號> protocol ANDROID_PAD
完成之後,
Ctrl+C
退出即可。
iv. 編寫配置文件#
- 在
bot
文件下創建config.py
,將config-template.py
裡的內容複製進去,編輯config.py
並修改其中的必需項 - 在
mirai/config/net.mamoe.mirai-api-http
文件夾中找到setting.yml
,這是mirai-api-http
的配置文件,將該文件的內容修改為:
adapters:
- ws
debug: true
enableVerify: true
verifyKey: yirimirai
singleMode: false
cacheSize: 4096
adapterSettings:
ws:
host: localhost
port: 8080
reservedSyncId: -1
verifyKey
要求與
bot
的
config.py
中的
verifyKey
相同
4. 啟動#
i. 啟動 mirai 容器#
docker compose run -itd mirai
此命令將在後台啟動 mirai 容器
ii. 啟動主程序容器#
docker compose run -itd setup
此命令將在後台啟動主程序的容器並完成配置
我在進行到這一步的時候無法識別 - itd 命令,最後沒有使用 - itd,直接 - d 好像也能運行,湊合著用吧,反正沒報錯
安裝器版本#
(支持 Windows,CentOS,Ubuntu 和 Raspbian arm64)
項目地址該項目為QChatGPT 項目使用 Go 語言編寫的一鍵部署腳本,自動化部署所需依賴
- 注意:下載的 Python 和 mirai 均為免安裝版,不影響系統其他環境
1. 下載安裝器#
- 從Release 頁面下載可執行文件,若無法訪問請到Gitee
- 保存到電腦上某個空目錄,直接運行,等待配置環境
- 完畢後根據提示輸入
api-key
和QQ號
- 到此安裝完成
2. 運行程序#
之後每次重啟之後都需要按照以下步驟啟動程序:
i. 啟動 mirai#
- 運行
run-mirai.bat
(Windows) 或./run-mirai.sh
(Linux) 啟動 mirai - 輸入
login <QQ號> <QQ密碼>
根據提示登錄帳號(騰訊認證教程見上文 linux 部署)
ii. 運行主程序#
- 登錄完成後運行
run-bot.bat
(Windows) 或./run-bot.sh
(Linux) 啟動主程序