개인화 영상 대량 제작: 레시피 하나, 사람마다 실행 하나

개인화 영상을 대량으로 만들려면 레시피 하나를 고정하고, 사람마다 정보를 입력으로 넘겨 요청당 최대 100명씩 묶은 뒤, ID로 영상을 다시 연결하세요.

읽는 시간 5분Sume
전체 글

개인화 영상을 대량으로 만들려면 영상 레시피 하나를 고정해 두고 사람마다 다른 데이터(이름, 회사, 혜택)만 바꾸고, 목록에서 한 사람당 영상 하나를 생성한 뒤, 각자에게 자기 영상의 링크를 보내세요. 작업의 대부분은 기록 관리입니다. 사람마다 무엇이 달라지는지, 완성된 각 영상을 어느 행에 다시 연결하는지, 그 링크를 다른 누가 열 수 있는지를 관리해야 합니다.

아래 Sume 관련 내용은 2026-09-27에 확인한 대량 실행, Format 호출하기 (영문), 실행과 결과 (영문) 문서에서 가져왔습니다.

사람마다 무엇이 바뀌고, 무엇이 고정되나요?

레시피는 고정됩니다. 스타일, 길이, 구성, 모든 영상이 반드시 전해야 하는 내용이 여기에 속합니다. Sume에서는 이것이 handle과 slug로 호출하는 저장된 레시피인 Format입니다. 사람마다 다른 정보는 실행의 input에 담아 보내며, 이는 직접 형태를 정하는 JSON 객체입니다. Sume는 input을 통째로 실행 워크스페이스의 파일에 기록하고, 에이전트에게 이것이 지시가 아니라 호출자가 제공한 데이터라고 알립니다. 문서는 고객의 메시지를 instruction이 아니라 바로 이곳에 들어가야 하는 텍스트의 예로 듭니다.

목록 전체를 돌리기 전에 실제 행 몇 개로 레시피를 시험해 보세요. API로 하는 실행은 무인 실행이므로, 영상이 만들어지기 전에 하나하나 검토하는 사람이 없습니다. 그다음에는 대량 실행 요청 하나로 최대 100명을 처리합니다.

curl -sS -X POST "https://api.sume.com/v1/formats/acme/welcome-video/bulk-runs" \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: welcome-batch-001" \
  -d '{
    "concurrency": 4,
    "items": [
      {
        "input": { "first_name": "Dana", "company": "Example Co" },
        "idempotency_key": "lead-4812-welcome-v1",
        "generation_spend_cap_usd": 10,
        "communication": { "webhook_url": "https://example.com/hooks/sume" }
      },
      {
        "input": { "first_name": "Luis", "company": "Sample Labs" },
        "idempotency_key": "lead-4813-welcome-v1",
        "generation_spend_cap_usd": 10,
        "communication": { "webhook_url": "https://example.com/hooks/sume" }
      }
    ]
  }'

요청 하나로 몇 명까지 처리할 수 있나요?

최대 100명입니다. 대량 실행 요청 하나에는 항목을 1–100개 담을 수 있고, 각 항목은 단일 실행과 같은 본문이며, 그중 1–16개가 동시에 진행됩니다. 따라서 1,000명 목록은 요청 열 개입니다. 큐의 completed는 모든 영상이 성공했다는 뜻이 아니라 모든 항목이 종료됐다는 뜻일 뿐이므로, 무엇이든 보내기 전에 counts.failed를 확인하세요. 큐가 어떻게 비워지는지는 Sume Format 대량 실행에서 다룹니다.

대량 실행, Format 호출하기 (영문), 아바타 영상 생성 기준, 2026-09-27 확인.
항목한도
대량 실행 요청당 인원(items)1–100
큐당 동시에 진행하는 실행(concurrency)1–16
사람별 데이터(input)최상위 키 64개, 2 MiB
실행당 지출 상한(generation_spend_cap_usd)최대 $500. 생략하면 Format의 상한을 물려받음
Idempotency-Key최대 255자, 범위는 Format 하나
말하는 영상 스크립트추정 길이 4–60초

각 영상을 맞는 사람과 어떻게 연결하나요?

출력으로는 연결할 수 없습니다. input은 구조화 출력에 들어가지 않으므로, 보낸 이름이나 ID는 실행이 우연히 그 값을 되풀이할 때만 돌아옵니다. 문서는 식별자를 여러분 쪽에 보관하고, 실행 ID나 직접 보낸 Idempotency-Key를 키로 삼으라고 합니다.

  • 큐의 items[]를 여러분의 행과 짝지어 저장하세요. 항목은 제출한 순서를 유지하며, 각 항목에는 index가 있고 디스패치된 뒤에는 자식 실행의 run_id도 담깁니다.
  • 예제처럼 각 항목에 행 ID로 만든 고유한 idempotency_key를 주세요. 현재 코드에서는 그 키가 자식 실행 자체의 키가 되고, 실행 영수증은 이를 trigger.idempotency_key로 보고하며, 실행 웹훅의 payload가 바로 그 영수증입니다.
  • 전달 중복은 봉투의 request_id로 제거하세요. 이 값은 실행 ID와 같고, 재시도할 때마다 그대로 반복됩니다.

각자의 영상을 비공개로 유지할 수 있나요?

링크만큼만 비공개입니다. 실행 미디어 URL은 만료되지 않는 내구성 있는 media.sume.com HTTPS URL이며, URL을 가진 사람이면 누구나 열 수 있습니다. 문서는 제품에 고객별 접근 제어가 필요하다면 프록시를 두거나 복사해 두라고 합니다. 일반 링크로 충분하지 않다면 파일을 자체 스토리지로 복사하고, 직접 관리하는 링크를 보내세요.

말하는 프리젠터가 사람마다 이름을 불러 줄 수 있나요?

네, 스크립트에 이름을 적으면 됩니다. POST /v1/avatar-1.0/talking-video는 준비된 아바타(avatar_handle)와 script를 말하는 영상으로 바꾸며, Sume가 4–60초로 추정하는 스크립트를 받습니다. 한 사람당 요청을 하나씩, 각각 고유한 Idempotency-Key와 함께 보내세요. 현재 코드에서 아바타는 영어로만 말합니다. 목록 전체를 보내기 전에 이름 몇 개를 샘플로 들어 보세요. 호출 방법은 말하는 아바타 영상 API에서 다룹니다.

출처

관련 글

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

활용 사례 글 전체 보기

작성자 Sume