dsh-plugin-verdict-guard:防止无据的结论

前言

在智能体开发中,最昂贵的错误往往不是错误的修复,而是错误的“关闭性结论”。一句“不工作”、“没有 bug”或“无法复现”的结论,如果缺乏证据,不会留下任何痕迹,导致问题方向被悄然关闭。相反,一句错误的“它工作”可以通过后续运行被捕捉到。

dsh-plugin-verdict-guard 插件通过机械化的方式解决这种不对称性:在智能体回合的停止边界,检查模型即将关闭的结论是否包含可验证的证据。如果结论是判决(verdict)但缺少证据,该回合将被拦截并引导模型补充证据。

插件简介

dsh-plugin-verdict-guard 是 DeepSeek Harness (DSH) 的原生插件,用于拦截并引导那些仅陈述结论而无证据支持的回合。

  • 维护者:sagetta1
  • 许可证:MIT
  • 类别:模型推理
  • 核心价值:确保模型在关闭一个方向之前,必须提供可供验证的证据(如工具执行结果),防止静默的误判。

核心功能

  1. 拦截无据结论:当模型试图结束回合并给出判决性结论(如“不工作”),但未提供任何可检查的内容时,该回合会被拦截。
  2. 验证工具结果:插件不仅检查模型的文本输出,还会检查会话日志中的实际工具调用结果(如 bash、grep、read 等)。如果模型声称某事为真,但实际未运行任何验证工具,该结论将被视为无效。
  3. 区分路径与证据:插件会区分“文件路径”(可能仅是回忆)和“命令转述”(如 fenced block、测试结果、HTTP 状态码)。前者不足以触发严格的拦截,后者则可以。
  4. 限制干预频率:默认情况下,插件每回合仅拦截一次。这是一种“减速带”而非“死锁”机制,防止无限循环,同时限制单次会话的总干预次数。

安装与配置

插件通过 DSH 的插件管理器安装。

安装

dsh plugin add dsh-plugin-verdict-guard

验证安装

安装后,检查插件是否正确合并到配置树中:

dsh --profile headless --dump-config | grep -A 3 verdict-guard

配置

插件支持通过 cordis.patch.yml 进行配置。以下是默认配置与常见修改示例:

- id: verdict-guard
  config:
    locale: en
    requireToolEvidence: false
    maxInterventionsPerTurn: 2

配置项说明

配置项 默认值 说明
locale both 参与判决词汇表的语言选项,支持 en、ru 或 both
requireToolEvidence true 判决是否需要验证性工具结果(如 bash/read/grep),而不仅仅是任何工具结果
maxInterventionsPerTurn 1 单回合允许的最大拦截次数
maxInterventionsPerSession 6 单会话允许的最大拦截次数
verbose false 是否在调试级别记录所有通过/拦截决策

工作原理

插件监听 DSH 的 agent/turn-stopping 事件。在回合停止边界,它会执行以下步骤:
1. 读取模型即将输出的关闭性文本。
2. 读取回合中实际发生的工具调用与工具结果(会话日志)。
3. 判定文本中是否包含判决性词汇,且是否有对应的证据。
4. 如果没有证据,调用 agent.steer(reason) 强制模型重新观察输入并运行下一步,直到回合结束或证据出现。

重要提示:DSH 目前在循环控制上存在 TODO(stop-loop-guard),因此监听器必须自行限制干预次数(通过 maxInterventionsPerTurn),否则可能导致无限循环。

注意事项与兼容性

  • 不验证真伪:插件只检查是否存在可供检查的证据,不验证结论本身是否为真(不充当 Oracle)。
  • 工具依赖:插件要求使用验证性工具(如 bash、read、grep)来生成证据,单纯写入文件通常不被视为检查。
  • 版本兼容性:该插件构建并测试基于 0.1.0-rc.8。
    • ⚠️ DSH 自身子包的 latest 标签已过期,请使用 @next 标签或显式指定 ^0.1.0-rc.8 范围,以避免混合不兼容的版本。
  • 权限与来源:安装前请检查源码与许可证。

总结

dsh-plugin-verdict-guard 通过在回合停止边界引入证据检查机制,有效遏制了静默的误判。它不替代人工审核,而是作为一道自动化的“减速带”,迫使模型在关闭问题方向前提供可追溯的验证过程。

目录页:dsh-plugin-verdict-guard - SkillHub
源码仓库:GitHub - sagetta1/dsh-verdict-guard

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

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

小夜