dsh-provider-quota:提供方共享限流與 GUI 配置

前言

在 DeepSeek Harness(DSH)裏接入多個模型提供方時,速率限制往往分散在客戶端、腳本或口頭約定裏,跨進程併發時更難對齊 RPM、TPM 和週期 token 上限。提供方返回 429 後,還需要與 DSH 自帶的重試鏈路配合,避免同一 waterfall 裏重複調用 next()。

下面介紹社區插件 dsh-provider-quota(維護者 Fulisike,分類:模型推理)。它爲已配置的提供方提供共享滾動限額、跨進程串行與持久記賬,並在 Web 設置裏提供原生表單入口;大上下文場景下可與 DSH 壓縮能力銜接,由官方 dsh-llm-retry 負責恢復。

這是什麼

dsh-provider-quota 是 DSH 的提供方共享限流插件,帶原生 GUI 設置。所有模型共享滾動 RPM、輸入與輸出合計 TPM、7 天 token 額度;跨進程串行請求並持久記賬。本插件不會在同一 waterfall 中重複調用 next(),恢復由官方 dsh-llm-retry 處理。

當前包版本爲 2.1.1(MIT 許可證)。目錄頁:Skillhub 插件頁。

核心功能

共享額度與串行

  • 三個維度可配:滾動 60 秒請求數、滾動 60 秒 token 總數(含輸入與輸出)、滾動 7 天 token 總數。
  • 各額度支持 -1 表示不限制該項;0 無效。
  • 使用同一統計目錄的進程通過文件鎖共享狀態,每個提供方最多一條請求在途;跨進程不保證 FIFO。

發送前預算與結算

發送前保存輸入估計與輸出預留,結算時使用提供方返回的 actual usage。缺少 usage 的嘗試會保留預留(可能高估);輸入估計會根據實際 usage 向上校準。token 窗口從結算時起算,RPM 從發送時起算。

本地計數無法覆蓋其他客戶端、其他機器或安裝前未記錄的用量,也無法完全復現提供方 tokenizer 和限流口徑,仍可能遇到 429。

超大單次請求與自動壓縮

當單次調用在本地預計已超限(LOCAL_REQUEST_TOO_LARGE)時,請求尚未發出;多等一分鐘不能縮小這次調用。

默認先計算完整請求的輸入估計、最大輸出和 4096 token 餘量。單次可容納時保留歷史,僅滾動窗口餘額不足時排隊等待;單次預算放不下時,通過 DSH 原生壓縮服務生成摘要。主請求默認最大輸出爲 16384 token。可選固定提前壓縮閾值位於高級設置,默認 -1(僅按單次預算觸發插件壓縮)。

分段恢復由插件的自動請求恢復觸發;一次恢復默認最多連續壓縮 4 段。關閉插件的自動壓縮開關不會關閉 DSH 自身的壓縮策略或 /compact。

Web 設置界面

安裝後重啓 DSH 並刷新頁面,在 設置 → 提供方限流 選擇已配置的提供方,調整參數並點擊 保存並應用。新安裝默認不限制任何提供方;第一次保存會啓用所選提供方的共享額度。界面支持中英文,字段變更走 DSH 原生配置表單,保留密鑰和其他提供方設置。

限流參數保存後在線生效;不要同時啓用其他限流插件。

安裝與啓用

需要 Node.js 24.9+ 和兼容的 DSH 0.2.2(package.json 中 engines:dsh 爲 >=0.2.2-rc.1 <0.3.0)。

在 DSH 的「插件 → 添加插件」輸入倉庫 URL,或使用官方安裝命令:

dsh plugin --profile web add github:Fulisike/dsh-provider-quota#main

倉庫提交了包含運行依賴的 ESM 產物,安裝時無需構建,也不依賴嵌套的 node_modules 鏈接。Desktop 通過自己的插件管理器安裝;不要用普通 npm CLI 修改保留的 desktop profile。

從 2.0.x 升級時,重新執行安裝命令並重啓 DSH;原有額度、賬本和明確配置的提前壓縮閾值保留。既有配置若需預算驅動壓縮,將高級設置中的固定提前壓縮閾值改爲 -1。

常用參數

默認顯示三個共享額度、單次最大輸出、自動壓縮開關、無輸出等待時間和最多重試次數。

參數 默認值
滾動 60 秒請求數 10
滾動 60 秒 token 總數 300000
滾動 7 天 token 總數 1000000000
自動壓縮 開啓
主請求最大輸出 16384 token

高級設置示例:最短髮送間隔 7000 ms(-1 表示不額外間隔)、固定提前壓縮閾值 -1、一次恢復最多連續壓縮 4 段、單次額外餘量 4096 token、初始輸入估計係數 1.25、429 共享冷卻下限 60000 ms 等。高級配置仍可寫入 profile 的 cordis.patch.yml。

存儲位置

計數默認存放在 $DSH_HOME/storages/provider-quota(默認 home 爲 ~/.dsh),也可在 provider-quota.config.stateDirectory 配置絕對目錄。關閉插件不會刪除賬本;卸載會等待在途請求結算。

適用場景與注意

  • 適合:在同一臺或多進程 DSH 環境中,需要對某一提供方做統一 RPM/TPM/周額度控制,並希望在 Web 裏直接改參、在線生效的開發者。
  • 權限:插件以當前 DSH 進程權限運行,安裝前應閱讀 GitHub 倉庫 源碼與 MIT 許可證。
  • 侷限:本地賬本不能替代提供方側全侷限流;周額度不足時會停止並顯示最早釋放部分額度的時間。
  • 生態:DSH 理念是「一切皆插件」;Skillhub 等爲社區目錄,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-provider-quota 把提供方級的滾動限額、跨進程記賬和 Web 配置收攏到一處,並與 DSH 重試、壓縮鏈路分工明確。若你正在用 DSH 管理多模型提供方,可從目錄頁或 GitHub 安裝,在「設置 → 提供方限流」完成首次保存與調參。

  • 目錄頁:https://www.skillhub.cn/plugins/Fulisike/dsh-provider-quota
  • GitHub:https://github.com/Fulisike/dsh-provider-quota
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