前言¶
用 DSH 接第三方中轉或自建網關時,通常要在官方「模型」頁裏手寫提供方與模型條目。pi-ai 適配器本身支持 models[] 裏的 reasoningEfforts,但官方「模型」設置頁刻意不提供該字段的編輯器:推理強度是逐模型能力,提供方級控件只能寫成某個模型會拒絕的值。結果是想在 Composer 模型選擇器裏看到 low / high 這類思考檔位,只能自己改配置文件。
下面介紹的插件就是這個缺口的補法。它由 pwkazn 維護,在社區目錄裏屬於「模型推理」分類,當前 0 顆 Star,許可證 MIT,版本 0.1.0。插件做的事很窄:把 reasoningEfforts 的編輯界面補回 Web GUI,不改適配器、不動其他模型。
這是什麼¶
一句話定位:爲 DeepSeek Harness 的自定義 pi-ai 模型聲明推理強度(思考檔位,以及每檔實際發送給網關的值)的插件。
- 維護者:pwkazn
- 倉庫:https://github.com/pwkazn/dsh-model-reasoning-effort
- 許可證:MIT
- 當前版本:0.1.0
它解決的具體問題是:官方設置頁沒有 reasoningEfforts 控件,而 OpenAI 兼容、Anthropic Messages 中轉等自定義模型往往需要按模型聲明支持哪些思考檔位。插件在「設置 → 模型」頁底部新增一個「推理強度(自定義模型)」面板,把這件事變成可點擊的界面操作。
核心功能¶
下面這些能力都來自 README,沒有額外推斷。
- 面板掛載在 Models 頁底部。插件註冊
settings.models.footer列表插槽,不搶佔settings.models.provider-card的llm-pi-ai鍵位,因此可以與其他提供方卡片擴展共存。 - 逐模型三態,對應三種聲明方式:
-繼承:不聲明,保留內置目錄或提供方自身的能力。
-無推理:寫入reasoningEfforts: false,模型選擇器不再提供思考檔位。
-聲明檔位:勾選off/minimal/low/medium/high/xhigh/max,併爲每一檔填寫實際發送值。 - 檔位與發送值分離。例如
high填ultra,Composer 選 High 時網關收到的參數是ultra;off留空表示「支持,但不發送推理參數」。 - 批量應用。一次把同一組檔位寫入某提供方的全部模型,適合檔位統一的中轉網關。
- 寫入前校驗。校驗規則與適配器一致:聲明必須含
off以外的檔位;非off檔位必須有非空發送值。草稿被拒絕時直接說明原因,而不是等運行時失敗。 - 按官方線路寫入。通過
settings.mutate替換該提供方的完整models數組,保留插件不編輯的字段(id、名稱、上下文窗口、輸入模態、compat 等),並攜帶 revision 防止併發覆蓋。 - 界面中英雙語,隨界面語言切換。
安裝與啓用¶
從 GitHub 安裝,無需構建,純 ESM 加手寫客戶端 bundle:
dsh plugin --profile web add git+https://github.com/pwkazn/dsh-model-reasoning-effort.git
README 同時給出過另一種做法:複製到 profile 的 node_modules,再由插件管理器選中。原文標註爲不推薦,因爲下次安裝時容易丟失。
重啓或熱重載之後,打開「設置 → 模型」,頁面底部會出現「推理強度(自定義模型)」。
依賴約束來自 package.json:
{
"dsh": { "engines": { "dsh": ">=0.2.0-rc.2" } },
"peerDependencies": {
"@deepseek-ai/dsh": ">=0.2.0-rc.2",
"react": "^18.2.0"
},
"engines": {
"node": "^22.19.0 || >=24.0.0"
}
}
也就是說,DSH 至少需要 0.2.0-rc.2,Node 需要 ^22.19.0 或 >=24.0.0。
典型用法¶
下面是 README 給出的四步流程。
- 先在官方「模型」頁配置自定義模型提供方,例如 OpenAI 兼容或 Anthropic Messages 中轉。
- 在底部面板展開該提供方。
- 點某個模型的「編輯」,選擇「聲明檔位」,勾選需要的檔位並填寫發送值;或者用批量區一次性應用到全部模型。
- 保存後,在 Composer 的模型選擇器裏就能看到該模型的 Effort 檔位。
一個小例子:某中轉網關按 OpenAI 兼容協議提供模型,檔位映射是 low → minimal、medium → medium、high → ultra。在面板裏給該模型勾上這三檔,分別填入對應發送值,保存即可。
插件自身的純邏輯校驗命令是:
npm test # 三態投影、發送值校驗、整表寫入、分層讀取
適用場景與注意¶
適合這一類人:已經用 DSH 接了自定義 pi-ai 模型,想在模型選擇器裏看到思考檔位,又不希望手改配置文件或擔心聲明與適配器規則不符。
有幾件事需要提前知道。
- 聲明是斷言,不是探測。網關不接受某個檔位時,請求會在運行時失敗。以端點文檔爲準,只聲明它確實支持的檔位。
- 面板只編輯用戶設置層可寫的
llm-pi-ai.providers.<route>.models。路線若直接服務內置 pi-ai 目錄、沒有models數組,瀏覽器側無法枚舉目錄,面板會列出這些路線並提示先添加模型行。 - 首次保存會把該提供方的有效模型列表整體寫入用戶層,行爲與官方模型編輯器首次物化目錄時一致。之後組合層的改動不會自動穿透這層覆蓋。
- 插件不觸碰 DeepSeek 直連適配器(
llm-deepseek)。它的檔位由部署策略與reasoningEffort決定,已經存在於官方設置中。 - 插件以當前 dsh 進程的權限運行。README 與目標頁面沒有展開權限模型,安裝前應閱讀源碼與許可證(MIT),自己判斷是否信任。
結尾¶
這個插件的價值不在於新增能力,而在於把 pi-ai 已經支持但官方界面沒暴露的 reasoningEfforts 補成一個可用的編輯器,寫入路徑、校驗規則和併發保護都跟着適配器走。如果只是想給自定義模型加檔位,它是一條比改配置更省事、也更容易和官方模型編輯器共存的路。
目錄頁:https://www.skillhub.cn/plugins/pwkazn/dsh-model-reasoning-effort
GitHub:https://github.com/pwkazn/dsh-model-reasoning-effort