前言¶
DeepSeek Harness 在處理長文本時會用模型的上下文窗口做預算與溢出判斷。不同渠道掛載同一模型時,真實窗口往往不同,而安裝目錄給出的值偏保守;也有場景希望反向調小窗口,讓 DSH 更早壓縮。本插件把「按模型改窗口」收斂成一個不依賴第三方插件的小面板,支持在界面中切換檔位或直接輸入數值。
插件介紹¶
dsh-context-presets 是一個模型推理類的 DSH 插件,由 xunyyds 維護。它的核心作用是讓用戶爲每個模型單獨設定上下文窗口,所有取值寫入 llm-pi-ai 命名空間,由宿主校驗與持久化,改動即時生效、無需重啓。
需要注意的是,本插件只調整 DSH 側的預算基準,不擴大服務商的真實上限;自定義值不會超過上游聲明的窗口。
核心功能¶
狀態面板與右鍵菜單¶
左鍵點擊輸入框下方的窗口芯片可彈出面板,顯示會話生效值、當前設定、上游默認值、橫向檔位和自定義輸入框。右鍵點擊芯片會彈出與系統右鍵菜單同款的列表,換檔一步到位。
檔位選項¶
- 跟隨上游:不寫死數值,DSH 使用上游聲明的窗口,上游變化時自動跟隨。
- 自定義:在面板輸入框直接填任意正整數,上限由上游聲明決定。
窗口值統一以 K / M 顯示;不由 llm-pi-ai 管理的路由只顯示會話生效值,檔位置灰。
設置彈窗與批量操作¶
設置彈窗按提供方/模型列出,標出已自定義與已調整檔位的模型,可篩選只看已自定義。批量功能支持按提供方一次性應用或恢復,超出上游的模型自動跳過。
界面刷新¶
右鍵菜單與設置彈窗內置界面刷新,不關閉客戶端即可重載界面。
安裝與啓用¶
插件兼容 DSH ≥ 0.2.0-rc.2 的 Web 客戶端。
安裝命令如下:
dsh plugin --profile web add dsh-context-presets
架構說明¶
插件採用模塊化設計:
src/core:純邏輯模塊,負責檔位、設置文檔讀取、寫入計劃、菜單條目。src/client:界面模塊,包含窗口芯片、右鍵菜單、設置彈窗,通過核心槽位conversation.composer.dock與plugins.bundle.config掛載。src/host:宿主半側,僅佔位、不持有狀態。build.mjs:將各模塊內聯成瀏覽器可執行的lib/client.js,lib/index.js是宿主入口。
適用場景¶
適合需要在多模型場景下精細控制上下文窗口預算的開發者或使用者,特別是:
- 同一模型在不同渠道掛載時窗口值不同,希望按渠道或模型調整預算。
- 需要更早壓縮上下文,讓 DSH 在達到真實上限前就開始處理。
- 希望在不重啓客戶端的情況下即時調整模型窗口設置。
注意事項¶
插件以當前 dsh 進程權限運行,安裝前建議檢查源碼與許可證。本項目採用 MIT 許可證。
總結¶
dsh-context-presets 提供了一個直觀的界面來爲每個模型單獨設定上下文窗口,支持檔位切換、自定義輸入、批量操作和實時更新。它通過 llm-pi-ai 命名空間與宿主協作,既保證了配置的持久化,又確保不會超出上游聲明的窗口限制。
- 插件主頁:https://www.skillhub.cn/plugins/xunyyds/dsh-context-presets
- GitHub:https://github.com/xunyyds/dsh-context-presets