dsh-web-tinyfish:TinyFish 搜索與抓取提供者

DeepSeek Harness (DSH) 通過插件機制支持 web_search 和 web_fetch 工具。DSH 默認內置了 deepseek-official 搜索提供者和 http 抓取提供者,但本地抓取器在處理 JavaScript 渲染、PDF 解碼及複雜機器人防護時存在侷限。dsh-web-tinyfish 插件爲 DSH 引入了 TinyFish 作爲替代方案,解決了上述痛點。

插件簡介

此插件爲 DSH 提供了 TinyFish 搜索和抓取提供者,用於支撐內置的 web_search 和 web_fetch 工具。

  • 名稱:dsh-web-tinyfish
  • 倉庫:https://github.com/HateYouLittle/dsh-web-tinyfish
  • 作者:HateYouLittle
  • 類別:聯網工具
  • 許可證:MIT

安裝與配置

安裝此插件需要 DSH 運行環境以及一個有效的 TinyFish API 密鑰。

  1. 安裝插件
    使用官方命令安裝:
    dsh plugin --profile <profile> add dsh-web-tinyfish
安裝後,插件會註冊 `tinyfish` 提供者 ID。
  1. 配置 API 密鑰
    插件本身不內置 API 密鑰,必須在環境變量或配置中提供。如果未配置,提供者將報告爲不可用。

    • 環境變量:設置 TINYFISH_API_KEY。
    • 配置文件:在私有配置覆蓋中設置 apiKey 字段。

核心能力

使用 TinyFish 提供者可獲得以下能力:

  • 搜索支持:通過 ctx.web.search() 調用,提供標題、片段和發佈日期。
  • 抓取支持:通過 ctx.web.fetch() 調用,支持 JavaScript 渲染,可抓取 SPA 類網站內容。
  • PDF 文本提取:可解析和提取 PDF 文本內容,本地抓取器無法完成此操作。
  • 機器人防護處理:將機器人防護挑戰顯式標記爲 bot_blocked 錯誤,而非返回挑戰頁面正文。
  • 輸出格式:生成乾淨的 Markdown、HTML 或 JSON 輸出,而非原始 HTML。

行爲與限制

  • SSRF 保護:抓取請求的 URL 會發送到 TinyFish 服務器。TinyFish 會拒絕私有 IP、localhost 和雲元數據端點,因此 SSRF 保護由 TinyFish 側處理。對於敏感數據抓取,建議重置爲 http 提供者。
  • 重置方式:如需切換回默認提供者,需修改配置:
    searchProvider: 'deepseek-official'
    fetchProvider: 'http'

總結

該插件爲 DSH 提供了更強大的網頁處理能力,適合需要處理動態內容、PDF 文檔或複雜反爬場景的開發場景。插件倉庫:https://github.com/HateYouLittle/dsh-web-tinyfish

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

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

小夜