基于Napcat+Koshi的QQ群AI大模型机器人部署-幽络源
前置准备
一台云服务器,2h4g的配置就够了,要是只搭建这么个机器人的话,1h2g的配置也可以。
然后一个能远程连接服务器的软件,建议使用Mobaxterm
原文链接(建议看原文)=>基于Napcat+Koshi部署QQ群AI机器人教程 | 幽络源
环境重点
一定要在防火墙安全规则开启这四个端口,5140(koshi控制台端口)、3001(WebSocket实时通信端口)、3000、6099(Napcat的WebUI端口)
步骤一:Napcat部署
幽络源这里在服务器根目录创建了一个名为A01Napcat的目录,然后在里面创建一个名为 docker-compose.yml 的配置文件,文件内代码如下
version: "3"services:napcat:environment:- NAPCAT_UID=${NAPCAT_UID}- NAPCAT_GID=${NAPCAT_GID}ports:- 3000:3000- 3001:3001- 6099:6099container_name: napcatnetwork_mode: bridgerestart: alwaysimage: mlikiowa/napcat-docker:latest
如图
完成后,在A01Napcat目录下执行命令
docker-compose up -d
然后就会自动容器化部署与启动,如图
如上当出现 napcat Started后就表示已经自动启动了,接下来我们需要登录QQ,用一个小号作为机器人吧。
执行如下命令查看 capcat 的日志,我们就会看到一个二维码让我们扫码登录QQ号
docker logs napcat
如图
扫码登录后我们往上翻日志,就能看到Napcat启动的地址,并且给我们生成并显示了登录的tokne,如图
然后访问 服务器的 IP+6099 就能来到Napcat的可视化面板,如图,输入token即可登录进去
进入后,我们进行WebSocket网络通讯配置,如图点击网络配置,然后新建
点击新建后配置如下,点击启用、名称随便填写,host用0.0.0.0,Port填3001,消息格式Array,勾选强制推送事件,Token自己随便填写,这里不是刚才登录那个token,是你自定义的token,心跳间隔30000,最后保存
如上,我们的Napcat部分就完成了,接下来是Koshi的部署配置
步骤二:Koshi的容器化部署
在A01Napcat目录下执行如下命令即可
docker run -p 5140:5140 koishijs/koishi
完成后,再执行如下命令可以查看下我们的Koshi是否运行了
docker ps
如上表示Koshi已经运行了,我们访问 ip+端口5140,来到Koshi控制台,如图我们点击依赖管理,再点击右上角的刷新按钮
再点击全部更新,如图
点击确定,再点击确认安装,如图
完成后,点击插件市场,搜索adapter-onebot,如图
下载安装即可,如图
继续来到插件市场,将我们刚下载的onebot进行配置,点击修改,点击配置,如图
配置如下,selfid即登录的QQ,token是在Napcat配置的token,不是登录的token,协议选择ws,注意是ws,endpoint直接填公网ip+3001端口
记得保存和启用
此时,我们已经可以使用koshi的内置命令来测试机器人是否能正常响应了,如图
步骤三:模型的配置
在插件市场搜索chatluna,如图添加安装
因为我这里要用deepseek的插件,但是由于deepseek还没被官方镜像收录,这里我还需额外的在市场修改下镜像,在插件配置下找到market,将搜索节点改为 https://koishi-registry.yumetsuki.moe/index.json,如图
然后重载配置,如图
再到插件市场就能搜到deepseek了,注意幽络源这里选择的是chatluna的deepseek进行下载安装,如图
然后继续在插件配置处将chatluna和chatlunadeepseek启动,如图
deepseek这里填写你的apikeys即可,然后保存
最终效果
效果如图,在群里可以@机器人对话,私聊机器人也是可以的。