• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
28.7的博客
等小白学会了游泳,我们天天海边,学会了滑板,我们夏天去冲浪冬天去滑雪,只要你愿意,我们去经历各种各样有趣的事情~ “鸡毛!我学会了发现冰激凌烧烤奶茶火锅,我们天天去吃!现在就去!” “●﹏●;”
博客园    首页    新随笔    联系   管理    订阅  订阅
10分钟,无需公网 IP!零门槛搭建 NapCatQQ 趣味 AI 人机,聊天互动超简单
10分钟,无需公网 IP!零门槛搭建 NapCatQQ 趣味 AI 人机,聊天互动超简单 无需公网 IP 即可打造 QQ 智能人机:核心依赖 NapCat(接收 QQ 消息)与 AstrBot(提供 AI 能力)容器,通过 WebSocket 建立连接,配置硅基流动 API 密钥即可启用 AI 对话,可扩展情感回复、表情包等插件;关键提醒:务必用 QQ 小号测试,go-cqhttp 非官方生态,账号有封禁风险,禁止盈利行为。

超简单使用NapCatQQ创建AI人机 - 无需公网IP

突然发现一个有趣的项目:通过 go-cqhttp 生态模拟QQ客户端行为,让账号伪装成合法虚拟用户,再通过 AstrBot 触发AI对话,实现智能人机交互。核心逻辑如下:

来自NapCat的脑图

核心原理:go-cqhttp 登录QQ账号后,模拟合法客户端接收消息;AstrBot 搭建WebSocket服务端,NapCat 获取消息后通过WS连接触发AI对话,最终将回复返回给QQ用户。


核心流程

  1. 部署 NapCat 与 AstrBot 容器
  2. NapCat 登录QQ账号,接收用户消息(基于 go-cqhttp 生态)
  3. AstrBot 启动WebSocket服务端,NapCat 通过WS连接推送消息,AI生成回复后返回

⚠️ 重要警告:

  1. 务必使用QQ小号测试!go-cqhttp 并非QQ官方认可生态,账号有被封禁风险(封禁后无法解封)
  2. 严禁用于盈利行为,否则可能面临法律责任

第一步:部署 AstrBot 生态

1.1 创建容器

# 创建工作目录并进入
mkdir astrbot && cd astrbot

# 启动AstrBot容器
sudo docker run -itd \
  -p 6180-6200:6180-6200 \
  -p 11451:11451 \
  -v $PWD/data:/AstrBot/data \
  --name astrbot \
  soulter/astrbot:latest

1.2 配置 AstrBot 基础信息

容器启动后,通过Web界面配置机器人和WS服务:

  1. 访问地址:http://服务器IP:6185
  2. 默认账号密码:NapCat/NapCat
  3. 配置步骤:
    • 点击左侧「机器人」→「创建新的机器人」
    • 选择「QQ个人账户」
    • 机器人名称自定义
    • 反向WebSocket端口保持 11451(或自定义宿主机映射端口)


第二步:部署 NapCat 消费者(消息接收与转发)

2.1 创建容器

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

2.2 查看容器关键信息

2.2.1 获取WebUI登录Token与QQ登录二维码

# 查看NapCat日志(替换为实际容器ID,可通过 docker ps 查看)
docker logs 容器ID

日志中会包含:

  • WebUI访问Token(用于登录 6099 端口控制面板)
  • QQ登录二维码(扫码登录小号)

2.2.2 获取 AstrBot 容器IP(关键)

# 查看astrbot容器的内网IP(用于WS连接)
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' astrbot

示例输出:172.17.0.4(需记住此IP,后续配置WS用)

2.3 配置 NapCat WebSocket 客户端

  1. 访问 NapCat WebUI:http://服务器IP:6099,输入日志中的Token登录
  2. 左侧「网络配置」→「创建WebSocket Client(客户端)」
  3. 配置参数:
    • URL格式:ws://AstrBot容器IP:11451/ws(例:ws://172.17.0.4:11451/ws)
    • 注意:/ws 后缀必须保留,端口与AstrBot配置一致



第三步:配置 AI 模型(以硅基流动为例)

3.1 获取硅基流动API密钥

  1. 访问 硅基流动官网(填入邀请码 EaeNjBKZ 有优惠)
  2. 注册登录后,创建API密钥并复制

3.2 在 AstrBot 中配置AI模型

  1. 回到 AstrBot WebUI(http://服务器IP:6185)
  2. 左侧「模型提供商」→「新增模型」→ 选择「硅基流动」
  3. 配置参数:
    • ID:保持默认(无需修改)
    • API Base URL:https://api.siliconflow.cn/v1
    • API Key:粘贴硅基流动的密钥
    • 模型配置:留空即可
    • 点击「启用」→「保存」



测试效果

给 NapCat 登录的QQ小号发送消息,即可触发AI回复:

  • 发送 /help 可查看功能列表
  • 日常聊天直接输入内容即可


趣味插件推荐(丰富交互)

AstrBot 支持多种插件,以下是简单易配置的趣味插件:

插件名称 功能描述 效果示例
astrbot_plugin_emotionai 为AI回复添加情感色彩(开心/难过等) 情感回复
zhiyu-astrbot-hjm 输入「哈基米」返回随机哈基米音乐 哈基米音乐
astrbot_plugin_doro 输入 /doro 或 /cheshire 返回随机表情包 随机表情包

插件安装方式

  1. 进入 AstrBot WebUI → 左侧「插件市场」
  2. 搜索插件名称 → 点击「安装」→ 启用即可

最后:邀请码福利

如果觉得硅基流动好用,欢迎使用我的邀请码,双方都有优惠哦!(/ω\)

  • 邀请码:EaeNjBKZ
  • 邀请链接:https://cloud.siliconflow.cn/i/EaeNjBKZ
posted on 2025-11-23 17:31  28的博客  阅读(6)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3

摘自:28.7的博客

蜀ICP备2025124055号-2