Le problème résolu
Quand un utilisateur colle un lien YouTube dans un assistant, celui-ci refuse, invente à partir du titre ou échoue sur les longues vidéos. Les équipes qui créent des agents pour la recherche, la vente ou le support ont besoin d'un moyen fiable de transformer n'importe quelle vidéo en texte exploitable par le modèle, sans maintenir des scrapers qui cassent à chaque changement de YouTube.
Ce que doit inclure votre première version
- Un outil que le modèle peut appeler avec n'importe quelle URL YouTube ou identifiant de vidéo
- Le texte propre de la transcription et des segments horodatés pour les citations
- Choix de la langue et traduction pour les vidéos qui ne sont pas en anglais
- Découpage des longues vidéos pour qu'elles tiennent dans le contexte du modèle
- Mise en cache pour ne jamais récupérer deux fois la même vidéo
Comment le construire, étape par étape
- 01
Choisir votre intégration
Si votre assistant prend en charge le Model Context Protocol, connectez le serveur MCP et les outils apparaissent automatiquement. Sinon, définissez un outil de type fonction qui appelle /transcribe.
- 02
Définir le contrat de l'outil
Acceptez une URL de vidéo et une langue facultative. Renvoyez le texte de la transcription et une liste de segments avec leurs heures de début.
- 03
Gérer les longues vidéos
Pour les vidéos qui dépassent votre fenêtre de contexte, découpez les segments en blocs et résumez chacun avant de répondre, ou ne récupérez que les blocs pertinents pour la question.
- 04
Citer la source
Demandez au modèle de citer les horodatages des segments pour que les utilisateurs puissent vérifier chaque affirmation.
Code de démarrage
Cette idée repose sur le modèle « Recette 1 : une vidéo en entrée, un résultat structuré en sortie ». Remplacez par vos propres chaînes, prompts et stockage.
import requests
API = "https://www.youtubetranscript.dev/api/v2"
HEADERS = {"Authorization": "Bearer yt_sk_live_YOUR_KEY"}
res = requests.post(f"{API}/transcribe", headers=HEADERS, json={
"video": "https://www.youtube.com/watch?v=VIDEO_ID",
"format": {"timestamp": True, "paragraphs": True},
}).json()
transcript = res["data"]["transcript"]
print(transcript["text"][:500]) # plain text for your LLM prompt
for seg in transcript["segments"][:3]: # timestamps for deep links
print(seg["start"], seg["text"])Pourquoi ça vaut la peine de le construire
C'est généralement une fonctionnalité plutôt qu'un produit : elle rend votre assistant, bot ou copilote nettement plus utile. En produit autonome, un bot Slack ou Discord qui répond aux questions sur les vidéos partagées peut être facturé par espace de travail.
Erreurs à éviter
- Faire tenir une transcription de trois heures dans un seul prompt : récupérez ou résumez plutôt par blocs.
- Supprimer les horodatages, ce qui rend les réponses invérifiables.
- Récupérer sans cesse la même vidéo populaire au lieu de mettre les transcriptions en cache.
Questions sur cette idée
ChatGPT ou Claude peuvent-ils lire des vidéos YouTube ?
Pas de manière fiable par eux-mêmes. Connecter un outil de transcription ou un serveur MCP leur permet de lire la transcription complète de toute vidéo publique sous-titrée.
Qu'est-ce qu'un serveur MCP ?
Le Model Context Protocol est un standard pour fournir des outils aux assistants IA. Notre serveur MCP expose des outils de transcription que les assistants compatibles peuvent appeler sans code sur mesure.
Comment gérer les vidéos très longues ?
Découpez les segments horodatés en blocs, puis résumez chaque bloc ou ne récupérez que ceux qui concernent la question de l'utilisateur.