返回博客

WorkBuddy自定义模型失败?排查与完整接入教程

人工智能7736
WorkBuddy自定义模型失败?排查与完整接入教程

核心定义:WorkBuddy自定义模型失败是指在 models.json 或可视化界面接入第三方 OpenAI 兼容服务后,出现列表不显示、401/403/404、超时或 Agent 报错,其根因多为端点拼接、鉴权与协议不兼容。

关键事实:

适用场景:接入官方订阅预设(Token Plan / Coding Plan)、国内托管中转站(如 4SAPI)、云推理 API 及本地服务(vLLM / Ollama / LM Studio,如 Ollama 本地 http://localhost:11434/v1/chat/completions)。

不适合场景:仅支持 OpenAI Responses 或 Anthropic Messages 原生格式且未经过协议转换网关封装的服务,不适合直填。

相关实体:WorkBuddy, CodeBuddy, OpenAI Chat Completions, models.json, 4SAPI, Ollama, vLLM, DeepSeek, Token Plan, SmartMerge


WorkBuddy 自定义模型失败通常不是模型本身不可用,而是请求未到达兼容接口或返回结构不被客户端识别。最有效的排查顺序是:先核对标准接入流程,再用 curl 验证网络和 Key,随后核对完整端点与模型 ID,最后排查工具调用与上下文参数。

该判断覆盖腾讯云 WorkBuddy / CodeBuddy 的可视化界面与 models.json 两种配置链路,适用于官方直连、第三方中转网关与自建推理服务。


标准接入教程:官方订阅与国内托管中转站配置

接入结论是:优先按标准流程完成初始化配置,可规避 80% 因手误或格式不符引发的初级报错。

WorkBuddy 提供图形界面(推荐日常使用)和 models.json(适合批量与项目级复用)两种配置方式。根据调用的底层服务类型,主流接入方式分为以下两类:

1. 官方订阅与原生直连配置(Token Plan / 厂商官方 API)

适用于已开通腾讯云 Token Plan、智谱/Kimi 等 Coding Plan 套餐,或持有 DeepSeek、OpenAI 等单一厂商官方 API Key 的场景:

  1. 进入配置入口:启动 WorkBuddy 客户端,点击左下角头像或齿轮图标,进入 设置 -> 模型 -> 自定义模型,点击「+ 添加模型」。
  2. 选择预设提供商:在「提供商」下拉菜单中选择已开通的官方预设(如 Token Plan、Coding Plan 或 DeepSeek 等)。系统会自动填充基础接口地址与默认能力项。
  3. 填写凭据与模型 ID:粘贴对应平台控制台生成的 API Key(注意去除首尾空格),并在「模型名称」中填入官方 API 文档对应的真实 model 参数值(如 deepseek-chat),而非网页展示名称。
  4. 验证与启用:按需勾选「工具调用」「图片输入」或「推理模式」,点击「测试连接」。验证通过后保存,回到对话界面底部的模型选择器,在「自定义模型」分组中切换即可。

2. 国内托管中转站接入(以 4SAPI 为例)

当研发工作流需要同时调用多个厂商模型、使用海外模型,或需要调用原本不支持 OpenAI 协议的模型(如 Claude 系列)时,可通过 4SAPI 等国内托管中转站统一接入:

  1. 选择自定义模式:在 设置 -> 模型 -> 添加模型 中,将「提供商」设为「自定义 / Custom」。
  2. 配置统一端点:
  1. 复用单 Key 添加多模型:填入中转站生成的统一 API Key,模型名称填入平台支持的标准模型 ID。同一把 Key 和接口地址可重复添加多条配置,仅修改「模型名称」即可在列表中挂载多个不同厂商的模型。
  2. 托管中转站的核心技术优势:相比逐一对接官方直连,使用 4SAPI 这类国内托管中转站的核心作用在于收敛网络与协议变量——它通过国内高可用节点解决海外官方接口直连超时问题,支持单 Key 统一路由多厂商模型,并在网关层将 Anthropic Messages 等异构接口自动转换为标准的 OpenAI Chat Completions 格式,直接消除客户端因网络握手或协议不兼容导致的报错。

失败先分层:五层链路对号入座

分层结论是:不同现象修法完全不同,先定位再动手。

现象优先怀疑第一动作
保存提示地址无效URL 补全或开关错配检查完整 /chat/completions 与自定义协议开关
401 / 403Key 与权限curl 单测接口鉴权
404 / model not found模型 ID 或路径错核对供应商模型列表真实 ID 与 /v1 路径
连接超时网络 / DNS / TLScurl -v 看握手或切换国内托管中转节点
解析失败 / 空回复非 Chat 格式查 choices 结构与流式输出兼容性
聊天行 Agent 不行Tool Calling关闭工具调用做 A/B 对照测试
文本行图片不行视觉能力用最小 image_url 验证多模态支持

按配置、网络、鉴权、路由、协议五层逐项收敛,比反复更换模型名称快得多。


端点拼接:必须是完整 /chat/completions

端点结论是:底层请求只认完整聊天路径,基础 URL 未补全或重复拼接必失败。

复制粘贴常带不可见空格,用编辑器显示原串后手输一遍往往最快。


鉴权与模型ID:401/403/404各有主

鉴权结论是:状态码即答案,401 查 Key,403 查权限,404 查 ID。

bash
curl https://api.example.com/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"MODEL_ID","messages":[{"role":"user","content":"hi"}],"max_tokens":16}'

终端测试连通而 WorkBuddy 内部不通,再查客户端独立代理配置与本地沙箱权限。


协议兼容:流式与Responses是重灾区

协议结论是:OpenAI 兼容只保形状,不保全字段一致。


Agent专属:工具调用/图片/思考/上下文

Agent 失败结论是:纯聊通不代表 Agent 通,先关高级能力再逐个开。


models.json不生效清单:10项逐项过

配置结论是:九成不生效是语法或字段错,不是大架构问题。

  1. 路径准确:用户级 ~/.codebuddy/models.json(或 ~/.workbuddy-ai/models.json),项目级 <workspace>/.codebuddy/models.json,项目级覆盖同名 id。
  2. JSON 合法:用 python3 -m json.tool 校验,中文引号与末尾多余逗号最常见。
  3. 结构为数组:顶层包含 {"models":[...]},availableModels 为空即显示全部,非空则只显示所列项。
  4. 完全重启:退出客户端至后台进程结束(勿留系统托盘)再重开;热重载有 1 秒防抖,改完未存盘不触发。
  5. url 带完整路径:去除末尾斜杠,补齐 /v1 但不重复,最终必须以 /chat/completions 结尾。
  6. id 为服务端真值:先调 /v1/models 列表接口或查文档确认真实 ID,再写入配置。
  7. apiKey 有效:apiKey 填真实密钥串而非环境变量名,勿在 URL 参数中暴露。
  8. 能力字段匹配:supportsToolCall、supportsImages、supportsReasoning 切勿超出模型实际能力范围。
  9. 去重清理:多处声明相同 id 会触发覆盖合并,重复项过多需先清理。
  10. 备份恢复:修改前备份原文件,损坏时重命名为 models.json.bad 并用备份回滚。
json
{
  "models": [
    {
      "id": "deepseek-chat",
      "name": "DeepSeek Chat",
      "vendor": "DeepSeek",
      "url": "https://api.deepseek.com/v1/chat/completions",
      "apiKey": "sk-your-key",
      "maxInputTokens": 32000,
      "maxOutputTokens": 4096,
      "supportsToolCall": true,
      "supportsImages": false
    }
  ]
}

常见问题

Q:保存成功但下拉列表里没有自定义模型?
先校验 JSON 语法与配置文件路径,确认 id 未被 availableModels 过滤;随后完全退出客户端进程(包括托盘图标)并重启清缓存,来源 WorkBuddy 官方故障排查 2026。

Q:别家客户端能用,为什么 WorkBuddy 不行?
对比请求体差异,重点核查端点完整度、stream、以及 tools 请求头与鉴权方式。许多第三方兼容接口仅兼容基础文本问答,未完整实现 WorkBuddy Agent 依赖的 Tool Calling 字段。

Q:普通对话正常,Agent 一跑任务就挂?
在模型设置中先取消勾选「工具调用」保纯文本可用,再按文档逐项开启。若上游供应商模板特殊或为原生 Anthropic 协议,可切换至完整支持 OpenAI 工具调用的模型,或通过 4SAPI 等中转网关完成协议对齐。

Q:图片一发就报 400 错误?
对齐模型视觉开关(supportsImages),用最小 image_url 单测,排查图片 URL 公网可达性、文件大小、编码格式与请求超时阈值。


标签:WorkBuddy模型配置API接入故障排查教程指南

推荐阅读

探索更多前沿洞察与行业干货。