dsh-bilibili-retrieval:把 B 站視頻讀進 DeepSeek Harness 檢索層

前言

在 DeepSeek Harness(DSH)裏做中文技術問答時,模型往往只能拿到你粘貼的鏈接或標題。通用網頁搜索對 B 站教程的召回也偏寬:命中的是標題和摘要片段,很難直接回答「這節課配套資料在哪」「第幾分鐘在講什麼」。維護者 2332239652 發佈的 dsh-bilibili-retrieval(分類:聯網工具)面向的就是從「找到候選視頻」到「讀懂這條視頻」這一段:搜索、簡介全文、UP 置頂評論、分片字幕帶時間錨點、預覽雪碧圖抽幀,且 README 標明零運行時依賴(不需要 ffmpeg、Python、sharp)。下面按安裝、工具與典型用法說明。

這是什麼

一句話:給 DSH 加一層 B 站檢索與「讀視頻」能力,讓中文視頻教程更接近一等檢索源,而不是 opaque 鏈接。

插件通過 ctx.tools.register() 註冊工具,parameters 與 output.schema 使用標準 JSON Schema,不 import @deepseek-ai/*,以便從任意目錄用 link: 安裝時仍能激活。

核心功能

控制面板

裝好後在 設置 → B 站檢索 可完成賬號掃碼、通道狀態、預覽圖緩存與參數修改,無需手敲命令。面板經宿主側 /api/bilibili-retrieval 工作;SESSDATA 留在宿主進程,路由只接受本機同源請求。

九個工具

工具 作用 需要登錄
bili_search 關鍵詞搜視頻,帶噪音過濾 —
bili_video 單視頻元數據、簡介全文(desc_v2)、分 P、統計、標籤;相關視頻默認不返回(related 默認 0) —
bili_comments UP 主置頂評論 + 熱評,含 has_pinned、linkComment —
bili_frames 預覽幀雪碧圖(默認 10×10),無需 ffmpeg —
bili_cache 查看 / 清空預覽圖磁盤佔用 —
bili_probe 雙通道狀態 + 搜索連通性診斷 —
bili_transcript 字幕全文分片讀取,帶 [mm:ss] 時間錨點 ✅
bili_summary B 站 AI 摘要 + 大綱(另有權限門檻) ✅
bili_login 掃碼登錄:start / status / logout —

匿名通道(約 2s/請求、桶深 5)承擔搜索、元數據、評論、抽幀;登錄通道(約 3s/請求、桶深 2、單會話硬上限 20 次)承擔字幕、AI 摘要等。插件對 B 站賬號只讀,不點贊、不評論、不關注、不投幣。

搜索噪音過濾

B 站召回較寬時,插件會做拉丁詞邊界匹配、純拉丁查詢全 token 命中、以及「≥3 條全命中時剔除部分命中」等處理,只過濾不重排;若結果爲空則退回原始排序並標註 unfiltered。

上下文與磁盤

README 給出典型 token 開銷(例如固定工具描述約 1300 tokens;bili_transcript 默認 4000 字約 1300 tokens)。字幕必須分片續讀(startChar 等)。預覽圖寫入工作區 bili-frames/,默認上限 12 張 / 24 MB,可在 cordis.patch.yml 調整 framesMaxFiles / framesMaxBytes。

安裝與啓用

官方 README 給出的開發/本地目錄安裝方式爲(路徑換成你的 clone 或解壓目錄;不要憑插件名拼接 github:owner/repo):

dsh plugin --profile desktop add "link:C:/path/to/dsh-bilibili-retrieval"

注意:README 實測 dshd plugin add 會把參數按字符拆開導致失敗,須用 dsh plugin --profile desktop add。

裝完後 重啓一次 DSH 客戶端(bundle 層需重啓纔會組裝)。

驗證安裝:

bili_probe

期望 search ok="true"。若 authenticated 爲 not logged in,僅影響字幕與 AI 摘要;搜索、元數據、評論、抽幀仍可用。

可選:啓用字幕

bili_login action=start

會出二維碼(約 3 分鐘過期;默認等待 45 秒)。憑據存 $DSH_HOME/bili/credential.json(權限 0600),不寫 .env。

配置覆蓋:在 ~/.dsh/profiles/desktop/cordis.patch.yml 中對 id: bilibili-retrieval 寫 patch,例如 anonMinIntervalMs、anonBurst、authMinIntervalMs 等(完整默認值見倉庫 cordis.patch.yml)。

典型用法

先做連通性檢查,再按任務選工具。

  1. 找課 / 篩候選

調用 bili_search,利用噪音過濾減少無關命中。

  1. 讀簡介與分 P

bili_video 拿 desc_v2 全文與分 P 目錄;需要相關推薦時再顯式提高 related。

  1. 拿配套鏈接(置頂評論)

README 示例:bili_comments 可得到 UP 置頂中的 read 鏈接等,這是通用搜索難以直接給出的信息。

  1. 讀字幕(需登錄)

分片輸出形如:

   <cues>902</cues>
   <range>0-4000 of 9473 chars (0:00-3:10 of 20:40); call again with startChar=4000 for the next slice</range>
   <transcript>
   [00:00] …
   [00:22] …
   </transcript>
  1. 看畫面

bili_frames 生成雪碧圖到 bili-frames/,可直接預覽。

結構化錯誤會歸一爲 BiliError(如 BILIBILI_LOGIN_REQUIRED、BILIBILI_SUBTITLES_UNAVAILABLE 等),便於模型理解而非吞 HTML 風控頁。

適用場景與注意

適合誰:在 DSH 裏做中文教程檢索、需要從視頻內提取講義鏈接、按時間軸讀字幕、或快速掃預覽幀的開發者與智能體編排場景。

權限與安全:

  • 插件以當前 DSH 進程權限運行;安裝前請自行審閱 GitHub 源碼 與 MIT 許可證。
  • 社區目錄 SkillHub 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係;DSH 生態理念是「一切皆插件」,本文介紹的是社區維護的聯網工具插件之一。
  • 登錄態有單會話配額;AI 摘要可能遇到 BILIBILI_SUMMARY_FORBIDDEN,README 建議可改用字幕。

已知限制(摘自 README):無字幕軌的視頻登錄也無法拉字幕;匿名無法下載 CDN 字幕 JSON;二維碼與端點域名等細節已在倉庫「已知限制」「掃碼登錄的三個坑」中說明。

結尾

dsh-bilibili-retrieval 把 B 站從「一條鏈接」補成可檢索、可分片閱讀、可看幀的結構化來源,並在搜索過濾、上下文分片與雙通道限速上做了硬約束。需要安裝細節、面板截圖級說明與設計要點時,以倉庫 README 爲準。

  • 目錄頁:https://www.skillhub.cn/plugins/2332239652/dsh-bilibili-retrieval
  • GitHub:https://github.com/2332239652/dsh-bilibili-retrieval
羽毛球分组比赛记分
小程序二维码

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

小夜