sum.video logosum.video/
시나리오작성자: Péter Nagy

대규모 RAG 앱을 위한 YouTube 스크립트: 크레딧, 자동 충전, 예산

한 개발자가 YouTube 영상 10,000개를 RAG 앱에 수집합니다. 비용, 속도 제한 계산, 자동 충전과 예산으로 지출을 예측 가능하게 유지하는 방법을 살펴봅니다.

지금 YouTube 영상 요약하기

링크를 붙여 넣으면 클릭 가능한 타임스탬프와 함께 핵심을 볼 수 있어요.

RAG나 AI 앱에 대규모로 YouTube 스크립트가 필요하다면, 현실적인 구성은 선불 크레딧을 쓰는 종량제 스크립트 API, 긴 수집 작업이 멈추지 않게 하는 자동 충전, 버그가 청구서를 부풀리지 않게 하는 월간 예산입니다. 이 사례는 sum.video 스크립트 API로 이 구성을 갖추는 한 개발자를 따라갑니다.

상황

Maya는 컨퍼런스 강연에 대한 질문에 답하는 리서치 어시스턴트를 만들고 있습니다. 인덱스는 수백 개 채널의 YouTube 영상 약 10,000개를 다뤄야 하고, 이후에는 한 달에 약 300개씩 늘어납니다. 수집은 작은 서버에서 돌리며, 옆에서 지켜보고 싶지도, 청구서에 놀라고 싶지도 않습니다.

조건은 단순합니다. 예측 가능한 비용, 작업 도중 수동 충전 없음, 스크립트가 없는 영상의 깔끔한 처리입니다.

필요한 것

  • 각 영상의 일반 텍스트. 나누고 임베딩할 수 있는 상태여야 합니다.
  • 답변이 영상의 정확한 순간으로 링크할 수 있도록 타임스탬프.
  • 시작 전에 추정할 수 있는 비용.
  • 지출의 확실한 상한.

지금 YouTube 영상 요약하기

링크를 붙여 넣으면 클릭 가능한 타임스탬프와 함께 핵심을 볼 수 있어요.

단계별 진행

1. 먼저 비용 추정하기

스크립트 한 건은 2크레딧이고, 스크립트를 반환하지 않은 요청은 비용이 들지 않습니다. 영상 10,000개라면 최대 20,000크레딧입니다. $74.99(스크립트당 $0.030)의 5,000크레딧 팩을 쓰면 스크립트 10,000건은 총 약 $300이고, 자막이 없는 영상이 있으면 조금 덜 듭니다. 더 작은 팩은 스크립트당 비용이 더 큽니다. 100크레딧은 $0.090, 500크레딧은 $0.056, 2,000크레딧은 $0.038입니다. 최신 내용은 요금제 페이지에서 확인하세요.

크레딧은 한 번 구매하면 만료되지 않으므로, 개발하는 동안 구독 시계가 돌아가지 않습니다.

2. 무료 크레딧으로 시험하기

첫 API 키에는 무료 크레딧 10개, 즉 스크립트 5건이 들어 있습니다. 이것으로 몇 개 영상의 응답을 json 형식(초 단위 offset과 duration이 있는 세그먼트)과 text 형식으로 확인합니다. 요청 세부 사항은 동작하는 curl, Python, JavaScript 예제가 있는 가이드 API로 YouTube 스크립트 가져오기를 참고하세요.

3. 자동 충전 설정하기

API 대시보드에서 자동 충전을 켭니다. 규칙은 잔액이 정해 둔 수준 아래로 떨어지면 저장된 카드로 팩 하나를 더 결제하는 것입니다. 수집 작업은 수동 충전 없이 밤새 계속 돌아갑니다.

4. 예산 설정하기

두 가지 한도가 보호해 줍니다.

  • 자동 충전이 한 달에 쓸 수 있는 금액에 상한을 두는 월간 충전 예산.
  • 월간 크레딧 한도. 도달하면 이후 요청은 402 budget_exceeded를 반환합니다.

잔액 부족, 월간 한도의 80% 도달, 충전 실패에 대한 이메일 알림도 켭니다. 알림은 아직 대응할 시간이 있을 때 문제를 알려 줍니다.

5. 속도 제한 지키기

키 하나당 분당 60건까지 허용됩니다. 이 속도라면 10,000건은 약 167분, 키 하나로 3시간이 안 걸립니다. 초당 한 건을 보내는 단순한 큐를 돌려서 급증 없이 제한 아래에 머뭅니다. 활성 키를 최대 5개까지 만들 수 있으므로, 예를 들어 수집용 하나와 앱의 실시간 조회용 하나로 나누면 백필이 사용자 요청을 막는 일이 없습니다.

6. 스크립트가 없는 영상 처리하기

