从0开始用DeepSeekAPI来制作QQ机器人
前期准备
- 一台国内的服务器。如果你没有服务器,那么你需要其他的手段比如内网穿透,服务器可以考虑购买云服务器,比如腾讯云,阿里云,京东云,有条件的可以自己购买一台实体服务器。
- 一个域名。一般来说,你在哪里买的云服务器就在哪里买域名。
- 备案域名,并且备案后时间要超过24h。
- 申请并配置SSL证书,可以去腾讯云(或者其他的厂家)申请免费的SSL证书,但是最好不要使用自签名证书。
- 在QQ 开放平台上注册账号并创建机器人。填写好相关设置。
- 在你的沙盒群中邀请你创建的机器人入群。
- 建议加入上面网站中的开发者频道,里面有很多热心大佬。
- 随便找一个群,往里面添加群机器人:QQ机器人开发平台小助手。可以向他问问题,如果机器人无法解决,可以通过它来提交工单。
在服务器上安装Python环境
要接入官方的python sdk,你需要3.8以上的python环境
在服务器上,cd到你要安装python的位置,然后
1 | wget https://www.python.org/ftp/python/3.8.10/Python-3.8.10.tgz |
解压:
1 | tar -zxvf Python-3.8.10.tgz |
准备编译环境:
1 | sudo apt update |
我的操作系统是Ubuntu,如果是CentOS,需要:
1 | yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel |
编译安装:
1 | cd Python-3.8.10 |
创建软连接:
1 | ln -s /usr/local/python3/bin/python3 /usr/bin/python3 |
测试:
1 | root@lavm-apal8xdaax:/# python3 |
配置环境变量:
1 | vi ~/.bash_profile |
打开配置文件,然后添加
1 | export PATH=$PATH:$HOME/bin:/usr/local/python3/bin |
:wq
退出后,执行source ~/.bash_profile
测试
1 | root@lavm-apal8xdaax:/# echo $PYTHON_HOME |
ok。
机器人服务端
刚开始是想用webhook方式来开发服务端,但是看了一下文档感觉很麻烦,用PythonSDK就方便很多,适合我这样的菜鸡和新手使用。
PythonSDK安装:
1 | pip3 install qq-botpy |
DeepSeek API Key
登录DeepSeek | 深度求索,创建api key并且保存好。
deepseek的api支持用openai的格式来调用
1 | pip3 install openai |
代码编写
官方提供的SDK,在https://github.com/tencent-connect/botpy上已经有足够详细的quick start,这里不再赘述。实在不行找deepseek问问。
运行服务端
在你写好了服务端的代码后,如果你的服务端运行在Linux系统上,可以用screen指令来运行服务端。
1 | screen -S qqbot |
创建一个名为qqbot的屏幕,Linux屏幕的概念类似于window的窗口ui,你可以打开一个窗口来玩原神,然后另外开一个窗口来听歌,二者互不干扰。
按下ctrl+A+D
就可以退出screen。
想要返回之前的screen,可以
1 | screen -r qqbot |
在qqbot screen下,假设你的服务端代码文件名为qqbot.py
1 | python3 qqbot.py |
即可运行。
下载链接
自己写了一个qq机器人,健壮性很差,自嗨玩玩罢了,距离上线还差的远。日后看情况更新吧。
目前实现的功能有:
- 对于不同的用户,分别建立独立的上下文。
- 指令-设定温度
- 指令-清除记忆
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Europa Superman 's blog!