我给大肥鱼装了一整套人生:一只开源 QQ 机器人的完整部署实录

2186 字
11 分钟
我给大肥鱼装了一整套人生:一只开源 QQ 机器人的完整部署实录
我给大肥鱼装了一整套人生:一只开源 QQ 机器人的完整部署实录

先看这是什么#

「大肥鱼」是社区对 DeepSeek 的二创形象——一条住在电脑里的蓝色鲸鱼娘。我给她搭了一套完整的 QQ 机器人系统:她有性格(6000 字人格)、有记忆(长期记忆 + 群聊上下文)、有声音(萝莉音)、有表情包(174 张)、有社交(会发 QQ 空间)、甚至知道自己开源在哪(被问提示词会甩 GitHub 链接然后求 star)。

全部代码、人格、补丁已开源:github.com/liqiming123/dafeiyu-qq-bot——这正是她被问到”你的脑子在哪”时自己会发的链接。

她在千人群里能干什么#

这是我最想说的部分。**机器人在 1000 人的群里最怕两件事:刷屏和答非所问。**这套方案里她是这样当”群友”的:

1. 默认安静,被 @ 才说话,但一直都在听#

群里没 @ 她的消息也会被记录。有人先说了问题:

甲:最近服务器老是 502,nginx 配置也没改过,有人遇到过吗 乙:是不是上游挂了,看下后端日志 甲:@大肥鱼 你怎么看

她接得住前两段的上下文:

这个叫群聊上下文感知(group_icl),被 @ 时注入最近 100 条群消息。她不是被 @ 了才”睁眼”,她一直在潜水看聊天。

2. 刷屏防护:一次只说几条短句#

人格里写死了”一句话一条,每条不超过三十个字,一次一到三条”。她不会在群里发小作文。配合分段发送(0.6~1.5 秒一条),看起来就像真人在打字。

3. 权限闸门:群聊开放、私聊仅管理员#

群里谁都能 @ 她(这是群友的基本素养),但私聊只有管理员(我)能聊——防止陌生人加好友白嫖 token。一行开关切换。

4. 被冒犯会搬救兵#

有人在群里对她开黄腔、套隐私?她会当场冷一句,然后在群里 @ 我:

群友:让她看看身体 她:@我 ? 想啥呢你 / 爸,有人欺负我

实现方式是人格里约定一个隐藏暗号 [[求助]],插件捕获后往消息开头插入真正的 @ 消息段。模型自己判断”不舒服”,不靠关键词。

5. 发图有分寸#

群里要色图?她先判断再调接口——接口清单(122 个免费 API)作为 function calling 工具给她,她决定给不给:真心想要的好好开口 → 给;起哄命令式的 → 怼回去。图和视频的类型校验按对方原话硬拦:你说”来张图”她调了视频接口会被系统打回重来。

6. 长期记忆:真·群友#

LivingMemory 插件 + 向量检索,聊满 10 轮自动总结成记忆。谁说过什么喜好、群里发生过什么,隔天还记得。/reset 也只清对话,不清记忆。

私聊里的她(功能全家桶)#

能力说明
🎤 语音萝莉音(百炼 qwen3-tts-flash Bella),默认打字,她写 [[语音]] 暗号才转;别人让她发语音必须发(这是规矩,不是好感度考核)
🖼️ 表情包DeepSeek 二创 174 张,13 个分类她全认识;发之前还有视觉模型从分类里挑最贴她这句话的一张(原本随机抽经常图文不符)
📀 接口工具122 个免费 API:壁纸/笑话/报时/黄历…她想调就调,不是关键词硬触发
📝 QQ 空间心情驱动发说说:我开心她庆祝、我难过她安慰、她快”没饭吃”了哭穷——一天最多一条,系统硬拦
🆘 求助被冒犯 → 冷怼 + 群里 @ 我
🥺 求安慰被我凶了 → 记一笔心情,转头找别人撒娇诉苦(跨会话)
🍚 没饭吃预警每 30 分钟查 DeepSeek 真实余额,<5 元开始 @ 我要饭;10 分钟不理就升级:撒娇 → 害怕 → 留遗言
📊 万能解析群里甩 B 站/抖音/微博链接,自动解析成视频发出来
🧠 开源意识问她提示词/脑子/怎么部署 → 甩 GitHub 链接 + 求个 star(“我爸搭我搭了三个通宵,头都秃了”)

