自适应模型路由:请求级复杂度分类,按配置链自动选择后端 provider。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:dylan121322/llm-adaptive
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
DeepSeek Harness 的 adaptive 模型路由插件。在模型选择器(/model)中提供 adaptive 选项:每个 LLM 请求先由 flash 分类器判难度(low / medium / high / critical),再按配置驱动的路由链自动转发到对应后端 provider。
功能
- 请求级复杂度分类 ——
deepseek-v4-flash直连(不走代理,无递归)。 - 上下文感知判定 —— 分类 prompt 注入会话目标滚动摘要 + 最近对话(延续 / 收尾 / 报错循环三条判定要点)。
- sticky 防降档 —— 任务中途判定下降时保持上一档,除非消息含明确降级指示或收尾信号。
- 配置驱动路由链 —— 路由链读
pool.json的routing.levels($active展开为当前活跃 provider,缺失回退默认链);转发失败沿链逐个降级。 - 分类器配置动态化 —— URL / 模型 / key 引用从
pool.json的classifier节读取(代码不硬编码密钥)。 - 失败安全 —— 任何分类失败降级 medium,绝不阻断请求。
- 可观测 —— 每次决策(档位、cause: llm/sticky/cache)写入插件日志。
- 120s 决策缓存 —— 按用户文本头部 + 目标指纹键控。
依赖
- DeepSeek Harness (dsh)
- 模型池文件
~/.dsh/tools/cc-switch-sync/pool.json,需包含:classifier节:url/model/key_ref(按~/.dsh/.credentials.yaml解析,池内api_key兜底)routing.levels:low/medium/high/critical路由链
- 分类器可用的 DeepSeek API key
池文件由 cc-switch-sync 的 import 工具生成(也可手写)。插件每次请求重读池,池改动即时生效。
安装
dsh plugin add llm-adaptive
本地开发(profile 内 file: 引用):
cd ~/.dsh/profiles/web && npx pnpm@10 install # 配合 "llm-adaptive": "file:plugins/llm-adaptive"
重启 dsh web 服务后,在 /model 选择 adaptive(自动路由)。
使用
- 打开
/model,选择adaptive(自动路由)。 - 之后每个 LLM 请求先判档(low/medium/high/critical),再路由到该档位路由链的第一个可用 provider。
- 决策日志(
level=… cause=… chain=…)写入~/.dsh/hooks/plugin.log。
选择器中也提供显式档位模型(low / medium / high / critical)可直接选用。
原理
为 adaptive provider 注册自定义 LlmAdapter:stream() 内 await 分类(async generator),再经 ctx.llm.prepareCall + stream 转发到目标后端(chunk 协议统一透传)。选择请求级适配器而非代理或请求层拦截,是因为 dsh 热切换配置且 prepared-call 契约要求 options 与 prepared 的 provider/model 一致。
许可
MIT
链接
同类插件
V1ki/dsh-plugin-subscriptions★ 394
把 ChatGPT(Codex)、Claude、Grok 订阅当作 DeepSeek Harness 的 LLM 提供方:设置页登录、模型目录、用量展示,以及 image_generate、video_generate 与 x_search 工具。
Mars-Sea/dsh-commandcode-provider★ 337
非官方 Command Code 模型接入插件:注册 `commandcode` 路由,带实时模型目录与推理强度支持。
corrinehu/dsh-workbuddy-connect★ 216
将 WorkBuddy 桌面 App 包含的模型自动接入 DeepSeek Harness,在 DSH 对话窗口里零配置使用。
cv-superding/dsh-deepseek-web-login★ 170
新增 deepseek-web provider,把 chat.deepseek.com 网页端模型接入 DSH:浏览器登录抓取、PoW 请求签名、SSE 流式传输与基于提示词的工具调用。
volcengine/ark-cli#ark-plan-api★ 139
在 DSH 原生模型选择器中注册方舟 Agent Plan、Coding Plan 与后付费模型路由。
franksong2702/dsh-codex-connect★ 120
通过 ChatGPT OAuth 将 OpenAI Codex 模型接入 DeepSeek Harness,并提供可选的搜索与图片工具。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。