求教:切换对话模型时,web_search 能否也使用对应模型进行搜索? #7844
Replies: 1 comment
你的判断是对的:搜索 provider 是全局配置,不跟随对话模型1. 结论:目前不支持你要的"按模型切换搜索"搜索后端是 - id: web
name: '@deepseek-ai/dsh-web'
config:
searchProvider: brave改的是整个进程的搜索后端——没有"这个会话用 A、那个会话用 B"的维度。所以:
2. 关于你列的社区方案你列的 3. 所以这应该按功能诉求提,而且可以写得很具体建议这样表述(三条,按优先级):
第 1 条是真正的功能,第 2、3 条是低成本且立刻有价值的改进。 4. 一个现实提醒你要的"每个模型配一套搜索",前提是那个模型自己提供搜索能力。Space Bunny Alpha 走的是 OpenCode 的通道,它是否提供等价的搜索端点,决定了这件事在技术上能否成立——如果它没有自己的搜索能力,"跟随模型切换"就退化成"跟随模型切换到一个并不存在的后端"。建议把这一条也写进诉求,这会让讨论更聚焦:你要的可能是"让搜索走当前模型的 provider(若该 provider 具备搜索)",而不是"每个模型都必须有搜索"。 5. 版本提醒
一条边界我上面确认的是" |
Uh oh!
There was an error while loading. Please reload this page.
背景
本人算是AI小白,直至最近才开始使用 Agent 尝鲜。这周 Space Bunny Alpha 在 OpenCode 上可以免费用了,我就在 DSH 中接入了这个模型。
但使用过程中发现:即使当前对话使用的是 Space Bunny Alpha,DSH 的
web_search仍然会触发 DeepSeek API 请求。删除 DeepSeek API Key 后,搜索工具会返回 401 错误。通过和模型对话了解到的调用链是:
同时,在相同环境中:
这说明 DSH 的搜索 provider 和抓取 provider 是两条独立路径,问题主要出在搜索 provider 的配置或凭据上。
DSH 当前的 DeepSeek 搜索 provider 文档也说明,它会复用
DEEPSEEK_API_KEY,并将搜索请求发送到独立的 Anthropic-compatible/messagesendpoint。搜索请求使用独立的搜索模型,并不自动继承当前对话模型。我希望的是:
也就是说,切换对话模型时,网页搜索能力也应该跟随模型切换,而不是所有模型都固定使用一个全局的
deepseek-officialprovider。模型也给出一些配置:
来替换搜索 provider。但这只能把所有会话的搜索统一切换到 Brave,并不能实现:
我目前看到的一些社区方案,例如:
dsh-free-searchdsh-web-search-bravedsh-searxng-webdsh-web-search-prodsh-web-toolsdsh-web-search-aggregation主要解决的是“替换全局搜索后端”或“多引擎聚合”,并不完全符合我想要的“按当前对话模型选择对应搜索能力”。
这时候我比较好奇在 OpenCode 里面直接使用 Space Bunny Alpha,
web_search的调用链是什么,模型分析它的调用链可能是:并且 OpenCode 官方文档也说 web_search 仅在 OpenCode 本身使用
所以我的理解是:OpenCode 的
websearch可能是客户端内部工具,外部无法直接获取它的搜索 endpoint,因此 DSH 不能简单复用这个工具。提问
所以 DSH 中能否通过插件,来为每个会话配置对应的 WebSearchProvider 吗🤔?比如接入 OpenCode 就用 OpenCode 的 API KEY,接入 GLM 就用 GLM 的 API KEY。
并且我还注意到之前在 ZCode、Codex 上使用 DeepSeek 的时候,也不需要填入 GLM 和 GPT 的 API KEY 就能调用 web_search。但是反过来就不太行了🤔。
All reactions