Lépésről lépésre: YouTube kutató ügynök építése Claude Code-dal
Ha valaha is eltöltöttél egy délutánt a YouTube végtelen labirintusában, majd elfelejtetted, mely videókat érdemes elmenteni, nem vagy egyedül. Most képzelj el egy fáradhatatlan asszisztenst, aki megtalálja a legjobb videókat, összefoglalókat készít, kulcsfontosságú idézeteket gyűjt, időbélyeggel ellátja az információkat, és igény szerint gyorsan visszaadja a forrásokat. Pontosan ezt tudja egy YouTube kutató ügynök. Ebben a lépésről lépésre szóló útmutatóban egy praktikus YouTube kutató ügynököt építünk a Claude Code segítségével, amelyet alkotók, elemzők, diákok és megszállott tanulók számára terveztünk, akik a lényegre szeretnének jutni a zaj helyett.
Praktikus és közvetlen megközelítést alkalmazunk: architektúra, kód, promptok és korlátok. Közben olyan határozott döntéseket hozunk, amelyeket később megváltoztathatsz. A végére lesz egy működő ügynököd, amely képes keresni a YouTube-on, átiratokat gyűjteni, több videóban érvelni és tiszta kutatási összefoglalókat készíteni.
Mit építünk (és miért fontos ez)
- Cél: Egy YouTube kutató ügynök, amely képes a következőkre:
- Keresés a YouTube-on lekérdezés alapján
- Az eredmények rangsorolása relevancia/elkötelezettség szerint
- Átiratok lekérése (automatikus feliratok vagy harmadik féltől származó)
- Tartalom darabolása és beágyazása a visszakereséshez
- A Claude Code használata több videós információ szintetizálására
- Strukturált jegyzetek kiadása: összefoglaló, állítások, időbélyegek, idézetek és hivatkozások
- Elsődleges kulcsszó: "YouTube kutató ügynök építése Claude Code-dal"
- Formátum: Lépésről lépésre szóló oktatóanyag futtatható kóddal és promptokkal
- Kimenetek: Markdown kutatási összefoglaló + JSON programozott használatra
Miért fontos: A YouTube a beszélgetések, leckék, bemutatók és viták legnagyobb nyilvános tudásbázisa. De zajos. Egy YouTube kutató ügynök építése a Claude Code segítségével előnyt jelent: percek alatt, nem órák alatt összesíthetsz információkat több tucat videóból.
Architektúra egy pillantással
Az első verziót egyszerűnek és robusztusnak tartjuk.
- Bemenetek: egy kutatási lekérdezés (pl. "LLM ügynök architektúrák 2025"), opcionális korlátozások (dátumtartomány, csatorna, időtartam)
- YouTube keresés: YouTube Data API v3 (vagy SerpAPI tartalék)
- Átiratok: YouTube Transcript API; tartalék ASR-re (pl. Whisper), ha nem elérhető
- Darabolás: Mondatérzékeny szegmentálás (kb. 800–1200 token)
- Beágyazások: Használj helyi vagy hosztolt beágyazási modellt (pl.
text-embedding-3-large, nomic-embed-text, vagy bge-large)
- Vektor tároló: Helyi
FAISS a sebességhez; felcserélhető Pinecone, Weaviate, vagy Qdrant-ra
- Érvelés: Claude Code hangszereléshez, eszközhasználathoz, szintézishez és kódvégrehajtáshoz egy ellenőrzött cikluson belül
- Kimenetek: Markdown jelentés + JSON index hivatkozásokkal, időbélyegekkel és pontszámokkal
Adatfolyam: Lekérdezés → Keresés → Metaadatok lekérése → Átirat → Darabolás → Beágyazás → Top-K lekérése → Claude Code szintézis → Jelentés.
Előfeltételek és beállítás
- API kulcsok:
YOUTUBE_API_KEY, ANTHROPIC_API_KEY (a Claude Code-hoz)
- Opcionális:
OPENAI_API_KEY vagy helyi beágyazások
google-api-python-client, youtube-transcript-api
faiss-cpu, numpy, pandas, tiktoken (vagy sentencepiece)
requests, pydantic, tenacity
pip install google-api-python-client youtube-transcript-api faiss-cpu numpy pandas requests pydantic tenacity anthropic tiktoken
Környezeti változók:
export YOUTUBE_API_KEY=YOUR_YT_KEY
export ANTHROPIC_API_KEY=YOUR_ANTHROPIC_KEY
1. lépés: YouTube keresés szűrőkkel
Keresünk a YouTube-on és strukturált metaadatokat adunk vissza: cím, csatorna, közzétételi dátum, időtartam, megtekintések (ha rendelkezésre állnak) és 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
Prompt tippek YouTube kutató ügynök építésekor a Claude Code-dal:
- Kérj strukturált kimeneteket ember által olvasható és gép által olvasható formátumban is
- Kényszeríts ki időbélyeges hivatkozásokat
- Bátorítsd a bizonytalanság feltárását és az ellentmondásokat
6. lépés: Az egész összerakása
Kapcsoljuk össze a lekérdezést → keresést → átiratokat → darabolást → beágyazásokat → lekérést → szintézist.
# 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"))
A YouTube kutató ügynök ezen alapverziója a Claude Code-dal keresni, lekérni és szintetizálni fogja a több videós információt hivatkozásokkal. Frissítsd a beágyazásokat és adj hozzá gyorsítótárat, hogy éles környezetben is használható legyen.
Hét fejlesztés, hogy nagyszerű legyen
- Jobb beágyazások és hibrid keresés
- Cserélj be minőségi beágyazásokat, és adj hozzá BM25 kulcsszókeresést. A hibrid több találatot ad a réstémákban és jobb pontosságot az absztrakt témákban.
- Bővítsd az eszközöket a gazdagabb metaadatokért
- Gyűjts hozzászólásokat, like/dislike arányt és csatorna tekintélyt. Adj hozzá egy újrarendezőt (keresztenkódolót) a top 100 jelölt számára.
- Többfordulós kutatási tervezés
- Használd a Claude Code-ot egy kutatási terv javaslatára: al-kérdések, hipotézisek és lefedettség ellenőrzések. Hajtsd végre iteratívan, amíg a lefedettségi küszöbértékek nem teljesülnek.
- Bizonyítékok nyomon követése és ellenbizonyítékok
- Minden állításhoz naplózz támogató és ellentmondó részleteket. Mutasd be mindkettőt a jelentésekben; adj hozzá megbízhatósági pontszámokat.
- Használj jelenetfelismerést feliratokon vagy Whisper szóidőzítéseken keresztül. Összegezz szakaszonként a globális szintézis előtt, hogy elkerüld a kontextus felhígulását.
- Gyorsítótárazás és perzisztencia
- Tárold az átiratokat, beágyazásokat és jelentéseket lekérdezésenként. Használd újra, amikor a felhasználók finomítják a szűrőket. Adj hozzá deduplikációt video ID szerint.
- Exportálási formátumok és kézbesítés
- Exportálj Markdown, PDF és JSON formátumokat. E-mail vagy Slack kézbesítés. Rendereld az időbélyegeket kattintható
?t=mmss linkekként.
Újra felhasználható promptok
Használd ezeket a sablonokat YouTube kutató ügynök építésekor a Claude Code-dal.
Rendszer: Ön egy aprólékos kutató ügynök. Szintetizáljon több YouTube átiratot. Hivatkozzon beágyazva a [vID @ mm:ss] segítségével, és tartalmazzon egy Források szekciót URL-ekkel. Adjon vissza egy Markdown összefoglalót és egy JSON hasznos terhet az állításokról időbélyeges támogatással.
Felhasználó: Kutatási cél: {topic}
Korlátozások: összpontosítson a {audience or scope}-ra; részesítse előnyben a {date range}-en belüli forrásokat; tartalmazzon nézeteltéréseket.
Jelölt részletek (rangsorolva):
{retrieved_passages}
Kimenet: Összefoglaló → Főbb információk (felsorolás) → Figyelemre méltó idézetek (időbélyegekkel) → Ellentmondások és hiányosságok → Források. Majd JSON {"claims": ...}
Korlátok és etika
- Tartsd tiszteletben az alkotói jogokat: Linkelj az eredeti videókra, és kerüld a nagy, szó szerinti átiratok közzétételét.
- Légy átlátható: Mutasd meg, honnan származnak az állítások időbélyegek és video ID-k használatával.
- Kerüld a túlzott összefoglalást: Őrizd meg a nüanszokat; jelezd, ha a feliratok automatikusan generáltak és valószínűleg zajosak.
- Kezeld a kényes témákat óvatosan: Emeld ki a bizonytalanságot és keress sokféle forrást.
Hibaelhárítás: Gyakori problémák és javítások
- Visszalépés a Whisper-re; próbálj ki különböző nyelveket; ellenőrizd, hogy a videó régiózár alatt van-e.
- Rossz lekérdezési minőség
- Frissítsd a beágyazásokat; adj hozzá BM25-öt; növeld a darabolás átfedését; paraméterezd a top-K-t.
- Kényszeríts ki szigorú hivatkozási sémát; büntesd a nem támogatott állításokat; követeld meg, hogy a pontos időbélyegek jelen legyenek a lekérdezett darabokban.
- Gyorsítótárazz agresszíven; csökkentsd a
max_results-ot; kötegelt kérelmek; adj hozzá visszalépést a tenacity segítségével.
- Összegezz szakaszonként; korlátozd a maximális tokenek számát; használj tervezési promptokat explicit vázlattal.
A minőség mérése
- A lekérdezett darabok Precision@K értéke egy címkézett készlethez viszonyítva
- Hűség arány: az ellenőrizhető időbélyeges támogatással rendelkező állítások aránya
- Lefedettség: a hivatkozott egyedi releváns videók száma
- Késleltetés: a lekérdezéstől a jelentésig eltelt idő
Példa: A "Vektor adatbázisok magyarázata" kutatása
- Lekérdezés: "vektor adatbázisok magyarázata fejlesztőknek 2025"
- Szűrők: 2023 utáni videók, 6–30 perc időtartam
- Eredmény: Az ügynök 6 videót hivatkozik, kiemeli a HNSW vs. IVF-PQ közötti kompromisszumokat, megvitatja a költség/visszahívást és linkeket a benchmarkokhoz. Az Ellentmondások szekció összehasonlítja a gyártói állításokat a nyílt forráskódú eredményekkel.
Egyébként: Ennek automatizálása a munkafolyamaton belül
Ha dokumentumokon és kódon dolgozol, érdemes automatizálni az utolsó szakaszt. Egy kis CLI futtathat éjszakai lekérdezéseket és Markdown összefoglalókat helyezhet el a tudásbázisodban. Be is kötheted a problémakövető sablonokba a sprint kutatásához.
Érdemes megjegyezni: ha a munkafolyamatod már egy böngésző oldalsávban vagy AI asszisztensben él, az olyan eszközök, mint a Sider.AI leegyszerűsíthetik a kutatási ciklust – válassz egy témát, futtass egy keresést, rögzíts átiratokat és készíts egy Claude által vezérelt összefoglalót ott, ahol dolgozol. Ez megtakaríthatja a kontextusváltást, és még praktikusabbá teheti a YouTube kutató ügynök építését a Claude Code-dal a csapatok számára. Főbb megállapítások
- A YouTube kutató ügynök építése a Claude Code-dal egy magas szintű módja annak, hogy a videókat használható összefoglalókká alakítsuk.
- A minimális stack: YouTube API + átiratok + darabolás + beágyazások + FAISS + Claude szintézis.
- Fejlesztési útvonalak: hibrid keresés, újrarendezés, tervezési ciklusok és szigorú hivatkozáskövetés.
- Kezdd egyszerűen, mérd a hűséget és iterálj a megbízhatóság felé.
Következő lépések
- Valósíts meg egy valódi beágyazási modellt és hibrid lekérdezést
- Adj hozzá egy újrarendezési lépést és minőségi mérőszámokat
- Hozzon létre egy ütemezett feladatot a témák heti frissítéséhez
- Csomagold be CLI-ként és egy könnyű webes felhasználói felületként
GYIK
Q1:Hogyan kezdjem el egy YouTube kutató ügynök építését a Claude Code-dal?
Kezdd a YouTube kereséssel, kérd le az átiratokat, darabold fel a tartalmat, ágyazd be egy vektor tárolóba, és használd a Claude Code-ot az eredmények szintetizálásához. A fenti útmutató lépésről lépésre tartalmaz kódot egy működő pipeline összeállításához.
Q2:Melyek a legjobb könyvtárak egy YouTube kutató ügynökhöz?
Használd a YouTube Data API-t a kereséshez, a youtube-transcript-api-t a feliratokhoz, a FAISS-t a vektoros kereséshez és az Anthropic SDK-t a Claude Code meghívásához. A beágyazásokat felcserélheted OpenAI, Nomic vagy BGE-vel.
Q3:Hogyan biztosíthatom a pontos hivatkozásokat és időbélyegeket?
Tartsd meg a kezdő/befejező időbélyegeket a darabolás során, és követeld meg, hogy a Claude Code hivatkozzon a [video_id @ mm:ss] segítségével. Ellenőrizd, hogy a hivatkozott időbélyegek léteznek-e a lekérdezett darabokban a közzététel előtt.
Q4:Használhatom ezt az ügynököt privát vagy nem listázott videókhoz?
Igen, ha van hozzáférésed és le tudod kérni az átiratokat, vagy futtathatsz helyi ASR-t (pl. Whisper). Mindig tartsd tiszteletben az engedélyeket és kerüld a szerzői joggal védett tartalom terjesztését.
Q5:Hogyan skálázhatom ezt a YouTube kutató ügynököt csapatok számára?
Adj hozzá gyorsítótárazást, egy megosztott vektor tárolót, feladatvárakozási sorokat és ütemezett futtatásokat. Integráld a Slack-kel vagy egy wikivel, és fontolj meg egy böngésző alapú asszisztenst, mint például a Sider.AI, a kutatók munkafolyamatainak leegyszerűsítésére.