Sider.ai
  • 聊天
  • Wisebase
  • 工具
  • 瀏覽器插件
  • 客户端
  • 定價
立即下載
登入

透過 Sider 更快學習、更深入思考、更聰明成長。

產品
應用程式
  • 擴充功能
  • iOS
  • Android
  • Mac OS
  • Windows
Wisebase
  • Wisebase
  • Deep Research
  • Scholar Research
  • Math Solver
  • Rec NoteNew
  • Audio To Text
  • Gamified Learning
  • Interactive Reading
  • ChatPDF
工具
  • 網站產生器New
  • AI 投影片New
  • AI 論文寫作
  • Nano Banana Pro
  • Nano Banana Infographic
  • AI 圖像生成器
  • 意大利腦洞
  • 背景移除器
  • 背景更換器
  • 照片橡皮擦
  • 文字移除器
  • 修補
  • 圖像升級器
  • 創建
  • AI 翻譯器
  • 圖像翻譯器
  • PDF 翻譯器
Sider
  • 聯絡我們
  • 幫助中心
  • 下載
  • 定價
  • 教育優惠
  • 最新消息
  • 部落格
  • 社群
  • 合作夥伴
  • 聯盟
  • 邀請
©2026 版權所有
使用條款
隱私政策
  • 首頁
  • 部落格
  • AI 工具
  • 逐步教學:使用 Claude Code 建立 YouTube 研究代理

逐步教學:使用 Claude Code 建立 YouTube 研究代理

更新於 2025年9月19日

8 分鐘


逐步指南:使用 Claude Code 建立 YouTube 研究代理

如果你曾花一個下午漫無目的地瀏覽 YouTube,卻忘記哪些影片值得收藏,你並不孤單。現在想像有一個不知疲倦的助手,可以快速找到最佳影片、提取摘要、提取關鍵引言、標記時間戳見解,並按需返回來源。這正是 YouTube 研究代理可以做到的。在這份逐步指南中,我們將使用 Claude Code 建立一個實用的 YouTube 研究代理,專為創作者、分析師、學生和痴迷的學習者設計,他們想要從噪音中找到訊號。
我們將採取實用且直接的途徑:架構、程式碼、提示和防護措施。在此過程中,我們將做出你稍後可以替換的武斷選擇。到最後,你將擁有一個可以搜尋 YouTube、收集文字稿、跨多個影片進行推理並產生清晰研究簡報的工作代理。

我們要建構什麼(以及為什麼重要)

  • 目標:一個可以執行以下操作的 YouTube 研究代理:
  • 按查詢搜尋 YouTube
  • 按相關性/參與度對結果進行排名
  • 獲取文字稿(自動字幕或第三方)
  • 分塊並嵌入內容以進行檢索
  • 使用 Claude Code 綜合多影片見解
  • 輸出結構化筆記:摘要、聲明、時間戳、引言和引用
  • 主要關鍵字:「使用 Claude Code 建立 YouTube 研究代理」
  • 格式:帶有可執行程式碼和提示的逐步教學
  • 輸出:Markdown 研究簡報 + JSON 用於程式化使用
為什麼重要:YouTube 是講座、課程、演示和辯論的最大公共知識庫。但它很嘈雜。使用 Claude Code 建立 YouTube 研究代理為你帶來優勢:你可以在幾分鐘內(而不是幾小時)彙總數十個影片的見解。

架構概覽

我們將保持第一個版本簡單而強大。
  • 輸入:研究查詢(例如,「2025 年的 LLM 代理架構」),可選約束(日期範圍、頻道、持續時間)
  • YouTube 搜尋:YouTube Data API v3(或 SerpAPI 後備方案)
  • 文字稿:YouTube Transcript API;在不可用時回復到 ASR(例如,Whisper)
  • 分塊:感知句子的分段(約 800–1,200 個 token)
  • 嵌入:使用本地或託管的嵌入模型(例如,text-embedding-3-large、nomic-embed-text 或 bge-large)
  • 向量儲存:本地 FAISS 以提高速度;可以交換為 Pinecone、Weaviate 或 Qdrant
  • 推理:Claude Code 用於協調、工具使用、合成和在受控迴圈內執行程式碼
  • 輸出:Markdown 報告 + 帶有引用、時間戳和分數的 JSON 索引
資料流:查詢 → 搜尋 → 獲取元資料 → 文字稿 → 分塊 → 嵌入 → 檢索前 K 個 → Claude Code 合成 → 報告。

先決條件和設定

  • Python 3.10+
  • API 金鑰:YOUTUBE_API_KEY、ANTHROPIC_API_KEY(適用於 Claude Code)
  • 可選:OPENAI_API_KEY 或本地嵌入
  • 程式庫:
  • google-api-python-client、youtube-transcript-api
  • faiss-cpu、numpy、pandas、tiktoken(或 sentencepiece)
  • requests、pydantic、tenacity
  • anthropic (Claude API)
pip install google-api-python-client youtube-transcript-api faiss-cpu numpy pandas requests pydantic tenacity anthropic tiktoken
環境變數:
export YOUTUBE_API_KEY=YOUR_YT_KEY
export ANTHROPIC_API_KEY=YOUR_ANTHROPIC_KEY

