블로그 글 영상 변환 AI: 새 글마다 영상 만들기

블로그 글 영상 변환 AI는 글을 내레이션 영상으로 만듭니다. 자동화하려면 새 글의 텍스트를 지출 상한, 글에 묶인 키와 함께 영상 에이전트에 보내세요.

읽는 시간 5분Sume
전체 글

블로그 글 영상 변환 AI는 글 한 편을 짧은 영상으로 만듭니다. 글에서 뽑은 스크립트를 화면 위에 보이스오버로 읽어 주는 영상입니다. 이를 자동화하려면 새 글이 게시될 때 그 글의 텍스트를 영상 에이전트에 보내고, 실행에 지출 상한과 그 글에 묶인 키를 붙인 뒤, 완성된 영상을 기다리는 대신 웹훅으로 받으세요.

아래 Sume 관련 내용은 2026-09-27에 확인한 Agent Completions, Format 호출하기 (영문), 모범 사례 문서에서 가져왔습니다.

영상 실행은 각 글에서 무엇을 받아야 하나요?

글 자체의 텍스트, 즉 제목과 본문을 실행의 input에 담아 보내세요. 그래야 게시한 문장 그대로 영상이 만들어집니다. Agent Completion에서 Sume는 input을 통째로 실행 워크스페이스의 파일에 기록하고, 이를 지시가 아니라 데이터로만 다룹니다. 프롬프트에는 그 파일을 가리키는 포인터만 실립니다. 그다음 지시문에서 그 데이터로 무엇을 만들지 말하면 됩니다.

글을 지시문에 넣지 마세요. Format 실행에서 input은 최대 2 MiB까지 받고 절대 잘리지 않지만, instruction은 앞부분 약 4,000자만 프롬프트 텍스트로 실행에 전달됩니다.

새 글마다 영상을 하나씩 시작하려면 어떻게 하나요?

글이 게시됐다는 사실을 이미 아는 곳에서 Sume를 호출하세요. CMS의 게시 이벤트, 배포 과정의 한 단계, 또는 피드에서 새 글을 확인하는 작업이 그런 곳입니다. 아직 브리프를 다듬는 중이라면 Agent Completion을 쓰세요. 매번 보내는 지시문으로 Sume 에이전트를 실행합니다. generation_spend_cap_usd는 필수이며 기본값이 없습니다. 금액은 API 요금의 요율을 보고 정하세요.

Idempotency-Key는 글에서 유도하세요. 예를 들어 글의 slug에, 새 편집본이 필요할 때 올리는 버전을 붙입니다. 같은 키를 다시 보내면 두 번째 유료 실행 대신 idempotency_hit: true와 함께 원래 영수증이 돌아오고, 다른 페이로드로 재사용하면 409 idempotency_conflict가 돌아옵니다.

Agent Completions와 Run 웹훅 (영문) 기준, 2026-09-27 확인.
작업 요소필드문서 내용
글의 제목과 본문input파일에 통째로 기록됨. 지시가 아니라 데이터
무엇을 만들지instruction 또는 messages둘 중 정확히 하나만 보내고, 둘 다 보내지 않음
글의 식별자Idempotency-Key 헤더재전송하면 원래 영수증을 돌려줌. 다른 페이로드는 409 idempotency_conflict
지출 한도generation_spend_cap_usd필수, 기본값 없음
결과를 받을 곳communication.webhook_url실행이 완료되거나 실패하면 서명된 POST를 한 번 받는 공개 HTTPS URL
curl -sS -X POST "https://api.sume.com/v1/agent/completions" \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: blog-video-friday-deploys-v1" \
  -d '{
    "instruction": "Make a vertical 9:16 video with a voiceover from the article in the input. Use only facts from the article.",
    "input": {
      "title": "Why we deploy on Fridays",
      "body": "Full article text goes here."
    },
    "generation_spend_cap_usd": 10,
    "communication": { "webhook_url": "https://example.com/hooks/sume" }
  }'

완성된 영상은 어떻게 받나요?

웹훅으로 받습니다. 실행이 완료되거나 실패하면 Sume가 communication.webhook_url로 서명된 POST를 한 번 보냅니다. 완료된 실행은 output을 채우는데, 에이전트의 마무리 텍스트는 output.text에, 생성된 미디어는 output.videos에 담기며, artifacts도 함께 채워집니다. 미디어 URL은 내구성 있는 media.sume.com HTTPS URL이므로 영상 링크를 글 옆에 저장해 둘 수 있습니다.

웹훅이 없다면 next_action이 더 이상 poll_status가 아닐 때까지 GET /v1/agent-runs/{run_id}를 폴링하세요.

브리프는 언제 Format으로 만들어야 하나요?

모든 글을 같은 방식으로 처리해야 할 때입니다. Format은 저장된 레시피입니다. 에이전트 채팅에서 에이전트에게 브리프를 저장해 달라고 요청한 뒤, input에 글만 담아 handle과 slug로 호출하세요. 문서는 둘을 이렇게 나눕니다. 저장된 레시피가 있으면 Format을 우선하세요. Format이 도구, 지출 게이트, 하우스 스타일을 담당하고 클라이언트는 브리프만 보내기 때문입니다. 아직 저장한 Format이 없거나 브리프가 매번 바뀐다면 Agent Completions를 쓰세요. 호출 방법은 Sume Format이란?에서 다룹니다.

이 구성으로 할 수 없는 것은 무엇인가요?

영상을 부분부터 직접 조립하고 싶다면, 얼굴 없는 영상 API 글에서 내레이션, B-roll, 음악을 단계별로 조립합니다. 에이전트 방식에는 다음과 같은 한계가 있습니다.

  • 블로그를 지켜보지 않습니다. 이 구성에서는 모든 실행이 여러분이 보내는 API 호출에서 시작하므로, 게시 훅이나 피드 확인 작업이 트리거입니다.
  • 첨부는 이미지만 됩니다. 현재 첨부 타입은 input_image뿐이므로, 글은 PDF가 아니라 input에 텍스트로 보내세요.
  • 스트리밍이 없습니다. 생성 호출은 영수증과 함께 202를 반환하며, 그 영수증은 폴링하거나 웹훅으로 받습니다. 스트리밍과 동기식 응답은 아직 제공하지 않습니다.
  • 후속 턴이 없습니다. 모든 completion은 새 스레드에서 실행되고 이전 스레드 이어 가기는 아직 제공하지 않으므로, 새 편집본은 새 실행입니다.

출처

관련 글

활용 사례 카테고리의 다른 글

활용 사례 글 전체 보기

작성자 Sume