Транскрипції YouTube для RAG-застосунку у великому масштабі: кредити, автопоповнення та бюджети
Розробниця імпортує 10,000 відео YouTube у RAG-застосунок. Подивись вартість, розрахунок ліміту швидкості та як автопоповнення й бюджети роблять витрати передбачуваними.

Якщо твоєму RAG- чи AI-застосунку потрібні транскрипції YouTube у великому масштабі, практичне налаштування таке: API транскрипцій з оплатою за використання й заздалегідь придбаними кредитами, автопоповнення, щоб довгий імпорт ніколи не зупинявся, і місячний бюджет, щоб помилка не нарахувала рахунок. Цей приклад веде розробницю через таке налаштування з API транскрипцій sum.video.
Ситуація
Майя створює дослідницького асистента, який відповідає на запитання про конференційні доповіді. Її індекс має охопити близько 10,000 відео YouTube з кількох сотень каналів, а потім зростати приблизно на 300 нових відео на місяць. Імпорт вона запускає з невеликого сервера й не хоче ні сидіти над ним, ні дивуватися рахунку.
Її умови прості: передбачувана вартість, жодного ручного поповнення посеред завдання й охайна обробка відео без транскрипції.
Що їй потрібно
- Простий текст кожного відео, готовий до розбиття на фрагменти й embedding.
- Позначки часу, щоб відповідь могла вести до точного моменту відео.
- Вартість, яку можна оцінити до початку.
- Жорстка межа витрат.
Крок за кроком
1. Спершу оціни вартість
Одна транскрипція коштує 2 кредити, а запити без транскрипції нічого не коштують. Для 10,000 відео це щонайбільше 20,000 кредитів. З пакетом 5,000 кредитів за $74.99 ($0.030 за транскрипцію) 10,000 транскрипцій коштують разом близько $300, трохи менше, якщо в деяких відео немає субтитрів. Менші пакети коштують дорожче за транскрипцію: $0.090 за 100 кредитів, $0.056 за 500, $0.038 за 2,000. На сторінці цін є актуальні подробиці.
Кредити купуються один раз і ніколи не спливають, тож поки вона розробляє, годинник підписки не цокає.
2. Протестуй на безкоштовних кредитах
Її перший API-ключ має 10 безкоштовних кредитів, тобто 5 транскрипцій. Вона використовує їх, щоб перевірити відповідь для кількох відео у форматі json (сегменти з offset і duration у секундах) та у форматі text. Якщо потрібні подробиці запиту, у посібнику як отримати транскрипцію YouTube за допомогою API є робочі приклади на curl, Python і JavaScript.
3. Налаштуй автопоповнення
У панелі API вона вмикає автопоповнення. Правило: коли баланс падає нижче обраного рівня, зі збереженої картки списують оплату ще за один пакет. Завдання імпорту працює всю ніч без ручного поповнення.
4. Налаштуй бюджети
Її захищають два ліміти:
- Місячний бюджет поповнення, що обмежує, скільки автопоповнення може витратити за місяць.
- Місячний ліміт кредитів. Коли його досягнуто, подальші запити повертають
402 budget_exceeded.
Вона також вмикає сповіщення електронною поштою про низький баланс, про 80% місячного ліміту та про невдалі поповнення. Сповіщення повідомляють про проблему, поки ще є час діяти.
5. Дотримуйся ліміту швидкості
Кожен ключ дозволяє 60 запитів на хвилину. З такою швидкістю 10,000 запитів займають близько 167 хвилин, менше трьох годин на одному ключі. Вона запускає просту чергу, що надсилає один запит на секунду, тож залишається нижче ліміту без сплесків. Вона може створити до 5 активних ключів, наприклад один для імпорту й один для живих пошуків застосунку, щоб заповнення архіву ніколи не блокувало запит користувача.
6. Обробляй відео без транскрипції
API повертає лише наявні субтитри YouTube. Прямі трансляції, приватні чи видалені відео та відео без субтитрів повертають 404 no_transcript. У її черзі цей статус означає позначити як пропущене й іти далі, ніколи не повторювати. Оскільки такі запити нічого не коштують, канал, повний відео без субтитрів, не випалює її бюджет.
Її петля в псевдокоді:
- Візьми з черги наступний ID відео.
- Виклич API з
format=json. - У разі успіху: розбий сегменти на фрагменти приблизно по хвилині, збережи кожен із початковим offset і зроби embedding.
- У разі
404 no_transcript: збережи позначку «немає транскрипції». - У разі
402 budget_exceeded: постав чергу на паузу й сповісти себе. - У разі помилки сервера: повтори після затримки.
7. Перевіряй баланс у коді
Перед кожною великою партією вона викликає GET /api/v1/credits. Якщо баланс менший, ніж потрібно партії, а автопоповнення вимкнене, завдання відмовляється стартувати. Це дешевий захист від недоімпортованих даних.
Що вона отримує
Після першої ночі індекс містить транскрипції майже всіх 10,000 відео, кожен фрагмент зі своїм часом початку. Коли користувач ставить запитання, асистент цитує доповідь і позначку часу, а посилання відкриває відео в цей момент. Поточні витрати невеликі: 300 нових відео на місяць це щонайбільше 600 кредитів, близько $18 за ціною пакета 5,000 кредитів, $0.030 за транскрипцію.
Якби Майя мала Pro, вона додатково щомісяця отримувала б 100 бонусних кредитів, що покриває частину цього зростання.
Де це не дотягує
- Немає субтитрів, немає транскрипції. API не розпізнає мовлення. Для відео без субтитрів потрібне інше джерело, наприклад сервіс розпізнавання мовлення, який оплачується окремо. Деякі інші API транскрипцій пропонують аудіорезерв, дивись порівняння API транскрипцій YouTube.
- Автоматичні субтитри містять помилки. Зазвичай страждають імена й жаргон. Відповідь вказує, чи доріжка автоматична, тож таким фрагментам можна дати меншу вагу або позначити їх.
- Мова це мова доріжки субтитрів. Відповідь повідомляє справжню мову, тож не припускай, що вона збігається із запитаною.
- Пропускна здатність обмежена на ключ. Дуже велике заповнення архіву це години, а не секунди.
- Повертає лише транскрипції. Розбиття на фрагменти, embedding і пошук це твоя робота. Якщо потрібен лише конспект одного відео, скористайся конспектувальником YouTube.
Джерела
Часті запитання
Скільки коштує отримання 10,000 транскрипцій YouTube?
Щонайбільше 20,000 кредитів, бо кожна транскрипція це 2 кредити. З пакетом 5,000 кредитів за $74.99 ($0.030 за транскрипцію) це близько $300. Відео без транскрипції нічого не коштують, тож реальна сума може бути меншою.
Що буде, якщо баланс закінчиться посеред довгого завдання?
Якщо автопоповнення ввімкнено, зі збереженої картки списують оплату за ще один пакет, коли баланс падає нижче обраного рівня, і завдання триває. Без нього запити зупиняються, коли кредити закінчуються.
Як не дати помилці нарахувати великий рахунок?
Задай місячний бюджет поповнення й місячний ліміт кредитів. Коли ліміт кредитів досягнуто, запити повертають 402 budget_exceeded. Також можна отримувати сповіщення електронною поштою про низький баланс, про 80% місячного ліміту та про невдалі поповнення.
Який ліміт швидкості?
60 запитів на хвилину на ключ, до 5 активних ключів. З одним запитом на секунду 10,000 відео обробляються менш ніж за три години на одному ключі.
А відео без субтитрів?
Вони повертають 404 no_transcript і нічого не коштують. API не розпізнає мовлення, тож для таких відео потрібне інше джерело.
Схожі статті
Найкращі API транскрипцій YouTube в порівнянні: sum.video, Supadata, Transcribr і бібліотека PythonЧотири способи отримати транскрипції YouTube у коді, порівняні за ціною, лімітами й надійністю: sum.video, Supadata, Transcribr та youtube-transcript-api.
Як отримати транскрипцію YouTube за допомогою API (curl, Python, JavaScript)Отримай транскрипцію будь-якого публічного відео YouTube одним HTTP-запитом. Робочі приклади на curl, Python і JavaScript, формати відповіді, коди помилок і вартість.
Останні публікації
Найкращі API транскрипцій YouTube в порівнянні: sum.video, Supadata, Transcribr і бібліотека PythonЧотири способи отримати транскрипції YouTube у коді, порівняні за ціною, лімітами й надійністю: sum.video, Supadata, Transcribr та youtube-transcript-api.
Як отримати транскрипцію YouTube за допомогою API (curl, Python, JavaScript)Отримай транскрипцію будь-якого публічного відео YouTube одним HTTP-запитом. Робочі приклади на curl, Python і JavaScript, формати відповіді, коди помилок і вартість.