搭建QQ小猫机器人集成GPT与Stable Diffusion Webui
搭建QQ小猫机器人集成GPT与Stable Diffusion Webui
一:准备工作
1.简单的说下执行过程,方便你理解,还是画图比较容易说明和理解
go-cqhttp(此篇文章后续就缩写为CQ了)、MeowBot(简称机器人)、stable diffusion webui(简称SD)
看了上面的图你就知道要做那些准备工作了,
(1):如果部署在本地电脑上,那么需要使自己的网络可以ping通openai的地址。也就是可以访问gpt.
(2):如果部署在云服务器上,也是要准备可以访问openai的服务器。
2.先说我的解决方案吧:
(1):CQ+MeowBot在云服务器上(服务器可访问gpt)
(2):SD在自己台式机或者其他电脑上,然后经过frp内网穿透,供MeowBot可访问。
二:开始部署go-cqhttp
1.项目地址:Releases · Mrs4s/go-cqhttp (github.com)
选择你的系统合适的版本:推荐这两个,不要问为什么,因为我用的这两个
建议先在windows上下载一个,部署好,因为云服务上QQ验证不了,异地加上各种不安全。总之,验证不了。
需要到时候把Windows下面生从accesstoken文件拷贝到服务器上,才可以正常运行。
2.部署go-cqhttp
(1)下载好之后,放在一个合适的空文件夹,这个地址很重要,因为项目地址使写死的,去获取CQ的data/image下面的图片,不然绘图之后发不了
(2)按住Shift+右键,在此处打开power shell
(3) ./go 然后tab会自动帮你补全的,也可以自己手打,Windows下会自动变成.\,
(4)按下回车就会执行了,然后第一次会自动生成对应的配置文件,然后如图输入02即可,按下回车
(5)成功的生成了config文件
(6)关闭此窗口然后,按住Shift+右键,在此处打开power shell, ./go 然后tab会自动帮你补全的,再次启动CQ
(7)会再次生成对应的配置文件和对应的日志以及消息的文件夹和文件
(8)修改自己的QQ机器人和QQ协议
1.打开config.yml文件修改自己的QQ,只需要填数字就行,建议填写小号。
2.如图,提示也写了不支持二维码登陆,需要修改对应的协议。打开device.json,搜索protocol 这个协议默认6,改成2即可
(9)启动CQ,需要power shell启动,不要双击,如图扫码即可
到此为止,CQ已经部署完毕
需要注意的和下面用得到的东西就是
1.CQ存放图片的路径:G:\Go-Cqhttp\data\images
2.CQ的websocket端口: ws://localhost:8080
三:开始部署小猫机器人项目
机器人项目地址:https://github.com/CollapseNav/MeowBot
1.代码的简单说明:
(1)DrawAnimeCommand,找到这个类,如果使本地不能调用gpt或者不需要使用gpt的可以如图注释对应的代码即可,
(2)如果需要使用gpt,则需要把源代码的SD地址改为你自己SD地址
//这里的路径现在是本地的,后面需要改为内网穿透之后的ip+端口
string url = "http://127.0.0.1:7860/sdapi/v1/txt2img";
2.还是这个类,修改源代码的图片地址
改为上述的G:\Go-Cqhttp\data\images这个地址,不要把“/”换成了”\“
var filePath = $"G:/Go-Cqhttp/data/images/{guid}.png";
3.修改完之后重新编译即可,第一次执行会生成AppConfig.json
我已经帮你们修改了,直接修改即可,这种配置默认使CQ与机器人项目在同一个设备上(无论个人电脑还是云服务器),apiKey则是chatgpt的apikey
如果没有,可以在此地方购买首页 | TerraMours的小店,购买开发者key即可
这是查询key余额的地址:智能助手 (terramours.site)
{
"apiKey": "sk-xxx",
"botWebSocketUri": "ws://localhost:8080",
"chatCompletionApiUrl": null,
"textCompletionApiUrl": null,
"gptModel": "gpt-3.5-turbo",
"usageLimitTime": 300,
"usageLimitCount": 5,
"allowList": [],
"blockList":