04. LangBot 配置
LangBot 在这套系统里的角色
LangBot 是机器人中枢。它接收 NapCat 传来的 QQ 消息,然后决定这条消息怎么处理。
它主要负责:
- 管理机器人实例,比如
qq bot。 - 管理模型配置,比如
deepseek-chat。 - 管理流水线,比如普通聊天流水线、GPT 高级分析流水线。
- 管理触发条件,比如群聊是否必须 @、是否需要
/gpt前缀。 - 管理提示词,比如“神盾局特工 26 号”的性格。
- 管理上下文、知识库、插件、日志。
它不负责:
- 不负责登录 QQ。
- 不直接处理 QQ 协议细节。
- 不保存 QQ 登录态。
这些由 NapCat 做。
可以把它理解为:
LangBot = 机器人调度中心 / 大脑外壳 / 消息路由器例子:
NapCat 收到群消息:@神盾局特工26号 你好
|
v
LangBot 检查:
- 这是不是 qq bot 的消息?
- 群聊 @ 规则是否命中?
- 应该走哪条流水线?
- 这条流水线用哪个模型?
|
v
调用 New API 的 deepseek-chat
|
v
生成回复并交给 NapCat 发回 QQ打开 WebUI
浏览器访问:
http://服务器公网IP:5300如果打不开:
docker ps | grep qqbot-langbot
docker logs --tail 80 qqbot-langbot
ss -tlnp | grep 5300初始化账号
LangBot 第一次进入 5300 页面时需要初始化管理员账号。它不是固定默认账号登录。
页面如果要求邮箱和密码,就填写自己的邮箱和强密码。创建后用这组信息登录。
模型配置
本次模型走 New API。
LangBot 后台:
模型配置 / 模型供应商 / OpenAI 兼容填写:
Base URL:http://172.17.0.1:3000/v1
API Key:New API 里给机器人的 token
Model:deepseek-chat如果 LangBot 和 New API 不在同一台服务器:
Base URL:http://服务器公网IP:3000/v1为什么使用 deepseek-chat
deepseek-chat 适合 QQ 日常聊天:
- 快。
- 便宜。
- 不容易输出
<think>。
如果使用 deepseek-reasoner,可能会在回复里带:
<think>...</think>除非需要推理过程,否则 QQ Bot 建议用 deepseek-chat。
机器人配置
LangBot 后台:
机器人 -> 添加机器人 / qq bot选择:
协议:OneBot v11
端口:2280
启用:是然后绑定到对应流水线。
这里的“机器人”不是 QQ 账号本身,而是 LangBot 里的一个接入配置。
QQ 账号在 NapCat 里登录;LangBot 里的机器人只是告诉 LangBot:
有一个 OneBot v11 连接会从 2280 进来。
这些消息应该交给哪条流水线处理。流水线配置
LangBot v4 里,消息必须匹配某条“流水线”才会被处理。
流水线可以理解为“处理规则 + AI 能力 + 输出规则”的组合。
比如:
流水线 A:qq bot
触发:群聊 @ 机器人
模型:deepseek-chat
人设:神盾局特工 26 号
用途:日常聊天再比如:
流水线 B:qq bot gpt
触发:/gpt 前缀
模型:gpt-5.4
用途:复杂分析同一条 QQ 消息进入 LangBot 后,LangBot 会根据触发条件决定交给哪条流水线。
新建流水线:
名称:qq bot
AI 能力:选择 deepseek-chat 对应模型配置
绑定机器人:选择 OneBot / qq bot触发条件见 05-trigger-rules.md。
测试链路
测试顺序:
- NapCat 登录 QQ。
- NapCat WebSocket Client 连接
ws://qqbot-langbot:2280/ws。 - LangBot 日志出现
GET /ws 1.1 101。 - 用另一个 QQ 私聊机器人。
- 群聊里
@机器人 你好。 - New API 后台能看到调用日志。
完整链路:
QQ -> NapCat -> LangBot -> New API -> DeepSeek