dsh-llm-retry-settings: LLM 自動重試與續寫配置插件

前言

DeepSeek Harness (DSH) 的插件系統允許開發者擴展核心行爲。dsh-llm-retry-settings 是一個插件,它提供了一個設置卡片,允許用戶直接在 DSH 的“設置 -> 通用”界面中調整 LLM 自動重試策略(包括重試次數、退避時間和抖動)以及處理輸出截斷後的自動續寫。它通過覆蓋 agent/request-error 重試策略來實現這些控制。

核心功能

該插件在設置界面提供了一個卡片,用於配置重試和續寫行爲。

  • 設置界面集成:插件通過 client bundle lib/client.js 注入 UI,在 DSH 的“設置 -> 通用”中顯示“LLM 自動重試”卡片。
  • 重試參數覆蓋:開啓覆蓋後,可以調整 maxRetries(最大重試次數)、initialDelayMs(初始延遲)、maxDelayMs(最大延遲)和 jitterRatio(抖動比率)。
  • 錯誤碼管理:支持從已知錯誤碼列表中選擇,或直接在“自定義”組中輸入新的錯誤碼(需符合 A-Z 0-9 _ - . 格式),這些代碼會被合併到各提供商的重試列表中。
  • 輸出截斷自動續寫:兼容內核 0.1.7-alpha.1,當回覆被輸出 token 上限截斷時,可自動觸發續寫(默認關閉)。
  • 細粒度覆蓋:支持按提供商和模型進行單獨的策略覆蓋,優先匹配規則,支持 * 通配符。
  • 觀測面板:卡片底部包含一個只讀面板,實時顯示重試失敗的統計、自動續寫的記錄以及達到上限的輪次。
  • 內核兼容:兼容 DSH 新內核 0.1.7-alpha.1。

安裝與啓用

安裝前請確保已擁有一個 DSH Desktop 配置文件(Web 配置文件位於 ~/.dsh/profiles/web)。

使用 dsh plugin 命令安裝:

dsh plugin --profile web add github:zeng6125-rgb/dsh-llm-retry-settings

安裝完成後,需要在配置文件中註冊該插件。在對應的 dsh.profile.bundles 配置項中添加 "dsh-llm-retry-settings",然後重啓 DSH。

典型用法

  1. 打開 DSH 的 設置 -> 通用。
  2. 找到 LLM 自動重試 卡片。
  3. 切換 開啓覆蓋 開關以應用該策略。
  4. 設置 maxRetries、initialDelayMs 等參數,並在錯誤碼列表中選擇或添加特定錯誤碼。
  5. (可選)開啓 輸出截斷自動續寫 並設置 maxContinuations 上限。如需自定義續寫提示詞,可在 續寫提示詞 中輸入,留空則使用內置提示詞。

適用場景與注意

該插件適合需要對 LLM 調用的重試策略進行精細化控制,或者需要處理因輸出 token 上限導致回答中斷的場景。

  • 默認行爲:默認情況下 enabled: false,插件處於完全旁路狀態,不會修改任何默認行爲,直到手動開啓覆蓋。
  • 命令區分:請使用 dsh plugin(DSH CLI 的子命令),而不是 dsh-plugin。
  • 源碼審查:安裝插件前,建議檢查源代碼與許可證。

短結尾

這個插件通過將重試策略配置下沉到設置界面,讓開發者能夠更直觀地管理 LLM 調用的容錯機制。詳細的配置項與目錄頁信息請參考 GitHub 倉庫。

羽毛球分组比赛记分
小程序二维码

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

小夜