发现opencode go搜索用不了
于是叫它自己调研去
DeepSeek 的原生工具调用标记长这样(用代码块包住免得又被吞):
<|DSML|> invoke name="web_search"
<|DSML|> parameter name="query"
模型想调搜索时,吐出的是这套标记。正常情况下网关应该把它解析成结构化的 tool call 去执行;但 opencode go 的转换层没认出来,直接当普通文本返回给你了。
这事有实证:
- vLLM 采样了 9500 条生产响应,DSML 泄漏率 0.8%,触发条件是 tool_choice=auto + 流式
- OpenCode Zen 在第三方调查里被明确列为「DeepSeek V4-Flash 会泄漏」的 provider
- opencode 官方 issue #24566 就是这个问题,2026-04-27 开的,07-04 被标记 not planned 自动关闭,07-24 还有人补「still haven't been fixed」
- 有人做了一模一样的链路(Codex → new-api → opencode go → DeepSeek Flash),最后只能自己写桥接层,缓冲到闭合标签再重建 tool call
更关键的结论:社区实测,Claude Code 走 opencode go 时,DeepSeek / Kimi / GLM / MiMo 的搜索全挂,只有 Qwen 能搜。原因就是前面说的——Anthropic 的 tool_use 被翻成普通 function call,上游不认。
所以你充钱也没用,这是网关的解析缺陷,不是额度问题。
哎,a/









