dsh-repeat-guard:流式輸出退化攔截與工具調用強制

前言

在長上下文場景下,部分模型(尤其是 deepseek v4.1 flash)容易進入“思考退化”狀態。模型在輸出思考內容時反覆循環短句,這種“唱歌”行爲會以高速度消耗大量 token,卻不產生有效信息。此外,模型在明確需要調用工具時,仍會輸出冗餘短句再進入其他思考分支。這會導致上下文迅速膨脹,且用戶往往只在思考過程閃過時才能察覺。

這是什麼

dsh-repeat-guard 是一款用於模型推理的插件,由 xiaozhuyuqing 維護。它檢測模型思考過程中的碎片復讀,通過攔截白名單短句並中斷輸出,強制模型直接進入下一步,從而恢復正常的 agent-loop。

核心能力

該插件具備以下能力:

  • 碎片檢測:檢測模型思考過程中的碎片復讀。
  • 白名單攔截:攔截白名單短句並中斷輸出。
  • 強制執行:截斷後顯示提示,強制模型直接進入下一步,不再輸出確認語或寒暄。
  • Loop 恢復:通過注入提示詞恢復 agent-loop。
  • 增量檢查:逐 chunk 檢查 reasoning-delta。

安裝與版本要求

安裝插件需要執行以下命令:

dsh plugin --profile web add dsh-repeat-guard

需要注意版本兼容性。插件要求 DSH 0.1.7 及以上版本。
* 0.1.7 起:宿主會在裝載前校驗插件的 peer 聲明,配置表單也換成了 entry Config 模型,舊寫法不再工作。
* 0.1.0-rc.8 ~ 0.1.6:請安裝 0.1.5 版本。

插件用到的宿主接口在 0.2.0 上沒有變化,因此 0.2.2 起 peer 範圍不再設上限。

典型用法與表現

當模型輸出循環句(如 Let me do it.)或碎片復讀(如 好。做。開始。做。)時,輸出會被截斷。

截斷後會顯示提示:

你上一段思考退化成了碎片復讀(反覆輸出'好。'一類的空話),已被系統截斷。
請直接繼續執行下一步,不要再輸出任何確認語、寒暄或空話。

隨後模型會直接繼續執行下一步,不再進行無效的復讀。

配置與注意事項

在 設置 → 復讀打斷 裏查看配置,保存後生效,無需重啓。

主要配置項包括:

  • 累計攔截:記錄掐斷次數,有清零按鈕。
  • 攔截短句:觸發打斷的白名單,需要加上標點。
  • 連續命中次數:連續命中的閾值,默認配置連一個短句後的分支思考過程也會攔下。
  • 行內重複檢測:打開後檢測擠在一行裏的重複(此選項是爲 qwen 35B 等模型準備的,deepseek 不存在該問題)。
  • 續跑指令:截斷後推給模型的提示詞。
  • 摺疊行摘要:注入段用戶可見的簡要信息。

注意:截斷過程可能較多,這是爲了恢復 agent-loop 所付出的代價。

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

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

小夜