前言¶
在 DSH 的插件化開發場景裏,模型需要調用外部工具時,通常會先考慮工具依賴是否輕、運行是否需要網絡或額外軟件。Blaczz/dsh-sci 面向這類需求,把物理單位換算、CODATA 物理常數查詢和 ODE/動力系統模擬做成三個可直接註冊的工具。它不修改 DSH 核心,也不引入運行時依賴。
這是什麼¶
Blaczz/dsh-sci 是 Blaczz 維護的獨立社區插件,許可證爲 MIT © 2026 Blaczz,不與 DeepSeek Harness 有從屬關係。它解決的是在 DSH 中輕量完成科學計算工具調用的問題:單位換算、常數查詢、固定模型 ODE 模擬。
核心功能¶
物理單位換算¶
提供 70 餘個單位之間的換算,覆蓋 length、mass、time、temperature、energy、pressure、frequency、force、angle、volume、area、electric 等維度。
CODATA 物理常數查詢¶
支持查詢 CODATA 物理常數,包括 c、h、e、k、G、N_A 等。
ODE / 動力系統模擬¶
使用四階 Runge–Kutta 方法,對 9 個預置模型做 ODE/動力系統模擬。
安裝與啓用¶
先確認環境滿足前置條件:DSH 可用,且 dsh web 可以運行;Node ≥ 22.19;pnpm。
然後執行下面的 GitHub 安裝命令:
dsh plugin --profile web add "github:Blaczz/dsh-sci#main"
安裝完成後,重啓 dsh web,讓插件註冊生效。
典型用法¶
下面按插件說明中的示例介紹三類工具。
單位換算¶
將 1 eV 換算爲焦耳:
units_convert(value=1, from="eV", to="J") → 1.602176634e-19
查詢物理常數¶
返回 c、h、e、k、G、N_A 等常數:
physical_constants() → c, h, e, k, G, N_A, … all
調用預置 ODE 模型¶
以 lotka-volterra 模型爲例:
ode_solve(model="lotka-volterra", params={...}, tEnd=50) → returns the time series + final state [prey, predator]
實現特點¶
- 零依賴:純函數實現,無運行時
node_modules,不訪問網絡,不依賴外部軟件。 - 無核心修改:通過
ctx.tools.register註冊工具,不包含 client bundle。 - 可選 peer 依賴:
@deepseek-ai/cordis >=4.0.1-rc.1 <5.0.0、@deepseek-ai/dsh-tools >=0.1.0-rc.3 <0.2.0。
適用場景與注意¶
適合需要在 DSH 對話或智能體流程中調用物理單位換算、CODATA 常數查詢和固定 ODE 模型模擬的使用者。由於插件以當前 dsh 進程權限運行,安裝前應檢查源碼、依賴聲明和許可證;如果環境中提供上述可選 peer 依賴,也需確認版本範圍與當前 DSH 配置兼容。
鏈接¶
- 社區目錄:https://www.skillhub.cn/plugins/Blaczz/dsh-sci
- GitHub:https://github.com/Blaczz/dsh-sci