09. 常见问题与排错
工具速查
cd /root/qq-bot
docker-compose ps
docker logs --tail 100 qqbot-napcat
docker logs --tail 100 qqbot-langbot
docker logs --tail 100 langbot_plugin_runtime
ss -tlnp | grep -E "5300|6099|2280|5401"涉及 New API / CPA:
docker logs --tail 100 new-api
docker logs --tail 100 cli-proxy-apiDocker Hub 拉镜像失败
错误:
Get "https://registry-1.docker.io/v2/": Client.Timeout exceeded处理见 02-deploy.md 的 Docker daemon 代理部分。
关键命令:
curl -x http://127.0.0.1:7890 -I https://registry-1.docker.io/v2/返回 HTTP/2 401 表示代理连通。
rockchin/langbot-plugin-runtime 拉不到
错误:
pull access denied for rockchin/langbot-plugin-runtime
repository does not exist原因:
这个镜像不是公开可用镜像。正确做法是用同一个 rockchin/langbot:latest 镜像启动 plugin runtime:
langbot_plugin_runtime:
image: rockchin/langbot:latest
container_name: langbot_plugin_runtime
restart: unless-stopped
command: ["uv", "run", "--no-sync", "-m", "langbot_plugin.cli.__init__", "rt"]
environment:
- TZ=${TZ:-Asia/Shanghai}
ports:
- "5401:5401"
volumes:
- ./data/langbot/plugins:/app/data/plugins
networks:
- qqbotplugin runtime 连接失败
LangBot 日志:
Failed to connect to plugin runtime(ws://langbot_plugin_runtime:5400/control/ws): Name or service not known原因:
- 缺少
langbot_plugin_runtime服务。 - 服务名写错。
- runtime 容器还没启动好。
如果后面出现:
Connected to plugin runtime.就说明已经恢复,前面的报错可以忽略。
NapCat WebUI 打不开
检查:
docker ps | grep qqbot-napcat
docker logs --tail 80 qqbot-napcat
ss -tlnp | grep 6099常见原因:
- 容器没启动。
- 端口没映射。
- 腾讯云安全组没放行
6099。 - 来源 IP 填错,本机公网 IP 变化。
LangBot WebUI 打不开
检查:
docker ps | grep qqbot-langbot
docker logs --tail 80 qqbot-langbot
ss -tlnp | grep 5300常见原因同上。
WebSocket 405
NapCat 日志:
反向WebSocket (ws://qqbot-langbot:2280) 连接错误
Unexpected server response: 405LangBot 日志:
GET / 1.1 405原因:NapCat WebSocket 客户端 URL 少了 /ws。
错误:
ws://qqbot-langbot:2280正确:
ws://qqbot-langbot:2280/ws成功时 LangBot 日志:
GET /ws 1.1 101QQ 消息进入了,但不回复
LangBot 日志:
No pipeline_uuid for query ..., query dropped说明消息已经进入 LangBot,但没有命中流水线。
处理:
- 检查机器人是否绑定流水线。
- 检查流水线是否启用。
- 检查触发条件。
- 测试阶段把
随机改为1。 - 跑通后再改回
随机=0,只保留@触发。
LangBot 调模型失败
先测试 New API:
curl -s http://127.0.0.1:3000/v1/models \
-H "Authorization: Bearer 你的NewAPI机器人TOKEN"从 LangBot 容器内测试:
docker exec qqbot-langbot sh -lc 'wget -qO- http://172.17.0.1:3000/v1/models --header="Authorization: Bearer 你的NewAPI机器人TOKEN"'常见原因:
- New API token 错。
- 模型名没有配置。
- New API 没开自用模式或模型价格未配置。
- DeepSeek / CPA 渠道不可用。
New API 报 No available channel
错误:
PipelineError: 模型请求失败: 请求错误: Error code: 503 - {
"error": {
"code": "model_not_found",
"message": "No available channel for model gpt-5.5 under group vip (distributor)"
}
}含义:
当前 New API token 所属分组是 vip,但 vip 分组下没有可用渠道支持 gpt-5.5。排查:
- New API 渠道模型列表是否包含
gpt-5.5。 - 对应渠道是否勾选了
vip分组。 - 机器人 token 所属用户是不是
vip分组。 - 分组与模型定价里是否配置了
vip + gpt-5.5,或是否开启自用模式。
常见修复:
New API -> 渠道 -> CPA/ChatGPT 渠道 -> 分组 -> 勾选 vip或者把 LangBot 模型名改成实际可用的:
deepseek-chat
gpt-5.4DeepSeek 输出 think
如果回复里有:
<think>...</think>通常是用了:
deepseek-reasonerQQ 聊天建议改为:
deepseek-chat如果必须用 reasoner,可以在输出处理里加正则替换:
(?s)<think>.*?</think>\s*替换为空。
NapCat 登录 QQ 失败
建议:
- 用小号。
- 不要短时间频繁扫码。
- 先用正常 QQ 客户端确认账号能登录。
- 如果服务器 IP 风控严重,暂停一段时间或换环境。