步驟 1:使用篩選器搜尋 YouTube

我們將搜尋 YouTube 並傳回結構化元資料:標題、頻道、發布日期、持續時間、觀看次數(如果可用)和 videoId。
# file: yt_search.py
from googleapiclient.discovery import build
import os
YOUTUBE_API_KEY = os.environ — channel, date\n\n"
"---\n"
"JSON schema: {\"claims\":[{\"claim\":str,\"support\":[{\"video_id\":str,\"start\":float,\"end\":float}]}]}\n"
)
def call_claude(goal: str, passages: list[dict]):
passages_str = "\n\n".join(
f"[rank {p['rank']} | score {p['score']:.3f}] (vID={p.get('video_id','?')}, {p.get('start',0):.1f}-{p.get('end',0):.1f})\n{p['text']}"
for p in passages
)
msg = client.messages.create(
model="claude-3-5-sonnet-20240620",
max_tokens=1800,
temperature=0.2,
system=SYSTEM_PROMPT,
messages=[
{"role": "user", "content": USER_TEMPLATE.format(goal=goal, passages=passages_str)}
])
return msg.content[0].text
使用 Claude Code 建立 YouTube 研究代理時的提示:
  • 以人類可讀和機器可讀的格式要求結構化輸出
  • 強制執行帶有時間戳的引用
  • 鼓勵揭露不確定性和矛盾

步驟 6:將所有內容整合在一起

讓我們連接查詢 → 搜尋 → 文字稿 → 分塊 → 嵌入 → 檢索 → 合成。
# file: run_agent.py
from yt_search import search_youtube
from transcripts import fetch_transcript
from chunking import transcript_to_docs
from embeddings import VectorStore
from orchestrator import call_claude
from datetime import datetime
def build_corpus(query: str, max_videos=8):
results = search_youtube(query, max_results=max_videos)
corpus_docs = []
for r in results:
tx = fetch_transcript(r["video_id"]) or []
if not tx:
continue
docs = transcript_to_docs(tx)
for d in docs:
d.update({
"video_id": r["video_id"],
"title": r["title"],
"channel": r["channel"],
"url": r["url"],
})
corpus_docs.extend(docs)
return corpus_docs
def research(query: str, k=12):
corpus = build_corpus(query)
if not corpus:
return "No transcripts available."
vs = VectorStore
vs.add(corpus)
passages = vs.search(query, k=k)
md = call_claude(query, passages)
timestamp = datetime.utcnow.isoformat
return f"<!-- generated {timestamp} UTC -->\n\n" + md
if __name__ == "__main__":
print(research("LLM agents for YouTube research"))
這個使用 Claude Code 建立 YouTube 研究代理的基準版本將搜尋、檢索和合成帶有引用的多影片見解。升級嵌入並新增快取使其可供生產。

使其更出色的七項升級

  1. 更好的嵌入和混合搜尋
  • 換入高品質的嵌入並新增 BM25 關鍵字搜尋。混合搜尋可在利基術語上提供更多召回率,並在抽象主題上提供更好的精確度。
  1. 擴充工具以獲取更豐富的元資料
  • 提取評論、讚/不讚比率和頻道權限。為前 100 名候選人新增一個重新排名器(交叉編碼器)。
  1. 多輪研究計畫
  • 使用 Claude Code 提出研究計畫:子問題、假設和覆蓋範圍檢查。迭代執行,直到達到覆蓋範圍閾值。
  1. 證據追蹤和反證
  • 對於每項聲明,記錄支持和反駁的片段。在報告中同時呈現兩者;新增信心分數。
  1. 長影片策略
  • 使用透過字幕或 Whisper 單字時間標記進行的場景偵測。在全局合成之前總結每個章節,以避免上下文稀釋。
  1. 快取和持久性
  • 儲存每個查詢的文字稿、嵌入和報告。在使用者調整篩選器時重複使用。按影片 ID 新增重複資料刪除。
  1. 匯出格式和交付
  • 匯出 Markdown、PDF 和 JSON。電子郵件或 Slack 交付。將時間戳呈現為可點擊的 ?t=mmss 連結。

你可以重複使用的提示

在使用 Claude Code 建立 YouTube 研究代理時,請使用這些範本。
系統:你是一個一絲不苟的研究代理。跨多個 YouTube 文字稿進行合成。使用 [vID @ mm:ss] 進行內嵌引用,並包含一個帶有 URL 的「來源」部分。傳回 Markdown 簡報和帶有時間戳支持的聲明 JSON 酬載。
使用者:研究目標:{topic}
約束:專注於 {audience or scope};首選 {date range} 內的來源;包括分歧。
候選段落(排名):
{retrieved_passages}
輸出:摘要 → 關鍵見解(要點)→ 值得注意的引言(帶有時間戳)→ 矛盾與差距 → 來源。然後是 JSON {"claims": ...}

