前言¶
DeepSeek Harness(DSH)採用插件化架構,允許開發者擴展其功能。在開發智能體或多併發場景下,頻繁調用 LLM 接口容易觸發 API 速率限制,或導致資源過度佔用。dsh-llm-rate-limiter 作爲一個插件,旨在爲每個模型提供獨立的調用頻率控制,解決這一問題。
插件簡介¶
這是一個針對 DeepSeek Harness 的 LLM 調用限速插件。它由開發者 Leafyezi233 維護,遵循 MIT 許可證。插件支持按模型配置併發數、RPM(每分鐘請求數)和突發流量限制,並提供隊列或拒絕兩種處理策略,同時內置交互式 GUI 配置面板和實時狀態監控。
核心功能¶
- 按模型獨立限流:可以爲不同的
provider/model組合設置獨立的併發上限、RPM 和突發大小。 - 雙算法支持:提供令牌桶算法(允許突發)和滑動窗口算法(平滑且嚴格限制 RPM)。
- 隊列與拒絕模式:當觸發限流時,請求可選擇在隊列中等待,或直接被拒絕(可配合重試插件實現退避)。
- 交互式 GUI 配置:在 DSH 的設置界面中,可以直接展開“LLM 調用限速”卡片進行配置,無需編輯文件。
- 實時狀態面板:展示實時計數器、進度條和事件日誌,監控限流運行狀況。
- 熱重載:修改配置後無需重啓 DSH 進程,設置即時生效。
- 全鏈路攔截:攔截所有智能體回合中的
llm/stream調用。
安裝與啓用¶
安裝插件需要 DeepSeek Harness 的命令行工具。
- 在終端執行以下命令添加插件:
dsh plugin add <your-profile> @leaf233/dsh-llm-rate-limiter
其中 `<your-profile>` 替換爲你的配置文件目錄名稱。
- 確保插件已添加到 profile 的
package.json依賴中,插件會自動識別cordis.patch.yml入口。
典型用法¶
配置方式分爲通過圖形界面和編輯配置文件兩種。
通過 GUI 配置¶
- 啓動 Web 界面:
dsh web。 - 進入 Settings → Plugins。
- 在 Official 分組中找到 LLM 調用限速 卡片。
- 點擊展開,在表單中配置默認策略、模型特定覆蓋規則以及限流行爲。
通過文件配置¶
編輯 profile 目錄下的 cordis.patch.yml 或 settings.yaml,在頂層定義 llm-rate-limiter 策略。示例如下:
llm-rate-limiter:
enabled: true
strategy: token-bucket # 算法選擇:token-bucket 或 sliding-window
defaults:
maxConcurrent: 5 # 默認最大併發數
maxRpm: 60 # 默認每分鐘請求數
burstSize: 10 # 令牌桶容量(僅 token-bucket)
refillRate: 1 # 令牌每秒補充數(僅 token-bucket)
models:
"deepseek/deepseek-chat":
maxConcurrent: 8
maxRpm: 120
"openai/gpt-4o":
maxConcurrent: 2
maxRpm: 10
burstSize: 3
onThrottled: queue # 觸發限流時的行爲:queue(排隊)或 reject(拒絕)
maxQueueWaitMs: 60000 # 最大排隊等待時間(毫秒)
注意事項與適用場景¶
- 版本依賴:當前版本(v0.3.0)要求 DSH 版本不低於
0.1.7-rc.1。如果在舊版本上使用,請鎖定@leaf233/dsh-llm-rate-limiter@0.2.x。 - 依賴檢查:如果框架的
connection.requestRejection不可用,插件將拒絕掛載,而不是發佈未認證的路由。 - Git 安裝限制:通過 GitHub URL 安裝時,可能會因 pnpm 的
allowBuilds限制報錯。此時需要在 profile 根目錄的pnpm-workspace.yaml中添加該插件名稱,然後重新運行安裝命令。 - 生態定位:這是社區插件,與 DeepSeek / 幻方無官方從屬關係,請自行審查源碼與許可證。
總結¶
dsh-llm-rate-limiter 提供了一套從算法選擇到實時監控的完整解決方案,適合需要在 DSH 環境下精細化控制 LLM 調用頻率的開發者。通過其 GUI 面板,可以直觀地調整策略和觀察運行狀態,降低開發調試成本。
插件主頁:https://github.com/Leafyezi233/dsh-llm-rate-limiter
社區目錄:https://www.skillhub.cn/plugins/Leafyezi233/dsh-llm-rate-limiter