A newer version of the Gradio SDK is available:
5.32.0
YouTube Интеграция - Руководство пользователя
Обзор
Гибридный GAIA агент теперь поддерживает полную интеграцию с YouTube, позволяя анализировать видео и отвечать на вопросы о их содержании.
Возможности
1. Извлечение метаданных
- Название видео
- Канал/автор
- Длительность
- Количество просмотров
- Дата публикации
- Описание
- Теги
2. Извлечение транскриптов
- Автоматические субтитры
- Ручные субтитры
- Множество языков (английский, русский, и др.)
- Поиск по содержанию
3. Анализ содержания
- Поиск конкретных фраз
- Извлечение ключевой информации
- Ответы на вопросы о видео
Установка зависимостей
pip install yt-dlp youtube-transcript-api
Опционально (для расширенной функциональности):
# Установите YouTube API ключ
export YOUTUBE_API_KEY="your_api_key_here"
Примеры использования
1. Базовые вопросы о видео
from hybrid_agent import HybridGAIAAgent
agent = HybridGAIAAgent()
# Получить название видео
question = "What is the title of this YouTube video: https://www.youtube.com/watch?v=dQw4w9WgXcQ"
answer = agent(question)
# Ответ: "Rick Astley - Never Gonna Give You Up (Official Music Video)"
# Узнать длительность
question = "How long is the video at https://www.youtube.com/watch?v=dQw4w9WgXcQ?"
answer = agent(question)
# Ответ: "212" (секунд)
2. Вопросы о содержании
# Анализ содержания видео
question = "What is this YouTube video about: https://www.youtube.com/watch?v=example"
answer = agent(question)
# Поиск конкретной информации
question = "Does the video at https://www.youtube.com/watch?v=example mention artificial intelligence?"
answer = agent(question)
3. Поддерживаемые форматы URL
# Все эти форматы поддерживаются:
urls = [
"https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"https://youtu.be/dQw4w9WgXcQ",
"https://www.youtube.com/embed/dQw4w9WgXcQ"
]
Технические детали
Архитектура
HybridGAIAAgent
↓
YouTubeTools
↓
┌─────────────────┬─────────────────┐
│ Метаданные │ Транскрипты │
│ │ │
│ YouTube API │ youtube- │
│ ↓ │ transcript-api │
│ yt-dlp │ │
│ (fallback) │ │
└─────────────────┴─────────────────┘
↓
Gemini API (анализ и ответы)
Обработка ошибок
Система имеет встроенные fallback механизмы:
- YouTube API → yt-dlp (для метаданных)
- Ручные субтитры → Автоматические субтитры → Без транскрипта
- Graceful degradation при недоступности сервисов
Поддерживаемые языки транскриптов
- Английский (en)
- Русский (ru)
- Немецкий (de)
- Французский (fr)
- Испанский (es)
- И многие другие...
Ограничения
1. Зависимости от внешних сервисов
- YouTube может блокировать запросы
- Не все видео имеют транскрипты
- Некоторые видео могут быть недоступны в регионе
2. Производительность
- Извлечение транскриптов может занимать время
- Большие видео требуют больше ресурсов
3. Точность
- Автоматические транскрипты могут содержать ошибки
- Качество анализа зависит от качества транскрипта
Отладка
Включить подробное логирование:
import logging
logging.basicConfig(level=logging.INFO)
Проверить доступность зависимостей:
from youtube_tools import YouTubeTools
tools = YouTubeTools()
# Проверьте логи на предупреждения о недоступных зависимостях
Тестирование:
python test_youtube.py
Примеры реальных GAIA задач
1. Анализ образовательного контента
"Summarize the main points discussed in this educational video: [URL]"
2. Извлечение фактической информации
"What year is mentioned in this historical documentary: [URL]"
3. Анализ музыкального контента
"Who is the artist of the song in this video: [URL]"
Заключение
YouTube интеграция значительно расширяет возможности GAIA агента, позволяя обрабатывать видео-контент наравне с текстовыми и другими мультимодальными данными. Это делает агент более универсальным и готовым к реальным задачам, где видео является важным источником информации.