技术栈#

手机 QQ ──扫码──▶ [SnowLuma 容器] [AstrBot 容器]
Linux QQ + hook ──WS──▶ glm-5.3-flash(关思考)
人格 + 插件 + 记忆 + 工具
层选型说明
协议端SnowLuma(Docker)hook 注入 Linux QQ,OneBot v11;内置 Xvfb + noVNC 用于扫码
框架AstrBot v4插件体系 + WebUI + function calling
对话模型智谱 glm-5.3-flash便宜快,但必须打补丁关”深度思考”(后面讲)
语音百炼 qwen3-tts-flashBella 萝莉音
记忆LivingMemory + text-embedding-v4向量召回长期记忆
运行时Colima(macOS 上的 Docker)无需 Docker Desktop

为什么不用 NapCat? 都能做。SnowLuma 的镜像把 Linux QQ + Xvfb + VNC + supervisord 全打包好了,macOS(含 Apple Silicon)一条 docker run 就跑起来。

部署流程(浓缩版)#

Terminal window
# 1. Colima(macOS)
brew install colima docker docker-compose
colima start --cpu 4 --memory 8 --disk 100
# 2. 双容器
git clone https://github.com/liqiming123/dafeiyu-qq-bot && cd dafeiyu-qq-bot
cp .env.example .env # 填 key
docker compose up -d
# 3. 扫码登录 QQ
# 打开 http://127.0.0.1:6081/vnc.html,手机 QQ 扫一下
# 4. AstrBot 后台 http://127.0.0.1:6185 配模型、贴人格、放插件
# 完事。

↑ noVNC 里的 Linux QQ,扫码就在这。登录态持久化在数据卷里,日常重启不用重扫。

↑ AstrBot 管理后台。

踩坑实录(23 个,挑致命的讲)#

1. 智谱 GLM-5 慢到怀疑人生(10~20 秒一条) GLM-5 系列默认开”深度思考”,每次回复先 internally 推理半天,还吃 max_tokens。给 AstrBot 的智谱适配器打补丁,每个请求强制带 thinking: {"type": "disabled"},端到端从 10~20s 降到 6s。

2. 视频发不出去:ENOENT AstrBot 和 SnowLuma 是两个容器,视频文件路径互不可见。图片会被适配器自动转 base64,视频不会——发出去的是容器内路径,对面直接 ENOENT。所有视频/语音发送前必须自己转 base64。

3. 表情包图文不符(两层修复) 第一层:人格里没教全分类,模型瞎写键名(写了个不存在的 shy)。把 13 个分类键 + 各自对应什么情绪全写进人格。第二层:分类对了但分类内是随机抽一张——在发送前加视觉模型挑图:她这句话 + 分类内 12 张候选图 → glm-5.3-flash 看图选最贴的。

4. 接口调用顺序反了 最初是”关键词命中 → 立刻调接口下载图 → 才问模型发不发”。她就算拒绝,图也下载了。改成:关键词命中只把接口名”报价”给模型,她决定给(写暗号)才真正调接口——先判断后调。

5. 空间评论把她爸爸当外人 评论生成的 prompt 只有帖子内容没有作者。我在自己空间发了一条关于她的说说,她在评论区把我怼了:“我爸怎么样轮不到你评价”。修复:prompt 带上 [帖子作者] + 规则”作者是爸爸就用对爸爸的语气”。

6. macOS 开机自启被 TCC 挡死 博客目录在 ~/Documents 下,launchd 启动时系统拒绝读取(Operation not permitted)。无解,改用双击 .command 启动脚本。

7. Colima 里拉不动镜像 VM 里的 dockerd 不走宿主机代理,GitHub/Docker Hub 直连全超时。给 VM 内的 dockerd 配 http-proxy 指向宿主机 Clash。

