
一款支持各種主流語言模型的聊天的機器人!
» 查看使用教程»
![]() | ![]() | ![]() |
⚡ 支持
? 多平台兼容
我們支持多種聊天平台。
| 平台 | 群聊回复 | 私聊回复 | 條件觸發 | 管理員指令 | 繪圖 | 語音回复 |
|---|---|---|---|---|---|---|
| Mirai | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
| OneBot | 支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
| Telegram | 支持 | 支持 | 部分支持 | 部分支持 | 支持 | 支持 |
| Discord | 支持 | 支持 | 部分支持 | 不支持 | 支持 | 支持 |
| 企業微信 | 支持 | 支持 | 支持 | 不支持 | 支持 | 支持 |
| 個人微信 | 支持 | 支持 | 支持 | 不支持 | 支持 | 支持 |
你可以在Wiki 了解機器人的內部命令。
如果你是手機黨,可以看這個純用手機的部署教程(使用Linux 服務器):https://www.bilibili.com/video/av949514538
bash -c " $( wget -O- https://gist.githubusercontent.com/B17w153/f77c2726c4eca4e05b488f9af58823a5/raw/4410356eba091d3259c48506fb68112e68db729b/install_bot_aidlux.sh ) "部署教程
bash -c " $( wget -O- https://gist.githubusercontent.com/lss233/2fdd75be3f0724739368d0dcd9d1367d/raw/62a790da4a391af096074b3355c2c2b7ecab3c28/chatgpt-mirai-installer-gocqhttp.sh ) "你可以在Wiki 查看搭建教程。
找個合適的位置,寫你的config.cfg 。
執行以下命令,啟動bot:
# 修改 /path/to/config.cfg 为你 config.cfg 的位置
# XPRA_PASSWORD=123456 中的 123456 是你的 Xpra 密码,建议修改
docker run --name mirai-chatgpt-bot
-v /path/to/config.cfg:/app/config.cfg
--network host
lss233/chatgpt-mirai-qq-bot:browser-version我們為Windows 用戶製作了一個快速啟動包,可以在Release 中找到。
文件名為: quickstart-windows-go-cqhttp-amd64.zip (推薦) 或者quickstart-windows-mirai-amd64.zip
Windows快速部署包Mac用戶也可以使用,@magisk317 已測試通過,功能基本都正常不過,需要注意的是,如果需要使用圖片模式,由於wkhtmltoimage.exe在Mac上無法運行,可以使用wkhtmltopdf代替,安裝命令:
brew install --cask wkhtmltopdf
brew的安裝及使用方法詳見:鏈接
提示:你需要Python >= 3.11 才能運行本項目
部署Mirai ,安裝mirai-http-api 插件。
下載本項目:
git clone https://github.com/lss233/chatgpt-mirai-qq-bot
cd chatgpt-mirai-qq-bot
pip3 install -r requirements.txt參照項目文檔調整配置文件。
啟動bot.
python3 bot.py [廣告] 免費OpenAI API Key
你可以在這裡獲取免費的OpenAI API Key 測試使用。
[ http ]
# 填写提供服务的端口
host = " 0.0.0.0 "
port = 8080
debug = false啟動後將提供以下接口:
POST /v1/chat
請求參數
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| session_id | 是 | String | 會話ID,默認: friend-default_session |
| username | 是 | String | 用戶名,默認:某人 |
| message | 是 | String | 消息,不能為空 |
請求示例
{
"session_id" : " friend-123456 " ,
"username" : " testuser " ,
"message" : " ping "
}響應格式
| 參數名 | 類型 | 說明 |
|---|---|---|
| result | String | SUCESS,DONE,FAILED |
| message | String[] | 文本返回,支持多段返回 |
| voice | String[] | 音頻返回,支持多個音頻的base64編碼;參考:data:audio/mpeg;base64,,iVBORw0KGgoAAAANS... |
| image | String[] | 圖片返回,支持多個圖片的base64編碼;參考:data:image/png;base64,UhEUgAAAgAAAAIACAIA... |
響應示例
{
"result" : " DONE " ,
"message" : [ " pong! " ],
"voice" : [],
"image" : []
} POST /v2/chat
請求參數
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| session_id | 是 | String | 會話ID,默認: friend-default_session |
| username | 是 | String | 用戶名,默認:某人 |
| message | 是 | String | 消息,不能為空 |
請求示例
{
"session_id" : " friend-123456 " ,
"username" : " testuser " ,
"message" : " ping "
}session_id請採用規範格式。其格式為friend- (好友)或group- (群組)加字符串示例
friend-R6sxRvblulTZqNC
group-M3jpvxv26mKVM
如果不能正確繼續是好友還是群組,將一律按照群組處理
響應格式 字符串:request_id
響應示例
1681525479905
"和' ) '1681525479905'
GET /v2/chat/response
請求參數
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| request_id | 是 | String | 請求id,/v2/chat返回的值 |
請求示例
/v2/chat/response?request_id=1681525479905
"和' )。 下列為錯誤示範 /v2/chat/response?request_id='1681525479905'
/v2/chat/response?request_id="1681525479905"
/v2/chat/response?request_id='1681525479905"
/v2/chat/response?request_id="1681525479905'
響應格式
| 參數名 | 類型 | 說明 |
|---|---|---|
| result | String | SUCESS,DONE,FAILED |
| message | String[] | 文本返回,支持多段返回 |
| voice | String[] | 音頻返回,支持多個音頻的base64編碼;參考:data:audio/mpeg;base64,,iVBORw0KGgoAAAANS... |
| image | String[] | 圖片返回,支持多個圖片的base64編碼;參考:data:image/png;base64,UhEUgAAAgAAAAIACAIA... |
響應示例
{
"result" : " DONE " ,
"message" : [ " pong! " ],
"voice" : [ " data:audio/mpeg;base64,iVBORw0KGgoAAAANS... " ],
"image" : [ " data:image/png;base64,UhEUgAAAgAAAAIACAIA... " , " data:image/png;base64,UhEUgAAAgAAAAIACAIA... " ]
}SUCCESS的時候表示等待{ "result" : " SUCCESS " , "message" : [], "voice" : [], "image" : []}DONE ,請一直請求,直到出現FAILED 。 FAILED表示回复完畢。 { "result" : " FAILED " , "message" : [ " u6ca1u6709u66f4u591au4e86uff01 " ], "voice" : [], "image" : []}DONE和FAILED之間可能會穿插SUCCESS 。整個回復周期可能會大於一分鐘。 如果你想讓機器人自動帶上某種聊天風格,可以使用預設功能。
我們自帶了猫娘和正常兩種預設,你可以在presets文件夾下了解預設的寫法。
使用加载预设猫娘來加載貓娘預設。
下面是一些預設的小視頻,你可以看看效果:
關於預設系統的詳細教程:Wiki
你可以在Awesome ChatGPT QQ Presets 獲取由大家分享的預設。
你也可以參考Awesome-ChatGPT-prompts-ZH_CN 來調教你的ChatGPT,還可以參考Awesome ChatGPT Prompts 來解鎖更多技能。
在發送代碼或者向QQ 群發送消息失敗時,自動將消息轉為圖片發送。
字體文件存放於fonts/目錄中。
默認使用的字體是更紗黑體。
自v2.2.5 開始,我們支持接入微軟的Azure 引擎和VITS 引擎,讓你的機器人發送語音。
提示:在Windows 平台上使用語音功能需要安裝最新的VC 運行庫,你可以在這裡下載。 `
如果你自己也有做機器人的想法,可以看看下面這些項目:
本項目基於以上項目開發,所以你可以給他們也點個star !
除了我們以外,還有這些很出色的項目:
歡迎提出新的點子、 Pull Request。
Made with contrib.rocks.
如果我們這個項目對你有所幫助,請給我們一顆️