基于chatgpt開發(fā)QQ機(jī)器人原理分析
一、概述
通過調(diào)用OpenAI GPT-3模型提供的Completion API來實現(xiàn)一個更加智能的QQ機(jī)器人
以下是功能特色,點擊展開查看具體使用方法
?回復(fù)符合上下文 ?支持敏感詞過濾,避免賬號風(fēng)險 ?使用官方api,不需要網(wǎng)絡(luò)代理,穩(wěn)定快捷 ?完善的多api-key管理,超額自動切換 ?組件少,部署方便,提供一鍵安裝器及Docker安裝 ?支持預(yù)設(shè)指令文字 ?完善的會話管理,重啟不丟失
1.1 技術(shù)棧
Mirai 高效率 QQ 機(jī)器人支持庫 YiriMirai 一個輕量級、低耦合的基于 mirai-api-http 的 Python SDK。 OpenAI API OpenAI API
1.2 項目結(jié)構(gòu)
pkg.database 數(shù)據(jù)庫操作相關(guān) 數(shù)據(jù)庫用于存放會話的歷史記錄,確保在程序重啟后能記住對話內(nèi)容 pkg.openai OpenAI API相關(guān) 用于調(diào)用OpenAI的API生成回復(fù)內(nèi)容 pkg.qqbot QQ機(jī)器人相關(guān) 處理QQ收到的消息,調(diào)用API并進(jìn)行回復(fù)
二、開始部署
以下方式二選一,Linux首選Docker,Windows首選安裝器
Docker方式 請查看此倉庫mikumifa/QChatGPT-Docker-Installer
安裝器方式 使用此安裝器(若無法訪問請到Gitee)進(jìn)行部署
安裝器目前僅支持部分平臺,請到倉庫文檔查看,其他平臺請手動部署
下面使用docker方式安裝
git clone https://github.com/mikumifa/QChatGPT-Docker-Installer cd QChatGPT-Docker-Installer chmod +x loadFile.sh && ./loadFile.sh
最終效果如下,bot目錄內(nèi)是當(dāng)前的RockChinQ/QChatGPT項目里面的內(nèi)容,mirai目錄內(nèi)是ITXTech下載后解壓到mirai里面

三、啟動mirai
3.1 初始化mirai
docker-compose run --rm mirai
上面這一步,windows操作系統(tǒng)的可能會報錯error during connect: This error may indicate that the docker daemon is not running 解決方式是CMD管理員模式DISM /Online /Enable-Feature /All /FeatureName:Microsoft-Hyper-V 等待安裝,并按照提示操作登錄。(第一次失敗的話就,Ctrl + C退出,再重來一次)
3.2 在mirai上登錄QQ
login <機(jī)器人QQ號> <機(jī)器人QQ密碼>

登陸成功

3.3 自動登錄
autologin add <機(jī)器人QQ號> <機(jī)器人密碼> autologin setConfig <機(jī)器人QQ號> protocol ANDROID_PAD
出現(xiàn)mirai登錄時提示版本過低:當(dāng)前QQ版本過低,請升級至最新版本后再登錄。點擊進(jìn)入下載頁面報錯時候刪除mirai/bots文件夾里面的數(shù)據(jù)
完成后, Ctrl + C 退出
四、編寫配置文件
在bot目錄下創(chuàng)建config.py,將config-template.py的內(nèi)容復(fù)制進(jìn)去,編輯config.py修改必需項
在 mirai/config/net.mamoe.mirai-api-http 文件夾中找到setting.yml,這是mirai-api-http的配置文件
將這個文件的內(nèi)容修改為:
adapters:
- ws
debug: true
enableVerify: true
verifyKey: yirimirai
singleMode: false
cacheSize: 4096
adapterSettings:
ws:
host: localhost
port: 8080
reservedSyncId: -1verifyKey要求與bot的config.py中的verifyKey相同
五、驗證
5.1 啟動mirai容器
docker-compose run -d mirai
此命令將在后臺啟動mirai容器
5.2 啟動主程序容器
docker-compose run -d setup
此命令將在后臺啟動主程序的容器并完成配置
六、使用方法
6.1 私聊使用
- 添加機(jī)器人QQ為好友
- 發(fā)送消息給機(jī)器人,機(jī)器人即會自動回復(fù)
- 可以通過!help查看幫助信息

6.2 群聊使用
- 將機(jī)器人拉進(jìn)群
- at機(jī)器人并發(fā)送消息,機(jī)器人即會自動回復(fù)
- at機(jī)器人并發(fā)送!help查看幫助信息

以上就是基于chatgpt開發(fā)QQ機(jī)器人原理分析的詳細(xì)內(nèi)容,更多關(guān)于chatgpt QQ機(jī)器人的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
elasticsearch.yml配置文件解讀(ES配置詳解)
elasticsearch的config文件夾里面有一個主配置文件:elasticsearch.yml是es的基本配置文件,下面主要講解下elasticsearch.yml這個文件中可配置文件,感興趣的朋友一起看看吧2024-08-08
網(wǎng)頁報錯"Form?elements?must?have?labels"的處理方法
這篇文章主要給大家介紹了關(guān)于網(wǎng)頁報錯"Form?elements?must?have?labels"的處理方法,文中通過實例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2023-06-06
Chrome拓展(Chrome Extension)開發(fā)定時任務(wù)插件
文章講述了如何在ChromeExtension中實現(xiàn)定時任務(wù),包括使用chrome.alarmsAPI、結(jié)合contentscript的狀態(tài)感知定時器和基于事件觸發(fā)的模擬定時,文章強(qiáng)調(diào)了任務(wù)的冪等性、狀態(tài)的持久化存儲、記錄執(zhí)行日志和防止重復(fù)執(zhí)行的重要性2025-04-04
vs2019+cmake實現(xiàn)Linux遠(yuǎn)程開發(fā)的方法步驟
這篇文章主要介紹了vs2019+cmake實現(xiàn)Linux遠(yuǎn)程開發(fā)的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
Typora?0.11.18免費版本安裝使用教程(親測可用)
Typora是一款非常使用的筆記工具,對于程序員非常友好,在2021年11月23日,Typora?正式發(fā)布?1.0?版本,進(jìn)入了付費時代,Typora免費版本0.11.18(最后的免費版),本文給大家分享Typora免費獲取方法及安裝使用教程,感興趣的朋友參考下吧2022-07-07
Archlinux?Timeshift系統(tǒng)備份與還原的操作方法
這篇文章主要介紹了Archlinux?Timeshift系統(tǒng)備份與還原的操作方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-01-01

