前言¶
DeepSeek Harness(DSH)把提示詞、工具、預設乃至智能體循環都做成可替換的插件。改完一條 house rule、換一版 prompt 之後,常見做法是憑手感試幾句,或者依賴 undo / rollback 在改壞時再撤。官方敘事裏缺的一環是:先提出改動,再用 Eval 衡量它是否真的更好。
dsh-touchstone(試金石)就是填這個空:用同一套金標準用例,把「當前配置」和「候選改動」並排跑一遍,規則檢查加可選 LLM 裁判打分,給出 before→after 報告。好就留,不好就撤;最終是否採納仍由你決定。
插件由 Hwayn-pixel 維護,MIT 許可,分類爲工作流;在 DSH 桌面端與 Web 均可使用。社區目錄頁:https://www.skillhub.cn/plugins/Hwayn-pixel/dsh-touchstone ,源碼:https://github.com/Hwayn-pixel/dsh-touchstone 。
這是什麼¶
試金石是掛在 DSH 上的評測插件:不 patch harness,只走公開的 ctx.llm.stream() 接口,不依賴內部服務,因此在 DSH 0.1.x(Web)與 0.2(桌面)上都能跑。
一次運行會產出類似下面的對賬表:
case current candidate change
lead-with-answer 0% 100% +100%
並給出基於證據的結論:Better, keep it. / Regressed, revert. / No real difference. 分數只代表你配置的那些用例,不是全局真理。
四個核心概念¶
| 概念 | 含義 |
|---|---|
| Case(用例) | 一條發給智能體的 prompt,加上若干檢查項 |
| Check(檢查) | 對輸出的斷言:必須包含、不得包含、正則、或 LLM judge |
| Candidate(候選) | 想試的 prompt 片段,append 疊在當前之上,或 replace 替換;對照組是內置的 current(無改動) |
| Report(報告) | 候選均分減基線均分,逐用例 delta 加總評 |
檢查項可設 weight(默認 1),得分爲加權通過率。文檔建議:優先用規則檢查;LLM judge 多一次模型調用,也有偏差。
安裝與啓用¶
按使用環境選 profile 安裝(命令來自官方 README):
dsh plugin --profile desktop add dsh-touchstone # desktop app
dsh plugin --profile web add dsh-touchstone # web UI
安裝後重啓 DSH。
在設置裏打開:桌面端左下角賬戶菜單 → 設置(或 Ctrl + ,),左側點 試金石。字段在失焦時自動保存(輸入後點別處或 Tab)。
在 DSH 設置中爲 dsh-touchstone 配置運行用的 provider / model / temperature / maxOutput;可選單獨配置裁判模型 judgeProvider / judgeModel(留空則與運行模型相同)。
用例、候選與最近 40 次運行記錄在 $DSH_HOME/touchstone/bench.json(DSH_HOME 默認爲 ~/.dsh)。刪除該文件可重置,會自動重建。
典型用法(約 5 分鐘)¶
- 在「金標準用例」下點 + 加一條用例:填 name、prompt(你會發給智能體的話),再 + 加一條檢查項,例如選 必須包含 並寫上期望出現的詞。
- 在「候選方案」下點 + 加一個候選:填 name、prompt(想試的規則或前綴),mode 選
append或replace。 - 在候選旁點 跑一遍 (Run),到 對賬 (Report) 查看逐用例分數與總評。
可復現示例(來自 README):
| 字段 | 值 |
|---|---|
| case · name | opening format |
| case · prompt | Introduce artificial intelligence in one sentence. |
| case · check | must contain → 筆記: |
| candidate · name | prefix marker |
| candidate · prompt | Every answer must begin with exactly 「筆記:」, then continue normally. |
| candidate · mode | append |
跑完後可能看到:opening format 從 current 0% 到 candidate 100%,總評 Better, keep it. 說明的是:在當前配置下指令未生效,在候選下生效——而不是「我覺得可以」。
一次運行內部在做什麼¶
- 對所有 已啓用 用例 × 你勾選的候選(外加始終參與的 current)各構造一次模型調用:
system爲候選 prompt,messages爲用例 prompt,經ctx.llm.stream()取文本與 usage。 - 規則檢查在進程內執行;LLM judge 再各多一次模型調用。
- 寫入本次 run 並返回報告。
插件只讀配置、只調模型,不讀寫你的工作區文件。
適用場景與限制¶
適合:改 prompt、house rule、預設措辭等「同一輸入下輸出是否更符合預期」的文本層驗證。
不適合:需要真實副作用的工具實現變更——這裏不會跑完整 agent loop,也給不出工具鏈是否仍正確的證據。
成本:每個用例 × 每個候選一次模型調用;檢查項若含 LLM judge 再加調用。用例少、輸出短時較快較省;可從一兩條例開始。
候選對比:每個候選都與 current 比;若要兩個候選互比,可在相同用例與基線下並排看兩份報告。
插件以當前 DSH 進程的權限運行;安裝前建議瀏覽源碼與 MIT 許可證,確認行爲符合預期。SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-touchstone 把 DSH 自進化裏缺的那半環——評測——做成薄而可複用的工作流:金標準用例、候選並排、規則優先打分、證據化留撤。改 prompt 或規則前先跑一遍,比純手感或事後 rollback 更省時間。
- 目錄頁:https://www.skillhub.cn/plugins/Hwayn-pixel/dsh-touchstone
- GitHub:https://github.com/Hwayn-pixel/dsh-touchstone