DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Bailian Models — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
B

dsh-bailian-models

Bailian Models

Alibaba Bailian (DashScope) 模型目录预设 + DeepSeek Harness 自动适配器 — 推理强度级别、思考预算、上下文窗口、现有 Bailian 路由的自动适配、可配置的上下文上限

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:CroissanTTs/dsh-bailian-models#53cf053be605ea1cee32a1043ccf5346b71a1e9a
README兼容性版本

兼容性与来源证明

Bailian Models 以 dsh-bailian-models 发布,当前版本为 1.5.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
github
Registry 更新时间
2026/9/20

版本

1.5.0stable
2026/9/20
1.4.0stable
2026/9/16

相关插件

正在加载相关插件…

最新版
1.5.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
any
许可证
MIT
发布源
github
GitHub
★ 1
周下载
0
最近提交
2026/9/20
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 models-usage 分类下经过校验的插件。

Usage@linxin666/dsh-usage用于 dsh Web GUI 的使用统计插件:检测各提供商的余额和编码计划配额,并提供实时令牌使用记录,同时在侧边栏条目中显示当前会话提供商今日的使用量Whale Widgetdsh-whale-widgetDSH Web 界面右下角的 DeepSeek 余额小鲸鱼挂件:余额/今日已用/峰谷定价、自定义泡泡点击序列(文本/余额/今日/峰谷/图片/随机语句与并列加权选择)、逐行样式与字体、悬浮快捷编辑、音效与每轮消耗、自定义角色/动图/音效、吸附与翻转自定义Usage Stats@ychris12138/dsh-usage-statsdsh Web GUI 的令牌使用热力图、提供商余额和订阅配额Codex Connectdsh-codex-connect用于 DeepSeek Harness 的 ChatGPT OAuth 和 Codex 模型。

README

dsh-bailian-models

English | 中文

A DeepSeek Harness (DSH) plugin for Alibaba Bailian (DashScope):

  1. Preset route: a ready-to-use bailian provider route with a built-in catalog of 36 major text models — context windows, max output tokens, and per-family reasoning effort controls (enable_thinking / reasoning_effort / thinking_budget);
  2. Auto-adapter: detects any of your existing provider routes whose baseURL points at Bailian and fills in the missing dialect, reasoning levels, and capacity declarations — fields you wrote yourself are always kept.

Once installed, Bailian models appear in the DSH model picker with working reasoning-effort levels — no hand-written settings.yaml required.

Why

DSH's built-in pi-ai adapter does not recognize the dashscope.aliyuncs.com endpoint: requests fall back to the plain OpenAI dialect (wrong store/developer fields, no enable_thinking), and model entries carry no context-window or reasoning metadata — so reasoning strength is fixed and context is unknown. This bundle supplies the correct dialect, effort levels, and capacities for every listed model.

Install

DSH Desktop / Web (community market): search for dsh-bailian-models in the market and confirm the install.

CLI:

dsh plugin --profile web add dsh-bailian-models

Set your API key (referenced by env var name only — keys are never stored by this plugin):

export DASHSCOPE_API_KEY=sk-...

You can later edit the bailian route in DSH settings (Models page) to use a different env var name or regional endpoint.

Auto-adapting existing routes

Beyond the preset bailian route, the bundle mounts an auto-adapter: it watches the llm-pi-ai settings section, and any existing route whose baseURL hostname matches a Bailian endpoint (dashscope.aliyuncs.com / dashscope-intl / dashscope-us / *.maas.aliyuncs.com) gets filled in automatically:

  • route-level dialect compat (thinkingFormat: qwen, supportsStore: false, supportsDeveloperRole: false);
  • contextWindow / maxTokens / input / reasoningEfforts / model-level compat for models known to the bundled catalog (snapshot suffixes like -0902 or -2026-05-20 fall back to the parent model);
  • the route-level thinkingBudgets level map when budget-type models are present.

Only gaps are filled — values you wrote are never overwritten; unknown model ids are left untouched. Every write is validated against dsh-llm-pi-ai's own schema first; if a write is rejected, your config stays as-is and a warning is logged. Disable per profile by disabling the bailian-models-autoadapt patch row, or set its config.autoAdapt: false; self-hosted gateways can be added via config.extraHosts.

Auto-filled fields land in the user layer of your settings (settings.yaml), so they survive uninstalling the plugin (harmlessly); the preset bailian route disappears with uninstall.

How reasoning levels map to the wire

Bailian model families speak incompatible thinking dialects; the bundle adapts each one:

Family typeWire paramsDSH level behavior
A. Effort levelsenable_thinking + reasoning_effortSelecting a level sends that effort; Off disables thinking
B. Budgetsenable_thinking + thinking_budgetLevels map to token budgets: minimal 1024 / low 4096 / medium 16384 / high 65536 (clamped per model)
C. Toggleenable_thinking onlyOff / High (High = thinking on)
D. Always-thinkingnone (model always thinks)No levels offered — sending any toggle risks a 400; reasoning content still displays

With no level selected, type A/B/C models explicitly send enable_thinking: false (predictable cost). Type D models are unaffected.

Model table

All capacities from the official Alibaba Bailian docs. Context / max output in tokens.

A. Effort levels — qwen3.8-max, qwen3.8-max-0902, qwen3.8-flash (off/low/medium/xhigh, 1M ctx, 131k out, text+image) · glm-5.3 (low/high/max — thinking cannot be disabled; 1M ctx, 131k out) · glm-5.2, glm-5.2-us, glm-5.2-fast-preview (off…max, 1,048,576 ctx) · glm-5.1, glm-5 (off…xhigh) · deepseek-v4-pro, deepseek-v4-pro-0813, deepseek-v4-flash, deepseek-v4-flash-0731 (off/high/max, 1M ctx, 393,216 out) · deepseek-v4.1-flash (minimal…max — six levels, no off; 1M ctx, 393,216 out, text+image).

