dsh-bioinf:DeepSeek Harness 生物信息學技能路由插件

前言

在 DeepSeek Harness(DSH)的插件開發中,直接將龐大的技能庫(例如 986 個生物技能)打包成扁平的會話目錄(約 230KB,60k-80k tokens)會導致性能下降。dsh-bioinf 作爲一個插件,旨在解決這個問題:它用基於搜索的路由機制替代靜態目錄,並提供遠程執行與場景化引導。

功能概覽

該插件提供了以下核心能力:

  1. skill_search 工具
    實現了 BM25 風格的評分算法(權重:名稱 ×6,類別 ×2,whenToUse ×1.5,描述 ×1),支持 CJK 雙字支持。查詢整個庫的時間小於 10 毫秒,返回匹配的技能名稱與類別。

  2. skill_categories 工具
    提供類別樹結構,包含 15 個頂級分類及其子分類和技能數量,支持用戶按領域瀏覽。

  3. bioinf-library 技能提供者
    將 986 個生物技能註冊到 ctx.skills 中,使原生 skill 工具能夠按需加載技能內容。技能名稱標準化爲 kebab-case,並過濾了 HTML 產地註釋,保證描述的完整性。

  4. dsh-bioinf-anysearch
    註冊一個 WebSearchProvider 到 ctx.web,爲原生 web_search 工具提供支持。該組件獨立存在,因爲無頭配置文件不掛載 web 接口。

  5. remote_exec 工具(可選)
    支持在配置的 GPU/訓練服務器上執行 SSH 操作,包括 nvidia-smi 查看狀態、使用 nohup 啓動訓練、日誌輪詢和預測任務。僅在 remote.host 和 remote.user 配置項存在時生效。

  6. Guidance 提示部分
    提供路由規則(例如“絕不猜測技能名稱”)以及三種場景劇本:A. 文獻深度審閱(生成可證僞假設),B. 生物數據檢索/分析,C. 遠程訓練/預測。

安裝與啓用

該插件作爲 Cordis patch 插件工作,目前未提供單一的 npm/pnpm install 命令。啓用過程需要手動編輯配置文件並構建庫文件。

  1. 配置工具技能
    確保在 @deepseek-ai/dsh-tool-skill 的配置中關閉 catalog:
    config:
      catalog: off
  1. 編輯 cordis.patch.yml
    在 cordis.patch.yml 中插入 bioinf 和 bioinf-anysearch 插件:
    - insert:
        - id: bioinf
          name: 'file:///D:/projs/bioinf_agent/deepseek-harness/packages/examples/dsh-bioinf/lib/index.js'
          config:
            skillsIndexFile: 'D:/projs/bioinf_agent/skills_meta/_dsh_index.json'
        - id: bioinf-anysearch
          name: 'file:///D:/projs/bioinf_agent/deepseek-harness/packages/examples/dsh-bioinf/lib/anysearch-plugin.js'
          config:
            apiKey: '...'
  1. 構建庫文件
    在項目根目錄下運行構建命令以生成 lib/ 目錄:
    pnpm run build:lib:host

索引格式

skillsIndexFile 必須指向一個有效的 JSON 數組。索引文件定義了技能的元數據,示例格式如下:

[
  {
    "name": "scanpy",
    "dir": "scanpy",
    "cat1": "細胞組學與組學整合場景",
    "cat2": "單細胞與轉錄組分析",
    "cat3": "scanpy",
    "description": "...",
    "whenToUse": "...",
    "requirements": ["pip install scanpy"],
    "hasScripts": false,
    "nScripts": 0,
    "bodyChars": 1234,
    "path": "D:/.../scanpy/SKILL.md"
  }
]

注意事項

  1. Catalog 依賴:必須確保 tool-skill 的配置中 catalog: off 已開啓。
  2. 遠程執行條件:remote_exec 工具僅在配置了 remote.host 和 remote.user 時可用。
  3. 文件格式:skillsIndexFile 指向的文件必須是有效的 JSON 數組,否則插件可能無法正常工作。
  4. 測試環境:運行單元測試需要安裝 vitest,測試文件位於 packages/examples/dsh-bioinf/tests/。

結語

dsh-bioinf 通過搜索路由和按需加載機制,解決了生物信息學場景下大型技能庫的維護難題。結合遠程執行工具,它能夠支持從文獻分析到服務器訓練的全流程自動化。

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

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

小夜