dsh-reasoning-translate-zh:在顯示層把 reasoning 譯成中文

前言

在 DeepSeek Harness(DSH)裏跑帶 reasoning 的模型時,思考過程往往是英文長文本。摺疊一行、展開一段,若全程讀英文,會拖慢排查 agent 行爲的速度。社區裏常見做法是往 system prompt 裏注入「請用中文思考」,模型輸出會變,且不一定每個模型都聽話。

下面介紹的是客戶端插件 dsh-reasoning-translate-zh(包名 / 插件 id 爲 dsh-think-zh):不改會話、不改 Trajectory、不改導出文件裏的推理原文,只在界面把 reasoning 實時譯成中文;摺疊時給中文摘要,展開後是中文正文,並可展開查看英文原文。維護者爲 GitHub 用戶 2503455457-max,分類爲客戶端插件。

這是什麼

一句話定位:顯示層翻譯,不是行爲層改模型。

提示詞注入類同類插件 本插件
模型行爲 被提示詞改變 不變
依賴 模型需服從指令 任意模型均可
成本 通常無額外翻譯調用 需翻譯調用(可全本地 Ollama)
原文 往往只有中文 中文 + 可展開英文

會話事件與導出裏的 reasoning 文本一個字節都不改;翻譯結果只存在於渲染層與插件緩存。

核心功能

界面效果

  • 思考行摺疊:顯示中文摘要(取自譯文最新段落)。
  • 展開:顯示中文正文;正文下方有「展開英文原文(N 字符)」,點開才見模型原始英文。

工作機制(概要)

DSH 流式推送 reasoning-delta 後,客戶端通過插槽 conversation.chat.node(assistant-step,priority=-1)掛載影子渲染器 dsh-think-zh:把 reasoning 塊的展示文本換成緩存譯文,並在內置渲染之上繪製中文行與可摺疊英文。翻譯請求走宿主半區 POST /dsh-think-zh/translate。

設計約束(README 原文要點):

  1. 不改會話狀態 — 不寫回 session event,避免篡改模型下一輪上下文。
  2. 整句緩存 — 句子結束後鍵不變,只爲新句與未完成半句發起翻譯,減少重複計費。
  3. 失敗回退 — 只接管 reasoning 塊;渲染異常時棄用影子條目,回退內置渲染。

按需翻譯(省算力)

  • 摺疊:只翻第一句作摘要。
  • 展開某一行:才翻譯該行全文(約 1–2 秒後補上)。
  • 採用整句緩存、單飛與熔斷,避免本地模型被流式請求打滿。

翻譯引擎

可在三種引擎間切換(配置與「思」面板):

引擎 說明
dsh 複用 DSH 已配置模型(默認;會產生賬戶額度消耗)
ollama http://127.0.0.1:11434,可完全本地、零費用
openai-compatible 任意 OpenAI 兼容 /chat/completions 端點

README 實測:本地推薦 Ollama qwen2.5:1.5b(延遲與漏譯表現優於多種本機模型);不建議用 Qwen3.6 / Qwen3.8 作本插件翻譯引擎(延遲過高)。

與 DSH 0.2.1 自帶 dsh-experimental-cot-translation-bundle 等相比:本插件在摺疊態也顯示中文摘要,且強調可全本地 Ollama 與摘要優先、展開才翻全文的請求策略。

安裝與啓用

插件以 DSH 進程權限運行;安裝前建議自行查看倉庫源碼與 MIT 許可證。DSH 對客戶端插件容錯爲「全有或全無」:任一 bundle 加載異常可能導致應用無法啓動並進入恢復模式、重寫 profile 配置;README 明確說明無法承諾零風險,並記錄於 CRASH-RECORD.md。

從 GitHub 安裝(推薦)

桌面端安裝前完全退出 DSH 應用(Electron profile 獨佔);裝完需重新打開應用,僅刷新頁面不夠。

dsh plugin --profile desktop add git+https://github.com/2503455457-max/dsh-reasoning-translate-zh.git