API는 기존 YouTube 자막만 반환합니다. 라이브 방송, 비공개 또는 삭제된 영상, 자막이 없는 영상은 404 no_transcript를 반환합니다. 큐에서 이 상태는 건너뜀으로 표시하고 넘어가라는 뜻이며, 절대 재시도하지 않습니다. 이런 요청은 비용이 들지 않으므로, 자막 없는 영상으로 가득한 채널이 있어도 예산이 줄지 않습니다.

의사 코드로 쓴 반복문은 다음과 같습니다.

  1. 큐에서 다음 영상 ID를 가져옵니다.
  2. format=json으로 API를 호출합니다.
  3. 성공하면 세그먼트를 약 1분 단위의 조각으로 나누고, 각 조각을 시작 오프셋과 함께 저장하고 임베딩합니다.
  4. 404 no_transcript이면 "스크립트 없음" 표시를 저장합니다.
  5. 402 budget_exceeded이면 큐를 멈추고 스스로에게 알립니다.
  6. 서버 오류이면 잠시 뒤 재시도합니다.

7. 코드로 잔액 확인하기

큰 배치를 시작하기 전에는 매번 GET /api/v1/credits를 호출합니다. 잔액이 배치에 필요한 양보다 적고 자동 충전이 꺼져 있으면 작업은 시작을 거부합니다. 반쯤 끝난 가져오기를 막는 저렴한 안전장치입니다.

최종 결과

첫날 밤이 지나면 인덱스에는 영상 10,000개 거의 전부의 스크립트가 들어 있고, 각 조각에는 시작 시간이 붙어 있습니다. 사용자가 질문하면 어시스턴트는 강연과 타임스탬프를 인용하고, 링크는 그 순간부터 영상을 엽니다. 이후 비용은 작습니다. 한 달 새 영상 300개는 최대 600크레딧이며, 5,000 팩의 스크립트당 $0.030 요율로 약 $18입니다.

Maya가 Pro를 구독하면 매달 보너스 크레딧 100개도 받게 되어, 이 증가분의 일부를 충당할 수 있습니다.

부족한 점

  • 자막이 없으면 스크립트도 없습니다. API는 오디오를 받아 적지 않습니다. 자막이 없는 영상에는 음성 인식 서비스 같은 다른 수단이 필요하고, 그 비용은 따로 냅니다. 일부 다른 스크립트 API는 오디오 대체 기능을 제공합니다. YouTube 스크립트 API 비교를 보세요.
  • 자동 생성 자막에는 오류가 있습니다. 이름과 전문 용어가 주로 피해를 봅니다. 응답에 트랙이 자동 생성인지 표시되므로 그런 조각에 가중치를 두거나 표시할 수 있습니다.
  • 언어는 자막 트랙의 언어입니다. 응답에 실제 언어가 표시되므로, 요청한 언어와 같다고 가정하지 마세요.
  • 처리량은 키마다 제한됩니다. 매우 큰 백필은 몇 초가 아니라 몇 시간 단위의 작업입니다.
  • 스크립트만 반환합니다. 나누기, 임베딩, 검색은 여러분의 몫입니다. 영상 하나의 요약만 필요하다면 YouTube 요약기를 쓰세요.

출처

자주 묻는 질문

YouTube 스크립트 10,000건을 가져오는 데 얼마가 드나요?

스크립트 한 건이 2크레딧이므로 최대 20,000크레딧입니다. $74.99(스크립트당 $0.030)의 5,000크레딧 팩이라면 약 $300입니다. 스크립트가 없는 영상은 비용이 들지 않으므로 실제 합계는 더 낮을 수 있습니다.

긴 작업 도중 잔액이 떨어지면 어떻게 되나요?

자동 충전이 켜져 있으면 잔액이 정해 둔 수준 아래로 떨어지는 즉시 저장된 카드로 팩 하나가 더 결제되어 작업이 계속됩니다. 꺼져 있으면 크레딧이 떨어질 때 요청이 멈춥니다.

버그로 청구서가 불어나는 것을 어떻게 막나요?

월간 충전 예산과 월간 크레딧 한도를 설정하세요. 크레딧 한도에 도달하면 요청은 402 budget_exceeded를 반환합니다. 잔액 부족, 월간 한도의 80% 도달, 충전 실패에 대한 이메일 알림도 받을 수 있습니다.

속도 제한은 얼마인가요?

키 하나당 분당 60건이며 활성 키는 최대 5개입니다. 초당 한 건이면 영상 10,000개는 키 하나로 3시간이 안 걸립니다.

자막이 없는 영상은 어떻게 되나요?

404 no_transcript를 반환하며 비용이 들지 않습니다. API는 오디오를 받아 적지 않으므로 그런 영상에는 다른 수단이 필요합니다.

지금 YouTube 영상 요약하기

링크를 붙여 넣으면 클릭 가능한 타임스탬프와 함께 핵심을 볼 수 있어요.

ragyoutube 스크립트 apiai 앱자동 충전api 예산

함께 읽을 글

최신 글

어떤 YouTube 영상이든 몇 초 만에 요약

sum.video 사용해 보기