前言¶
DeepSeek Harness (DSH) 的默认行为通常依赖 Provider 的默认设置。当需要精细控制不同组件(如子代理、网页搜索、绘图)使用特定模型时,手动配置容易出错。dsh-model-switch 插件提供了一套显式的路由机制,强制指定主模型、子代理、计划执行等场景的模型与推理级别。
核心功能¶
-
多场景显式路由
- Main 模型:为新建会话指定默认 Provider 和模型,现有会话不受影响。
- Subagents:可跟随父级路由,或在创建 Subagent 前注入固定路由。
- Web Search:保持官方web_search行为,部署后通过选定的动态 Provider Search Adapter 路由。
- Image Generation:提供稳定的generate_image工具路由,通过选定的 Codex 或 Grok Adapter 执行。
- Plan Review:在计划审批前选择执行模型。 -
交互式选择器
- Composer Picker:用于选择当前会话模型,提交精确的 Catalog Model ID。
- Plan Review Picker:在发送审批响应前选择执行模型。 -
发送时上下文保护
- 在发送消息前检查目标模型/上下文是否超预算。
- 超限时自动压缩历史记录(仅针对 DSH 可压缩历史)。
- 可通过设置开关控制此行为(默认开启)。 -
模型变体分组
- 支持按 Provider 和模型 ID 后缀(如-fast,-128k)分组。
- 支持推理级别。
典型用法¶
-
配置主模型与子代理
打开 Settings → Model Switch。修改 Main 仅影响新会话。配置 Subagents 时,可选择“跟随父级”或指定固定的 Provider 和模型。 -
使用 Composer Picker
在会话中,通过 Composer Picker 选择模型。该选择器会提交官方 DSH Model Catalog 中存在的模型 ID。 -
使用 Plan Review Picker
在计划审批界面,使用 Picker 选择执行模型,确认后提交。 -
启用上下文保护
在 Settings → Model Switch 中,找到 Check and compact context on send 选项并启用。
注意事项¶
- 浏览器兼容性:在 DSH 0.1.7-alpha.2 版本中,非 Loopback 浏览器的 ConfigForms 仅存储在内存中。在非 Loopback 环境下,请通过 Host 的 Loopback URL 打开 Settings 以避免配置丢失。
- 模型发布要求:插件不会将任意字符串转换为模型。必须通过 Provider 插件将模型发布到官方 DSH Model Catalog,插件才能识别并路由。
- 无静默回退:无效、不可用或不支持的路由会直接报错,不会尝试切换到其他模型或 Provider。
- 不影响范围:该插件不修改
web_fetch、Vision 路由、Provider 登录凭证、官方 Agent 预设或 Native External Agent 的运行时历史。
总结¶
该插件通过提供显式的路由规则和交互式选择器,帮助开发者精确控制 DSH 中的模型调用。它不干预 Core 层或凭证管理,专注于推理层面的路由策略。
- GitHub: https://github.com/NOirBRight/dsh-model-switch
- 目录页: https://www.skillhub.cn/plugins/NOirBRight/dsh-model-switch