YouTube-transcripts voor een RAG-app op grote schaal: credits, automatisch bijladen en budgetten
Een ontwikkelaar laadt 10.000 YouTube-video's in een RAG-app. Zie de kosten, de berekening van de snelheidslimiet en hoe automatisch bijladen en budgetten de uitgaven voorspelbaar houden.

Heeft je RAG- of AI-app YouTube-transcripts op grote schaal nodig, dan is de praktische opzet een transcript-API met betalen naar gebruik en vooraf betaalde credits, een automatische bijlading zodat een lange inlaadtaak nooit stokt, en een maandbudget zodat een bug geen rekening opdrijft. Dit voorbeeld volgt een ontwikkelaar door die opzet met de sum.video Transcript API.
De situatie
Maya bouwt een onderzoeksassistent die vragen beantwoordt over conferentiesprekken. Haar index moet ongeveer 10.000 YouTube-video's van een paar honderd kanalen omvatten en daarna met zo'n 300 nieuwe video's per maand groeien. Ze draait het inladen vanaf een kleine server en wil er niet naast zitten of door een rekening verrast worden.
Haar eisen zijn helder: voorspelbare kosten, geen handmatig bijladen midden in een taak en een nette afhandeling van video's zonder transcript.
Wat ze nodig heeft
- Gewone tekst voor elke video, klaar om op te delen en te embedden.
- Tijdstempels, zodat een antwoord kan verwijzen naar het exacte moment in de video.
- Kosten die ze vooraf kan schatten.
- Een harde bovengrens voor de uitgaven.
Stap voor stap
1. Schat eerst de kosten
Eén transcript kost 2 credits, en verzoeken die geen transcript opleveren kosten niets. Voor 10.000 video's is dat hooguit 20.000 credits. Met het pakket van 5.000 credits voor $74.99 ($0.030 per transcript) kosten 10.000 transcripts in totaal ongeveer $300, iets minder als sommige video's geen ondertitels hebben. De kleinere pakketten kosten meer per transcript: $0.090 bij 100 credits, $0.056 bij 500, $0.038 bij 2.000. De prijzenpagina heeft de actuele details.
Credits koop je eenmalig en verlopen nooit, dus er tikt geen abonnementsklok terwijl ze bouwt.
2. Test met de gratis credits
Haar eerste API-sleutel wordt geleverd met 10 gratis credits, dat zijn 5 transcripts. Daarmee controleert ze het antwoord voor een paar video's in het formaat json (segmenten met offset en duration in seconden) en in het formaat text. Voor de details van het verzoek heeft de gids een YouTube-transcript ophalen met een API werkende voorbeelden in curl, Python en JavaScript.
3. Stel automatisch bijladen in
In het API-dashboard zet ze automatisch bijladen aan. De regel: als het saldo onder een gekozen niveau zakt, wordt de opgeslagen kaart belast voor nog een pakket. De inlaadtaak draait de hele nacht door zonder handmatig bijladen.
4. Stel de budgetten in
Twee limieten beschermen haar:
- Een maandelijks bijlaadbudget, dat begrenst hoeveel automatisch bijladen per maand mag uitgeven.
- Een maandelijkse creditlimiet. Is die bereikt, dan geven verdere verzoeken
402 budget_exceeded.
Ze zet ook e-mailmeldingen aan voor een laag saldo, voor 80% van de maandlimiet en voor mislukte bijladingen. De meldingen waarschuwen voor een probleem terwijl er nog tijd is om in te grijpen.
5. Respecteer de snelheidslimiet
Elke sleutel staat 60 verzoeken per minuut toe. In dat tempo duren 10.000 verzoeken zo'n 167 minuten, minder dan drie uur met één sleutel. Ze draait een eenvoudige wachtrij die één verzoek per seconde verstuurt, zodat ze zonder pieken onder de limiet blijft. Ze zou tot 5 actieve sleutels kunnen aanmaken, bijvoorbeeld één voor het inladen en één voor de live opzoekingen van de app, zodat een inhaalslag nooit een gebruikersverzoek blokkeert.
6. Handel video's zonder transcript af
De API geeft alleen bestaande YouTube-ondertitels terug. Livestreams, privé- of verwijderde video's en video's zonder ondertitels geven 404 no_transcript. In haar wachtrij betekent die status: markeer als overgeslagen en ga door, nooit opnieuw proberen. Omdat die verzoeken niets kosten, verbrandt een kanaal vol video's zonder ondertitels haar budget niet.
Haar lus, in pseudocode:
- Neem het volgende video-ID uit de wachtrij.
- Roep de API aan met
format=json. - Bij succes: splits de segmenten in stukken van ongeveer een minuut, sla elk stuk op met zijn startoffset en embed het.
- Bij
404 no_transcript: sla een markering "geen transcript" op. - Bij
402 budget_exceeded: pauzeer de wachtrij en waarschuw jezelf. - Bij een serverfout: probeer opnieuw na een pauze.
7. Controleer het saldo in code
Vóór elke grote batch roept ze GET /api/v1/credits aan. Is het saldo lager dan de batch nodig heeft en staat automatisch bijladen uit, dan weigert de taak te starten. Het is een goedkope bescherming tegen een half afgemaakte import.
Wat ze uiteindelijk heeft
Na de eerste nacht bevat de index de transcripts van bijna alle 10.000 video's, elk stuk met zijn starttijd. Stelt een gebruiker een vraag, dan citeert de assistent een gesprek en een tijdstempel, en de link opent de video op dat moment. De lopende kosten zijn klein: 300 nieuwe video's per maand is hooguit 600 credits, ongeveer $18 tegen het tarief van het pakket van 5.000 van $0.030 per transcript.
Zou Maya Pro nemen, dan kreeg ze ook elke maand 100 bonuscredits, wat een deel van die groei dekt.
Waar dit tekortschiet
- Geen ondertitels, geen transcript. De API transcribeert geen audio. Voor video's zonder ondertitels heb je een andere bron nodig, zoals een spraak-naar-tekstdienst, die je apart betaalt. Sommige andere transcript-API's bieden een audio-terugvaloptie, zie de vergelijking van YouTube-transcript-API's.
- Automatisch gegenereerde ondertitels bevatten fouten. Namen en jargon lijden meestal het meest. Het antwoord zegt of een spoor automatisch is gegenereerd, dus je kunt zulke stukken zwaarder laten wegen of markeren.
- De taal is die van het ondertitelspoor. Het antwoord meldt de echte taal, ga er dus niet van uit dat die overeenkomt met wat je vroeg.
- De doorvoer is per sleutel begrensd. Een heel grote inhaalslag is een kwestie van uren, niet van seconden.
- Het geeft alleen transcripts terug. Opdelen, embedden en terugzoeken is jouw werk. Heb je alleen de samenvatting van één video nodig, gebruik dan de YouTube-samenvatter.
Bronnen
Veelgestelde vragen
Hoeveel kost het om 10.000 YouTube-transcripts op te halen?
Hooguit 20.000 credits, want elk transcript is 2 credits. Met het pakket van 5.000 credits voor $74.99 ($0.030 per transcript) is dat ongeveer $300. Video's zonder transcript kosten niets, dus het werkelijke totaal kan lager uitvallen.
Wat gebeurt er als mijn saldo tijdens een lange taak op raakt?
Met automatisch bijladen aan wordt de opgeslagen kaart belast voor nog een pakket zodra het saldo onder het gekozen niveau zakt, zodat de taak doorloopt. Zonder stoppen de verzoeken wanneer de credits op zijn.
Hoe voorkom ik dat een bug mijn rekening opdrijft?
Stel een maandelijks bijlaadbudget en een maandelijkse creditlimiet in. Als de creditlimiet is bereikt, geven verzoeken 402 budget_exceeded. Je kunt ook e-mailmeldingen krijgen bij een laag saldo, bij 80% van de maandlimiet en bij mislukte bijladingen.
Wat is de snelheidslimiet?
60 verzoeken per minuut per sleutel, met tot 5 actieve sleutels. Bij één verzoek per seconde duren 10.000 video's met één sleutel minder dan drie uur.
Wat met video's zonder ondertitels?
Ze geven 404 no_transcript en kosten niets. De API transcribeert geen audio, dus voor die video's heb je een andere bron nodig.
Gerelateerd
Een YouTube-transcript ophalen met een API (curl, Python, JavaScript)Haal het transcript van elke openbare YouTube-video op met één HTTP-verzoek. Werkende voorbeelden in curl, Python en JavaScript, uitvoerformaten, foutcodes en kosten.
De beste YouTube-transcript-API's vergeleken: sum.video, Supadata, Transcribr en de Python-bibliotheekVier manieren om YouTube-transcripts in code op te halen, vergeleken op prijs, limieten en betrouwbaarheid: sum.video, Supadata, Transcribr en youtube-transcript-api.
Bouw een persoonlijke kennisbank van YouTube-video'sVerander de YouTube-video's waarvan je leert in een doorzoekbare bibliotheek met samenvattingen en opgeslagen punten, met een wekelijkse samenvatting, zodat je maanden later een idee weer kunt terugvinden.
Nieuwste berichten
Een YouTube-transcript ophalen met een API (curl, Python, JavaScript)Haal het transcript van elke openbare YouTube-video op met één HTTP-verzoek. Werkende voorbeelden in curl, Python en JavaScript, uitvoerformaten, foutcodes en kosten.
De beste YouTube-transcript-API's vergeleken: sum.video, Supadata, Transcribr en de Python-bibliotheekVier manieren om YouTube-transcripts in code op te halen, vergeleken op prijs, limieten en betrouwbaarheid: sum.video, Supadata, Transcribr en youtube-transcript-api.
Bouw een persoonlijke kennisbank van YouTube-video'sVerander de YouTube-video's waarvan je leert in een doorzoekbare bibliotheek met samenvattingen en opgeslagen punten, met een wekelijkse samenvatting, zodat je maanden later een idee weer kunt terugvinden.