前置准备
一台云服务器,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:6099
container_name: napcat
network_mode: bridge
restart: always
image: 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即可,然后保存

最终效果
效果如图,在群里可以@机器人对话,私聊机器人也是可以的。