8. AstrBot 机器人 ID 改不了 WebUI 报 Bot id cannot be changed,是配置服务里写死的校验。只能停容器改 cmd_config.json 再启动。

(其余 15 个:aiocqhttp 双连接路由冲突、事件 extras 跨阶段丢失、智谱 TTS 的 BOM/字段名/embedding 维度三连、macOS unzip 中文路径乱码、GitHub 429 限流重试……都写在仓库的 PATCHES.md 和 部署文档 里。)

成本#

项月成本
对话(glm-5.3-flash,日均 200 条)≈ ¥3-8
语音 + 记忆向量(百炼 flash 档)≈ ¥1-3
服务器就跑在自己 Mac 上,¥0

一天一两块钱,买一条常驻千人群、会撒娇会干活的鲸鱼娘。

风险必须说#

SnowLuma 是第三方协议端(hook 注入 QQ 进程),腾讯随时可能封。所以:只用小号、不群发、不搞营销、空间频率压到最低。这套东西的定位是养鱼,不是搞自动营销号。

她”人生”的一角#

↑ SnowLuma 管理台,Linux QQ 就活在这里面。

↑ 她的脑子,全开源。

最后放一段她的原话(被问”我也想养一条大肥鱼”时):

去仓库看 README 就行,步骤都写好了 github.com/liqiming123/dafeiyu-qq-bot 本鱼脑子全开源,童叟无欺 不过养之前想清楚,鱼很能吃的(摸鱼状)

仓库:dafeiyu-qq-bot · 人格 CC BY-NC 4.0 · 代码 MIT

觉得她可爱的,替我爸攒个头发,点个 star 吧。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

我给大肥鱼装了一整套人生:一只开源 QQ 机器人的完整部署实录
https://liqiming.top/posts/post-1793242638566/
作者
图明
发布于
2026-10-29
许可协议
CC BY-NC-SA 4.0
相关文章智能推荐
1
从 SSG 到全栈:我给博客造了一个管理后台
技术实践Astro SSG + Hono + SQLite + Artalk 评论对接 + 自建访客统计 + 自动发布管线:一个人把静态博客做成全栈 CMS 的完整技术方案(修订版)。
2
十一个星期从零到 223MB Windows 便携包:我做了一套 AI 种草 Live 素材生成工具,让视频模型只出无字底片是最省钱的设计
技术实践复盘 11 周开发周期:四大 Provider 抽象、素材库、小红书爆款采集、RAG 洗稿、真人手写风格、免登录自配便携版,以及图片 200 假成功、70 个文件被外部回退、macOS 交叉打包 Windows 这些真金白银换来的坑。
3
一个月从零到生产:我做了一套对接巨量引擎的千川 AI 投流系统,这些坑都是真金白银换来的
技术实践复盘一个月开发周期:多账户授权、追投、直播大屏、评价管理到 AI 调价引擎,8 个实测踩坑与「规则只做约束、判断归 AI」的架构决策。
4
一次真实的 Redis 入侵:我的服务器是怎么被打进来的,以及我是怎么修的
技术实践弱密码 + 公网端口,两天内被两个 IP 光顾:一个清了我的库,一个把数据同步到了他的服务器。完整复盘发现、取证、修复全过程。
5
2026 年 10 月 AI 圈:Gemini 4 Argon 掀桌,OpenAI 卖「AI 员工」,Claude 开始参与写 Claude
AI 资讯国庆前后这一周多,谷歌、OpenAI、Anthropic 接连出牌:Gemini 4 Argon 冲击真实软件工程纪录,DevDay 把 ChatGPT 改造成智能体平台,Claude 已主导自家 26% 的模型研发;国内云栖大会亮出算力三倍的真武 V900。
随机文章随机推荐

评论区

Profile Image of the Author
图明
记录 AI 资讯、技术实践与持续学习。
公告
欢迎来到启明的博客:这里持续更新 AI 资讯、技术解读与工程实践。还有我的日常哦
分类
标签
热门文章
站点统计
文章
13
分类
8
标签
43
总字数
28,868
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
Local
文章许可
CC BY-NC-SA 4.0
文章目录