deepseek-v4.1-flash levels: the official docs say reasoning_effort takes an integer 1–100, but the live compatible-mode endpoint rejects integers ('reasoning_effort' must be an object with 'effort' field or a String) and only accepts the enum minimal/low/medium/high/xhigh/max/ultra — ultra being one level beyond the documented set.

⚠️ The harness caps the level list at 7, and off occupies one of those slots (pi-ai's EXTENDED_THINKING_LEVELS = off/minimal/low/medium/high/xhigh/max; undeclared levels are dropped). The official enum has exactly seven values, so "drop off, minimal→ultra = seven levels" is physically impossible in the harness — that would be eight. The choice is "off + 6 levels" or "no off, 6 levels". This catalog picks the latter: the slider's floor is minimal (thinking cannot be disabled for this model), and max maps to the official top tier ultra — i.e. the high max is sacrificed to keep the low minimal. enable_thinking:false does genuinely disable thinking (tested), so this is a deliberate trade-off; to restore "can disable thinking", add an empty off: line to reasoningEfforts (the top then becomes xhigh).

glm-5.3 levels: only low / high / max, and thinking cannot be disabled. The docs say passing enable_thinking=false "has no effect", but the live endpoint returns a hard 400 (InternalError.Algo.InvalidParameter: The value of the enable_thinking parameter is restricted) — this catalog follows the measured behaviour: three levels, no off.

Because the harness's qwen dialect sends enable_thinking: false when no level is selected (a guaranteed 400 here), this entry overrides thinkingFormat from the route's qwen to openai in its model-level compat. pi-ai then sends reasoning_effort only when a level is picked and sends nothing at all otherwise, falling back to the model default (thinking on). The levels do scale depth: on the same hard problem, low ≈ 10, high ≈ 59, max ≈ 686 reasoning tokens.

B. Budgets — qwen3.7-max/plus/flash, qwen3.6-plus/flash, qwen3.5-plus/flash, qwen3-max, qwen-plus (off/minimal/low/medium/high).

C. Toggle — qwen-flash, qwen-turbo, deepseek-v3.2, deepseek-v3.2-exp, deepseek-v3.1, kimi-k2.6, kimi-k2.5.

D. Always-thinking — kimi-k3, kimi-k2.7-code, kimi-k2-thinking, MiniMax-M2.5, MiniMax-M2.1, deepseek-r1, deepseek-r1-0528, qwq-plus.

The full per-model table with sources lives in README.zh.md.

Customizing

The bundle writes into the composition base layer; anything you put in the llm-pi-ai: section of ~/.dsh/settings.yaml (or edit in the Models page) merges over it per provider key and applies without a restart:

llm-pi-ai:
  providers:
    bailian:
      baseURL: https://dashscope-intl.aliyuncs.com/compatible-mode/v1  # Singapore
      apiKeyEnv: MY_BAILIAN_KEY
      # Narrow the model list. Note that settings merges arrays wholesale, so this
      # list replaces the base-layer catalog; fields you leave out are restored by
      # the auto-adapter by id (including reasoningEfforts) — the id alone suffices.
      models:
        - id: qwen3.8-max

⚠️ Careful when editing the Bailian list on the Models page: the GUI writes the resolved list back into settings.yaml as models, replacing the base-layer catalog (this is how a 37-model route shrinks to a handful). The auto-adapter restores the missing fields by id on the next settings change, so effort levels survive — but if you want the whole catalog, delete that models: block from the user layer.

Uninstall removes the base-layer route; any user-layer overrides of bailian stay harmless but inert — delete them too if you like.

How it works (for maintainers)

Two parts:

  1. Pure-config preset: package.json's dsh.bundle.patch points to cordis.patch.yml, which overrides (by id) the dormant llm-pi-ai row in the dsh-base composition, injecting the bailian route into the base layer. The name field is a drift guard: if a future base composition mounts a different plugin under that id, this patch is skipped with a warning instead of silently corrupting configuration.
  2. Auto-adapter (src/index.js, mounted by the same patch's insert row): listens to settings/document-updated, detects Bailian routes by hostname, and fills gaps via an idempotent pure function (computeRoutePatch). The model catalog is generated from cordis.patch.yml (npm run build → src/catalog.mjs); the YAML is the single source of truth. Zero runtime dependencies.

Serialization is done by @deepseek-ai/dsh-llm-pi-ai (pi-ai runtime): with the qwen thinking dialect it sends enable_thinking / reasoning_effort / thinking_budget, and reasoning streams back via reasoning_content.

Validate after editing the patch:

npm install
npm test   # schema-validates cordis.patch.yml + catalog sync + auto-adapter behavior (22 assertions)

Platform constraints worth knowing

  • Thinking mode requires streaming — DSH always streams, so this is a non-issue.
  • reasoning_effort and thinking_budget are mutually exclusive on the qwen3.8 family, hence no budget levels on type-A Qwen models.
  • kimi-k3, deepseek-r1, MiniMax-M2.x, qwq-plus etc. are always-thinking models; thinking cannot be disabled — a platform behavior, not a plugin defect.
  • The bundle cannot see deprecations; if Bailian retires a model, delete its entry in settings.

Contributing

Add or fix a model by editing cordis.patch.yml: copy the entry shape of its family and attach a link to the official Bailian doc page for the numbers. Run npm run validate before submitting.

License

MIT