WorkBuddy内网DeepSeek模型配置实战全攻略
背景
一位在钢铁企业负责能环管理与厂内物流的同行,日常工作离不开 WorkBuddy 来处理文档、分析数据、审阅合同。公司 IT 在内网部署了一套 DeepSeek 模型服务(地址 http://10.193.200.210:1025),于是自然想在 WorkBuddy 中直接调用这个内网模型,既降低网络延迟,又能确保数据始终留在企业内网。
原本以为改个 API 地址分分钟搞定,结果踩了一连串的坑——配置完模型不显示、好不容易显示了又报 408 错误、能用之后模型选单又只剩两个选项……前前后后折腾了近两个小时才彻底搞定。把这些踩坑经历整理出来,给同样在公司内网部署 AI 模型的兄弟们做个参考。
最终效果
配置完成后,WorkBuddy 模型选单中有这些变化:
- 所有内置模型正常显示(DeepSeek V4 Pro / Flash 等)
- 多出一个“内网 DeepSeek”自定义选项
- 切换即用,数据不出内网
完整配置步骤
第1步:找到模型配置文件
WorkBuddy 的自定义模型配置存储在:
C:Users<你的用户名>.workbuddymodels.json
需要注意:旧版可能在 ~/.codebuddy/models.json,新版统一在 .workbuddy 目录下。如果文件不存在,直接新建一个即可。
第2步:写入正确格式的配置
先来看看错误示范(裸数组格式):
[{"id": "deepseek-v4-flash","url": "http://10.193.200.210:1025/v1","apiKey": "sk-local"}]
正确格式应该是这样(用对象包装,字段要完整):
{"models": [{"id": "deepseek-v4-flash","name": "内网 DeepSeek","vendor": "Custom","url": "http://10.193.200.210:1025/v1/chat/completions","apiKey": "sk-local","maxInputTokens": 128000,"maxOutputTokens": 8192,"supportsToolCall": true,"supportsImages": true,"supportsReasoning": true,"useCustomProtocol": true}]}
关键字段说明:
| 字段 | 填什么 | 为什么 |
|---|---|---|
| id | 内网服务能识别的模型名 | API 请求中“model”字段发这个值。这里用 deepseek-v4-flash |
| name | 自定义显示名 | 用“内网 DeepSeek”方便和内置版区分 |
| url | 完整路径 | 必须是 /v1/chat/completions 结尾,只写 /v1 会导致请求失败 |
| apiKey | 内网服务的 API Key | 很多内网部署不校验,随便填一个也行 |
| maxInputTokens/maxOutputTokens | 根据模型能力填 | 不填可能导致模型行为异常 |
| supportsToolCall | true | 开启工具调用能力 |
| a vailableModels | 不填 | 一旦填写这个字段,会限制模型选单只显示列出的模型 |
第3步:验证内网 API 是否可达
打开 PowerShell,用一行命令测试内网服务:
@'{"model":"deepseek-v4-flash","messages":[{"role":"user","content":"hi"}],"stream":false}'@ > $env:TEMPest.jsoncurl.exe -X POST http://10.193.200.210:1025/v1/chat/completions -H "Content-Type: application/json" -H "Authorization: Bearer sk-local" -d "@$env:TEMPest.json"
返回正常 JSON 响应说明服务没问题。返回 408 超时则检查下一节。
第4步:重启 WorkBuddy
这一步很重要:必须完全退出(系统托盘右键 -> 退出),只关窗口不算退出。重启后在模型选单中就能看到自定义模型了。
常见问题排障
问题1:袋里拦截(最坑的坑)
症状:模型能选到,但发送消息后报错,错误信息中包含公司袋里地址(如 proxy: http://10.2.190.41:8080)和 408 状态码。
原因:WorkBuddy 走系统袋里访问内网 IP,公司袋里无法转发到内网地址,导致超时。
解法:管理员 PowerShell 执行:
setx NO_PROXY "10.0.0.0/8,localhost,127.0.0.1"
然后完全退出 WorkBuddy 再重新打开。
问题2:配置后模型选单只剩很少模型
症状:原来有十几种内置模型,配置后只剩一两个。
原因:models.json 中写了 a vailableModels 字段,限制了模型列表的展示范围。
解法:删除 a vailableModels 字段,WorkBuddy 会自动显示所有内置模型。
问题3:内网服务报 404 "model does not exist"
症状:API 返回 The model 'xxx' does not exist
原因:id 字段改了名字,和内网服务期望的模型名不匹配。
解法:把 id 改回内网服务能识别的模型名(如 deepseek-v4-flash),name 字段单独设置显示名即可。
避坑总结
| 易错点 | 正确做法 | 错误后果 |
|---|---|---|
| models.json 裸数组格式 | 用{"models":[...]}对象包装 | 模型不显示 |
| URL 写到/v1就停 | 补全/v1/chat/completions | API 请求路径不对 |
| 忘了 NO_PROXY | 内网 IP 加到环境变量绕过袋里 | 408 超时 |
| a vailableModels限制了 | 删掉它 | 选单只剩一两个模型 |
| 只关窗口没完全退出 | 右键托盘退出 | 配置不生效 |
总结
WorkBuddy 接入内网私有模型本身不复杂,关键就三点:配置文件格式要对、URL 路径要写全、袋里要绕开。配置好之后,内网模型和云端模型可以自由切换,既享受云端模型的完整能力,又能在敏感数据场景走内网链路。






