本期还是来聊聊🤖机器人Bot接入AI大模型相关。
前面介绍过AstrBot和DeepSeek,但群友看到后提到NapCat,说可以进行联动,希望也能出一期部署流程。
简单做了做功课:
🔹 NapCatQQ 专注于 QQ 机器人协议,提供 OneBot 标准 API,主要适用于希望构建高性能 QQ 机器人的开发者;通过 NTQQ 协议实现 QQ 机器人通信,强调高性能和稳定性,不涉及 AI 聊天或大模型交互。
🔹 AstrBot 是一个跨平台 AI 机器人框架,可以接入多个消息平台(QQ、微信、纸飞机等),支持 LLM(大语言模型),例如GPT、DeepSeek、ChatGLM 等,提供 AI 对话 和 插件扩展能力,偏向于 AI 智能助手开发。
NapCatQQ 作者也提供了Docker的部署方式,那咱们就来玩上一玩儿~
不过因为风控问题,QQ/微信最好不要用新账号,一般要养一段时间。
关于AstrBot请参考之前文章,部署代码稍作调整
之所以进行改动,是因为这两个容器的网络得统一,自己有网络规划的手动建个也行。(不同容器最好用hostname)
services:
astrbot:
image: soulter/astrbot:latest
container_name: astrbot
network_mode: bridge
restart: always
ports:
- "6200:6200" # 作为反向websocket端口
- "6185:6185" # web-ui
- "11451:11451"
volumes:
- /share/Container/AstrBot/data:/AstrBot/data
- /var/run/docker.sock:/var/run/docker.sock
部署流程
以威联通NAS为例,这次选择部署在我的TS-673A上,毕竟我的AI前端也在这上面,日后捣鼓起来应该也会更方便些。
作者给出的 docker run 命令如下,我们会转换为 docker-compose.yml
,以便更方便地管理容器。大家也可以按照习惯直接SSH部署,注意端口占用。
docker run -d \
-e NAPCAT_GID=$(id -g) \
-e NAPCAT_UID=$(id -u) \
-p 3000:3000 \
-p 3001:3001 \
-p 6099:6099 \
--name napcat \
--restart=always \
mlikiowa/napcat-docker:latest
打开Container Station,将以下代码复制并粘贴进框内,端口号自行修改下,然后创建新的应用程序。
version: '3.8' # 最新版该行可删除
services:
napcat:
image: mlikiowa/napcat-docker:latest
container_name: napcat
network_mode: bridge
restart: always
ports:
- "3000:3000" # 冒号左侧可改,下同
- "3001:3001"
- "6099:6099" # 这是web-ui访问端口
volumes:
- /share/Container/napcat/config:/app/napcat/config
- /share/Container/napcat/QQ:/app/.config/QQ
environment:
- NAPCAT_GID=100 # id -g 获取当前账户组ID
- NAPCAT_UID=1000 # id -u 获取当前账户ID
ID值通过SSH输入指令获得,最高权限威联通(admin)以及其他(通常为root)两个值一般都为0。
部署完毕后,要先做两件事情。
点击创建好的应用程序,查看日志。
这时候会看到出现一个二维码,需要QQ号扫描登陆。找个小号扫一下即可。
其次找到这条日志,其中包含了登陆token,如下图箭头所指,需要记录token=
后的内容,我这里为napcat
。
这时候web输入NAS_IP:6099,输入记录的token值,即可完成登陆。界面相当可爱哈。QQ号设备信息都一览无余。
在猫猫日志中可以看到实时的聊天信息,这个其实在Container Station的应用日志中也可看到。
对接AstrBot
(API接入之类的步骤这里就不再啰嗦,人格设定、内容审核、唤醒指令、各类插件等功能大家就自己去尝试吧~)
建议先添加个管理员ID,后续可以直接QQ命令管理。
进入AstrBot的UI界面,选择配置
→消息平台
→消息平台适配器
→aiocqhttp(qq)
,默认即可,可根据需要更改。
图片仅作展示。按照上文流程进行填写。ID无关紧要,起个喜欢的;点击启用,IP填写0.0.0.0
,挑一个填写上,上面部署代码端口为6200
,也填上。
填好后点击右下角的保存,等待服务重启。
重启完毕后,回到NapCat配置OneBot:网络配置
→新建
→WebSocket客户端
。
填入相关内容。地址url按照图里的来:ws://10.0.3.3:6200/ws
,这里的IP,可以查看NAS网络获取。
填写完毕后,看看日志,不报错基本就没问题。
大概的演示
私聊可以直接对话,默认/help
呼出菜单。
比较喜欢地下交通站这部作品,放弃了猫娘,让他化身黄大队长。
最后
现在免费API是真的慢,本地部署咱也没设备~
玩儿心大,无奈条件却不允许。
本篇到这差不多也结束了,祝大家玩的开心!
评论区