前言¶
DeepSeek Harness (DSH) 的插件生態允許開發者擴展本地智能體的能力。現有的視頻轉筆記工具大多隻能生成通用的摘要,無法捕捉觀看者的個人視角。dsh-youtube-study-notes 插件解決了這個問題:它不僅提取視頻自帶字幕,還通過視覺模型讀取屏幕內容,並在處理過程中暫停,詢問觀察者的所見所想,最終將這三者合併爲一份文檔。
插件定位¶
這是一個 DSH 插件,旨在將 YouTube 視頻鏈接轉化爲結構化的學習筆記。插件由 jagathsrujan 維護,遵循 MIT 許可證。它本質是一個 Skill,通過驅動本地工具(如 yt-dlp、ffmpeg)來執行工作流,而非包含運行時代碼。
核心功能¶
插件的工作流包含以下步驟:
- 字幕獲取:使用
yt-dlp獲取字幕。優先使用人工字幕,自動生成的字幕作爲備選。不使用第三方語音識別服務。 - 大綱生成:讀取帶有時間戳的字幕全文,生成章節大綱。
- 視覺通過(可選):使用
ffmpeg進行場景檢測並採樣幀,讓視覺模型讀取屏幕上的文字、代碼、公式或圖表。 - 交互提問:在處理過程中暫停,詢問觀察者個人的觀察內容。
- 內容合併:將字幕、視覺證據和用戶筆記合併爲一個 Markdown 文件。
- 保存與清理:生成
notes.md,並刪除臨時文件(幀截圖和視頻文件),僅保留證據文件。
輸出文件¶
插件會在當前目錄下保留以下文件作爲證據:
* transcript.md / transcript.txt
* meta.json
* notes.md
安裝與啓用¶
通過 CLI 安裝插件:
dsh plugin --profile <your-profile> add dsh-youtube-study-notes
安裝完成後需要重啓配置文件,以使 bundle 更改生效。在桌面客戶端中,請通過 Plugins → Add plugin 流程操作。
典型用法¶
觸發插件有兩種方式:
- 直接指令:
/youtube-study-notes https://youtu.be/VIDEO_ID
- 自然語言:
在對話中輸入類似 “get me notes from this video: …” 的請求,並附帶鏈接。
環境依賴¶
插件本身不包含運行時代碼,其核心是驅動本地工具的 Skill。安裝前請確保系統中已安裝以下工具:
| 工具 | 用途 | 安裝建議 |
|---|---|---|
python3 |
運行腳本 | brew install python3 |
ffmpeg / ffprobe |
音視頻探測、場景檢測、幀提取 | brew install ffmpeg |
yt-dlp |
字幕列表與下載 | brew install yt-dlp |
插件會檢測缺失的工具,並在確認後等待安裝。
啓用視覺通過¶
視覺通過功能需要模型配置聲明支持圖像輸入。默認情況下,許多模型配置僅允許文本輸入。如果未正確配置,插件會提示錯誤並詢問使用哪個支持圖像的模型。
在 cordis.patch.yml 中爲模型添加 input 配置:
- id: llm-pi-ai
name: "@deepseek-ai/dsh-llm-pi-ai"
config:
providers:
your-provider:
# ...existing provider config...
models:
- id: "your-vision-model"
name: "Your Vision Model"
contextWindow: 200000
input:
- text
- image
注意:僅當端點實際支持圖像時才聲明此配置。如果聲明瞭但服務端拒絕,會導致消息持久化失敗。
限制與注意事項¶
- 無字幕視頻會終止運行:如果視頻沒有字幕(包括自動生成的),插件會停止並報錯,不會生成任何內容。
- 自動字幕質量有限:自動生成的字幕通常沒有標點符號,且可能聽錯專有名詞。插件會明確告知使用了哪種字幕。
- 視覺識別的字符級誤差:視覺模型在識別字符時可能出現錯誤(例如將句號識別爲連字符,數字 1 識別爲字母 l)。對於代碼和公式,需要人工校對。
- 幀採樣的侷限性:
ffmpeg場景檢測採樣的是鏡頭,而非運動。一個連續的鏡頭內的動態變化可能無法被捕捉。 - 僅限個人學習:字幕、截圖和筆記均來自他人的作品,請勿公開發布。
結語¶
dsh-youtube-study-notes 提供了一種從被動觀看轉向主動學習的機制。它通過合併外部內容與個人觀察,生成了更具個人色彩的學習資料。更多詳情可參考插件目錄頁或 GitHub 倉庫。