DeepSeek Harness 文獻檢索插件

前言

DeepSeek Harness (DSH) 採用插件化架構,支持通過插件擴展功能。在構建智能體或進行本地開發時,檢索文獻是常見需求。該插件旨在解決在 DSH 環境中調用不同文獻數據庫(PubMed 和 Google Scholar)時接口不統一、數據結構各異的問題。

插件介紹

該插件名爲 astervolans/dsh-literature-search,由 Astervolans 維護。它通過官方 PubMed NCBI E-utilities API 和 Google Scholar(支持 SerpApi 或 HTML 解析)進行檢索,並將兩者返回的結果統一爲標準的 paper 數據結構。插件僅依賴 Node.js 內置的 fetch 和 AbortSignal,無額外的運行時依賴。

安裝與啓用

通過 DSH 的插件管理器進行安裝。安裝完成後需要重啓 DSH 進程以加載新工具。

dsh plugin --profile desktop add @astervolans/dsh-literature-search

核心功能

插件提供了以下主要能力:

  1. PubMed 搜索
    • 支持 ESearch、ESummary、EFetch 和 ELink 流程。
    • 支持字段標記查詢、排序、日期窗口和分頁。
    • 返回 PMID、標題、作者、期刊、卷期頁、DOI、PMC ID、摘要、MeSH 和關鍵詞。
  2. PubMed 單篇論文
    • 獲取指定 PMCID 的完整記錄,包括摘要、MeSH、關鍵詞、出版類型和評論/參考文獻行。
  3. PubMed 相關文章
    • 使用 NCBI 的相關文章算法檢索並排序與給定論文相關的文章。
  4. Google Scholar 搜索
    • 支持年份窗口和分頁。
    • 支持通過 SerpApi 或 HTML 解析兩種後端。
  5. Google Scholar 引用
    • 生成 MLA、APA、Chicago、Harvard、Vancouver 和 BibTeX 格式的引用信息。
  6. 統一輸出
    • PubMed 和 Google Scholar 的搜索結果都返回統一的 paper 形狀。
  7. 零運行時依賴
    • 僅依賴 Node.js 內置 fetch 和 AbortSignal。

配置與使用

插件支持在 DSH 的插件配置頁面進行設置。在側邊欄的「插件」面板中,展開 @astervolans/dsh-literature-search,頂部即爲配置頁面。配置項包括 NCBI 和 SerpApi 的 API 密鑰、速率限制、結果限制以及連通性測試。

典型用法示例:

# 搜索 PubMed
node cli.mjs pubmed "CRISPR base editing" --max 3

# 獲取單篇論文詳情
node cli.mjs paper 33301246

# 搜索 Google Scholar
node cli.mjs scholar "base editing" --max 5

注意事項

  1. Google Scholar 後端
    • 默認使用 HTML 解析。由於 Google 的反爬機制,該方式可能會被封禁。建議配置 SERPAPI_API_KEY 以使用 SerpApi 後端,以獲得穩定的結果和引用格式。
  2. PubMed 速率限制
    • PubMed 官方 API 默認有速率限制。在未設置 NCBI_API_KEY 的情況下,插件會自動限速(每請求間隔 350ms)。配置 NCBI_API_KEY 可將配額從 3 提升至 10 請求/秒。
  3. SerpApi 依賴
    • 若要獲取穩定的 Google Scholar 搜索結果以及引用格式,必須配置 SERPAPI_API_KEY。

參考資料

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

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

小夜