Web 環境將 desktop 換爲 web:

dsh plugin --profile web add git+https://github.com/2503455457-max/dsh-reasoning-translate-zh.git

package.json 聲明 DSH 兼容範圍:>=0.2.1-rc.2 <0.3.0。README 寫明已在 DSH 0.2.1-rc.3 / rc.5(macOS 桌面端)驗證渲染、翻譯與面板;大版本升級後插槽與 renderSlot 契約可能變化,需重新驗證。

本地源碼(開發 / 調試)

cd dsh-think-zh
node scripts/build-client.mjs
bash scripts/install-desktop.sh

亦支持 dsh plugin add file:<路徑> 與 git+https 寫入 profile。

配置與典型用法

首次運行寫入 $DSH_HOME/dsh-think-zh/config.json(默認 ~/.dsh/dsh-think-zh/config.json)。示例結構如下(字段含義以 README 爲準):

{
  "enabled": true,
  "engine": "dsh",
  "showOriginal": true,
  "defaultOpenOriginal": false,
  "minChars": 40,
  "glossary": [],
  "engines": {
    "dsh": { "provider": "deepseek-account", "model": "deepseek-flash", "reasoningEffort": "off", "maxTokens": 1024, "temperature": 0 },
    "ollama": { "baseURL": "http://127.0.0.1:11434", "model": "qwen3.8:latest", "keepAlive": "30m", "timeoutMs": 120000 },
    "openai-compatible": { "baseURL": "", "model": "", "apiKey": "", "displayName": "OpenAI-compatible", "timeoutMs": 60000 }
  }
}

常用字段:enabled 總開關;engine 選擇引擎;showOriginal / defaultOpenOriginal 控制英文原文入口;minChars 短於該長度不翻譯;engines.dsh 的 provider/model 留空時回退當前 agent 默認模型。

首次使用建議:

  1. 默認 engine 爲 dsh,會用已選模型翻譯並可能計費。
  2. 若要零成本且內容不出本機:安裝 Ollama,執行 ollama pull qwen2.5:1.5b,在界面右上角 「思」 面板將引擎切爲 Ollama 本地。
  3. 面板可測連通性;改動即時寫回 config.json。

不裝插件也可壓測翻譯引擎(宿主需已運行並暴露接口):

node scripts/bench-engine.mjs --url http://127.0.0.1:19399 --runs 3

修改 config.json 中 engine 與 engines.<engine> 後,可 POST /dsh-think-zh/config 重建引擎,或在「思」面板切換。

適用場景與注意

適合:

  • 需要讀中文 reasoning,但希望模型仍按原方式(多爲英文)推理,且保留可覈對英文原文。
  • 希望翻譯走本機 Ollama,避免推理片段出網(相對雲端翻譯方案)。
  • 接受「摺疊只看摘要、展開才翻全文」的延遲與算力 trade-off。

注意:

  • 只翻譯你實際查看的內容;未展開的行不會預先翻全文。
  • 依賴 DSH 內部插槽與渲染契約,升級 DSH 後需對照 README「兼容性」重新驗證。
  • 若僅需「展開後再看中文」、且想用官方默認 Bing/Google 方案,官方 experimental 插件可能更省事;本插件差異在本地引擎與摺疊中文摘要。

結尾

dsh-reasoning-translate-zh(dsh-think-zh)把 reasoning 的閱讀體驗搬到中文顯示層,不注入提示詞、不改模型行爲;引擎可從 DSH 賬戶模型切到本地 Ollama。社區插件目錄與 DeepSeek / 幻方無官方從屬關係,安裝與配置以倉庫 README 爲準。

  • 目錄頁:https://www.skillhub.cn/plugins/2503455457-max/dsh-reasoning-translate-zh
  • GitHub:https://github.com/2503455457-max/dsh-reasoning-translate-zh
羽毛球分组比赛记分
小程序二维码

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

小夜