发布时间:2022-12-10 文章分类:编程知识 投稿人:李佳 字号: 默认 | | 超大 打印

ChatGpt-qq-bot

准备

一个服务器:Windos,Centos,Ubuntu

环境:Python

一个QQ号用作机器人

一个OpenAI账号(注册教程自行搜索)

搭建

这里我用Centos7为例进行教程,其他系统类似

注册OpenGPT

一瓶可乐钱注册OpenGPT,教程链接:https://blog.ideaopen.cn/index.php/archives/143/

获取OpenGPT的token

登录上自己的OpenGPT账号,然后F12打开开发者工具,找到应用,选择Cookie,接着将__Secure-next-auth.session-token的值复制出来一会用

OpenGPT搭建QQ机器人

所需文件

先下载所需文件

​ https://wwqj.lanzoum.com/b041ius2j

​ 密码:hanhanz.top

如果链接失效请联系我

下载好解压缩里面有三个文件夹

OpenGPT搭建QQ机器人

go-cqhttp_linux_amd64py上传到服务器

OpenGPT搭建QQ机器人

配置py

安装Python就自行百度吧

打开chat-gpt-qbot.py

第7行填写自己的QQ号作为机器人

第9行填上自己的token

OpenGPT搭建QQ机器人

然后滑到最下面,将151行的端口改成自己想用的

OpenGPT搭建QQ机器人

填写完Ctrl + S保存

安装依赖

cd /bot-test/py #这里的/bot-test/py是你存放文件的地方
pip install -r requirements.txt 或 pip3 install -r requirements.txt

可能出现的问题1:

当我们运行pip时会报一个错(如果没报错就不用管了)下面是报错:

WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

OpenGPT搭建QQ机器人

解决方式:

这里报错的原因是因为我们需要一个虚拟环境,虚拟环境可以使不同的虚拟环境相互独立,不会影响到其他应用;可以防止出现包管理混乱和版本冲突,而且不会影响全局的python环境。

配置虚拟环境:

cd #回到根目录
python -m  venv tutorial-env 或 python3 -m  venv tutorial-env  (tutorial-env是虚拟环境的名称,可以随意更改)
source tutorial-env/bin/activate

运行好上面的三行命令后,如果前缀已经变了的话,那就说明已经安装好虚拟环境了,我们就可以下一步了

OpenGPT搭建QQ机器人

安装好虚拟环境后,我们就可以继续安装依赖了

cd /bot-test/py #这里的/bot-test/py是你存放文件的地方
pip install -r requirements.txt 或 pip3 install -r requirements.txt

OpenGPT搭建QQ机器人

没有报错说明我们安装好依赖了,接下来运行 chat-gpt-qbot.py

python chat-gpt-qbot.py 或 python3 chat-gpt-qbot.py

OpenGPT搭建QQ机器人

显示这样就说明我们运行成功了,然后Ctrl + C结束运行,去配置go-cqhttp

配置go-cqhttp

官方地址:https://docs.go-cqhttp.org/guide/quick_start.html

打开go-cqhttp_linux_amd64文件夹里面的config.yml文件,并在第4行填上自己的机器人QQ号,密码不用填,我们进行扫码登录

OpenGPT搭建QQ机器人

然后还是滑到最下面,在108行填上相应的url

http://127.0.0.1:port	#将port改成刚刚设置的端口号,我刚刚设置的是2666,所以我将port改成了2666就行

OpenGPT搭建QQ机器人

修改好之后保存,这样我们就可以运行了

cd bot-test/go-cqhttp_linux_amd64/ #同理bot-test/go-cqhttp_linux_amd64/是你的位置
./go-cqhttp

这里会提示权限不够

OpenGPT搭建QQ机器人

chmod 777 go-cqhttp #对go-cqhttp文件进行提权

我们再运行,会让我们扫码

OpenGPT搭建QQ机器人

可能会出现的问题2:

扫码会发现登录错误

OpenGPT搭建QQ机器人

这是因为不在一个网络环境里

解决方式:

在自己的电脑上打开刚刚下载的压缩包里的go-cqhttp_windows_386文件夹,再对config.yml配置一遍(和刚刚在服务器上配置的一样),配置好双击运行go-cqhttp.bat,然后会让我们扫码

OpenGPT搭建QQ机器人

扫码登录成功

OpenGPT搭建QQ机器人

登录好之后,关闭窗口,在go-cqhttp_windows_386找到session.token文件

OpenGPT搭建QQ机器人

session.token上传到服务器上的go-cqhttp_linux_amd64文件夹里

OpenGPT搭建QQ机器人

这个时候我们再运行./go-cqhttp就行了,这样就登录成功了

OpenGPT搭建QQ机器人

安装screen

这个时候我们就配置好了,接下来就是让这两个程序同时进行,我们需要安装screen

yun install screen -y

因为我已经安装过了,所以显示无须任何处理

OpenGPT搭建QQ机器人

screen的简单用法

screen -S name #新建一个运行空间,name可以随便写,例如:screen -S go-cq ,screen -S py   这里的S一定要大写
screen -D name #杀死命名为name的运行空间,杀死之后该运行空间就没了,里面运行的东西也就不会运行了
screen -r name #连接名字为name的运行空间
Ctrl + A + D #退出当前运行空间,但里面的运行的进程会一直运行,如果要对该进程进行操作,只需要运行上面的screen -r 即可进入

使用screen保持bot运行

py

screen -S pybot
source tutorial-env/bin/activate #需要进入虚拟环境
cd /cd /bot-test/py #这里的/bot-test/py是你存放文件的地方
python chat-gpt-qbot.py 或 python3 chat-gpt-qbot.py

OpenGPT搭建QQ机器人

然后我们Ctrl + A + D退出当前运行空间

go-cqhttp

screen -S go-cq
cd bot-test/go-cqhttp_linux_amd64/ #同理bot-test/go-cqhttp_linux_amd64/是你的位置
./go-cqhttp

然后我们Ctrl + A + D退出当前运行空间

到这里教程也就结束了让我们看一下结果吧

Bot运行截图

私聊

OpenGPT搭建QQ机器人

群聊

OpenGPT搭建QQ机器人

然后就可以愉快的使用了,想在群里使用的话,直接把机器人拉进群,然后@机器人提问

建议打开禁止加好友,不然你懂得

原作者:https://lucent.blog/?p=99

我是对原作者的教程进行了细化,并且加了些我自己的改动,还是多支持支持原作者

我的个人博客:https://blog.hanhanz.top