防護措施和倫理

  • 尊重創作者權利:連結到原始影片,並避免發布大型逐字文字稿。
  • 保持透明:使用時間戳和影片 ID 顯示聲明來源。
  • 避免過度總結:保留細微差別;標記字幕何時自動產生且可能嘈雜。
  • 小心處理敏感主題:強調不確定性並尋求多樣化的來源。

疑難排解:常見問題和修復

  • 「找不到文字稿」
  • 回復到 Whisper;嘗試不同的語言;檢查影片是否受到區域封鎖。
  • 檢索品質不佳
  • 升級嵌入;新增 BM25;增加區塊重疊;參數調整前 K 個。
  • 虛構引用
  • 強制執行嚴格的引用架構;懲罰不受支持的聲明;要求檢索到的區塊中存在確切的時間戳。
  • API 配額限制
  • 積極快取;減少 max_results;批次請求;使用 tenacity 新增退避。
  • 長篇漂移
  • 總結每個章節;約束最大 token;使用帶有明確大綱的計畫提示。

衡量品質

  • 檢索到的區塊的 Precision@K 與標記集相比
  • 忠實度:具有可驗證時間戳支持的聲明比例
  • 覆蓋範圍:引用的唯一相關影片數量
  • 延遲:從查詢到報告的時間

範例:研究「向量資料庫說明」

  • 查詢:「2025 年面向開發人員說明的向量資料庫」
  • 篩選器:2023 年之後的影片,持續時間 6–30 分鐘
  • 結果:代理引用 6 個影片,重點介紹 HNSW 與 IVF-PQ 的權衡、討論成本/召回率,並連結到基準。矛盾部分比較了供應商聲明與開放原始碼結果。

順便說一句:在你的工作流程中自動執行此操作

如果你跨文件和程式碼工作,則值得自動化最後一英里。一個小的 CLI 可以執行每晚查詢,並將 Markdown 簡報放入你的知識庫中。你也可以將其連接到 sprint 研究的問題範本中。
值得注意的是:如果你的工作流程已經存在於瀏覽器側邊欄或 AI 助手中,像 Sider.AI 這樣的工具可以簡化研究迴圈——選擇一個主題、執行搜尋、捕獲文字稿,並在你工作的地方草擬一個由 Claude 驅動的摘要。這可以節省上下文切換,並使使用 Claude Code 建立 YouTube 研究代理對於團隊來說更加實用。

主要要點

  • 使用 Claude Code 建立 YouTube 研究代理是一種將影片轉化為可操作簡報的高槓桿方式。
  • 最小堆疊:YouTube API + 文字稿 + 分塊 + 嵌入 + FAISS + Claude 合成。
  • 升級路徑:混合搜尋、重新排名、計畫迴圈和嚴格的引用追蹤。
  • 從簡單開始,衡量忠實度,並迭代以提高可靠性。

下一步

  • 實施真實的嵌入模型和混合檢索
  • 新增重新排名步驟和品質指標
  • 建立排定的工作以每週更新主題
  • 封裝為 CLI 和輕量級 Web UI

常見問題

Q1:如何開始使用 Claude Code 建立 YouTube 研究代理? 從 YouTube 搜尋開始,獲取文字稿、分塊內容、嵌入到向量儲存中,並使用 Claude Code 來合成結果。上面的指南提供了逐步程式碼來組裝一個工作管線。
Q2:哪些程式庫最適合 YouTube 研究代理? 使用 YouTube Data API 進行搜尋、youtube-transcript-api 進行字幕、FAISS 進行向量搜尋,以及 Anthropic SDK 來呼叫 Claude Code。你可以使用 OpenAI、Nomic 或 BGE 交換嵌入。
Q3:如何確保準確的引用和時間戳? 在分塊期間保留開始/結束時間戳,並要求 Claude Code 引用 [video_id @ mm:ss]。在發布之前,驗證檢索到的區塊中是否存在引用的時間戳。
Q4:我可以將此代理用於私人或未列出的影片嗎? 是的,如果你有權限並可以獲取文字稿或執行本地 ASR(例如,Whisper)。始終尊重權限並避免分發受版權保護的內容。
Q5:如何為團隊擴展此 YouTube 研究代理? 新增快取、共用向量儲存、工作佇列和排定的執行。與 Slack 或 wiki 整合,並考慮使用像 Sider.AI 這樣的基於瀏覽器的助手來簡化研究人員的工作流程。

最新文章
如何精通 ChatPDF:從密集文件中更快獲取洞見

如何精通 ChatPDF:從密集文件中更快獲取洞見

快速且準確文件的最佳 X 自動翻譯替代方案

快速且準確文件的最佳 X 自動翻譯替代方案

三星 AI 翻譯在伊朗無法使用?實用解決方法

三星 AI 翻譯在伊朗無法使用?實用解決方法

波斯語翻譯工具:加速且精準工作的實用指南

波斯語翻譯工具:加速且精準工作的實用指南

深度且具引用的研究最佳Grok替代方案

深度且具引用的研究最佳Grok替代方案

您真正會用到的 AI 圖像生成器 15 大功能

您真正會用到的 AI 圖像生成器 15 大功能