Seedance 2.5 is live — 30-second cinematic video with native audio & real-person references
NSFW 비디오 API 가이드: Seedream, Seedance, Wan, H3
2026/09/03

NSFW 비디오 API 가이드: Seedream, Seedance, Wan, H3

Seedream 5.0 Pro로 성인용 키프레임을 승인한 후 Seedance, Wan, H3로 애니메이션하고 동의 확인을 추가하여 안정적인 NSFW 비디오 API 워크플로를 구축합니다.

신뢰할 수 있는 NSFW 비디오 API 워크플로를 구축하는 방법은 정지 이미지와 모션을 분리하는 것입니다. Seedream 5.0 Pro로 하나의 소스 프레임을 만들고 승인한 후, Seedance 2.0 또는 2.5, Wan 3.0 또는 Video Prime, MiniMax H3로 해당 프레임을 애니메이션하세요. 이미지 모델이 외형을 담당합니다. 비디오 모델이 움직임, 카메라, 타이밍, 사운드를 담당합니다.

"NSFW 지원"은 모델 이름 하나만의 속성이 아닙니다. 모델 기능, 엔드포인트의 콘텐츠 규칙, 목적지 규칙은 서로 다른 계약입니다. 이 가이드는 합법적이고 성인 전용이며 동의하는 제작을 다룹니다. 미성년자, 모호한 나이, 비동의 초상권, 공인, 거부 회피는 포함하지 않습니다.

TL;DR

  • Seedream 5.0 Pro로 소스 프레임을 만드세요. 모션에 비용을 지출하기 전에 신원, 겉보기 성인 나이, 의류, 배경, 조명, 프레임을 승인하세요.
  • 긴 샷이나 레퍼런스가 많을 때는 Seedance 2.5를 선택하세요. 최대 30초이며 대량의 멀티모달 레퍼런스 세트를 받습니다.
  • 첫/마지막 프레임 컨트롤이 중요할 때는 Wan 3.0을 선택하세요. 230초, 480P1080P, 네이티브 오디오를 지원하며 Video Prime은 더 빠릅니다.
  • 짧은 2K 샷에 네이티브 스테레오가 필요하면 MiniMax H3을 선택하세요. H3는 혼합된 텍스트, 이미지, 비디오, 오디오 컨텍스트에서 최대 15초까지 생성합니다.
  • 중재를 엔드포인트 계약으로 취급하세요. 선택한 엔드포인트의 현재 문서와 약관을 확인하세요. 모델 제품군 이름은 수락을 보장하거나 명시적 콘텐츠를 합법적 또는 허용 가능하게 만들 수 없습니다.
  • 짧고 저렴하게 초안을 작성하세요. 가장 낮은 유용한 해상도로 4~6초를 테스트한 후 결과를 검토하고 최종 렌더링을 요청하세요.

API가 답해야 할 질문은 무엇인가요?

경로를 선택하기 전에 두 가지 직접적인 질문에 답하세요.

  1. 정확한 엔드포인트가 소스 미디어를 수락할 수 있고 샷에 필요한 컨트롤을 지원하나요?
  2. 해당 엔드포인트의 현재 문서와 약관에서 요청하는 카테고리에 대해 무엇을 말하나요?

첫 번째 질문은 미디어 기능에 관한 것입니다. 두 번째는 정확한 경로와 그 계약에 관한 것입니다. 선택한 모델 ID를 위해 둘 다 확인하세요.

NSFW 비디오 API가 솔직하게 약속할 수 있는 것

사람들은 "NSFW API"를 여러 다른 것을 설명하기 위해 사용합니다. 이들을 하나의 주장으로 축약해서는 안 됩니다.

주장뜻할 수 있는 것증명하지 않는 것
모델이 이미지-비디오를 지원합니다제공된 프레임을 애니메이션할 수 있습니다특정 호스트가 모든 성인 카테고리를 허용합니다
호스팅된 경로가 덜 제한적입니다한 가지 선택적 확인 또는 경로 선택이 변합니다모든 안전 레이어가 꺼져 있습니다
요청 필드가 필터를 비활성화할 수 있습니다문서화된 필드가 해당 API 구현에 영향을 줍니다같은 필드가 모든 호스트나 공식 엔드포인트에 존재합니다
프롬프트가 수락되었습니다생성이 시작되었습니다완료된 비디오가 출력 검토를 통과할 것입니다
콘텐츠는 어딘가에서 합법입니다한 관할권이 허용할 수 있습니다API, 결제, 또는 게시자 약관이 허용합니다

모델 제품군 또는 계층 이름에서 중재 동작을 추론하지 마세요. 선택한 모델 ID에 대해 정확한 라이브 스키마와 약관을 확인하세요. Official, Fast, Face, 또는 Max 레이블은 다른 변형과 컨트롤을 공유한다는 것을 보장하지 않습니다.

1단계: 승인된 Seedream 5.0 Pro 소스 프레임 만들기

텍스트-비디오는 외형과 모션을 동시에 열어 둡니다. 먼저 프레임을 고정하세요. Seedream 5.0 Pro는 이미지-텍스트 정렬, 구조적 일관성, 사실적인 조명과 피부 질감, 다중 이미지 융합, 정밀한 편집을 위해 구축되었습니다[1].

생성하기 전에 작은 신원 패킷을 구축하세요:

  1. 원본 가상 신원을 사용하거나, 합성 미디어를 명시적으로 다루고 계획된 배포를 포함하는 릴리스를 받은 동의하는 성인을 사용하세요.
  2. 프롬프트 외부에 나이 확인 결과를 기록하세요. 프롬프트에 "나이 30"을 쓰는 것은 시각적 지시이지, 나이 증명이 아닙니다.
  3. 5가지 앵커를 고정하세요: 얼굴, 머리, 의류, 방, 조명 방향.
  4. 최종 종횡비로 생성하세요: 9:16 수직 또는 16:9 가로.
  5. 샷당 하나의 불변 승인 프레임을 유지하세요. 자산 ID와 해시를 지정하여 나중의 편집이 그것을 조용히 바꿀 수 없도록 하세요.

안전한 소스 프레임 프롬프트는 단순할 수 있습니다. 모델은 시각적 요약이 필요하지, 완곡어법의 단락이 필요하지 않습니다:

Original fictional adult performer, age 30, no resemblance to a real person.
Private editorial studio, opaque black satin robe, medium portrait.
Warm practical lamp camera-right, soft window fill camera-left.
Natural skin texture, dark wood background, 50 mm lens, 9:16 composition.
Keep both hands visible and anatomically correct. No text, logo, or extra person.

예시는 의도적으로 노골적이지 않습니다. 오타와 암호화된 언어는 모션을 개선하거나 거부된 요청을 수락 가능하게 만들지 않습니다.

진행하기 전에 100%에서 전체 프레임을 검사하세요: 겉보기 나이, 얼굴, 손가락, 팔다리, 반사, 거울, 의류 경계, 우발적 텍스트. 비디오는 이미 첫 프레임에 있던 결함을 증폭하는 경향이 있습니다.

2단계: 샷별로 비디오 모델 선택하기

유용한 단일 "최고" 모델은 없습니다. 샷 목록에 따라 선택하세요.

모델검증된 제작 형태사용하세요
Seedance 2.0최대 15초; 혼합된 이미지, 비디오, 오디오 레퍼런스짧은 샷이나 복잡한 모션일 때
Seedance 2.5최대 30초; 30개 이미지, 10개 비디오, 10개 오디오 클립; 타임스탬프 편집긴 테이크나 큰 레퍼런스 세트일 때
Wan 3.0230초, 30fps, 480P1080P, 첫/마지막 프레임, 네이티브 오디오계획된 시작/종료 구성일 때
Wan 3.0 Video Prime같은 광범위한 작업 제품군, 속도에 최적화회전 민감 작업일 때
MiniMax H3최대 15초, 2K, 네이티브 스테레오, 멀티모달 컨텍스트짧은, 사운드 중심 샷일 때

ByteDance는 Seedance 2.0을 텍스트, 이미지, 오디오, 비디오 입력이 있는 통합 오디오-비디오 모델로 설명하며, 최대 9개 이미지, 3개 비디오, 3개 오디오 클립을 포함합니다[2]. Seedance 2.5는 레퍼런스 예산과 최대 지속 시간을 확장합니다[3]. Alibaba의 Wan 3.0 문서는 첫 프레임과 첫/마지막 프레임 컨트롤, 비디오 확장, 최대 20개의 혼합된 레퍼런스 자료를 추가합니다[4]. MiniMax H3는 샷이 네이티브 스테레오와 2K 출력을 필요로 할 때의 콤팩트 옵션입니다[5].

이것들은 기능이지, 수락 비율 순위가 아닙니다. 공정한 순위는 같은 프레임, 프롬프트, 지속 시간, 해상도, 경로, 검토 기준이 필요합니다.

3단계: 신원을 잃지 않고 프레임 전달하기

큐잉과 생성을 통과하는 불변 HTTPS 이미지 또는 서명된 URL을 사용하세요. 10분 URL은 작업이 시작되기 전에 만료될 수 있습니다.

그런 다음 올바른 이미지 역할을 선택하세요:

  • 첫 프레임은 비디오가 그 정확한 구성에서 시작한다는 뜻입니다. 프레임 1 연속성이 우선일 때 사용하세요.
  • 첫 프레임과 마지막 프레임은 양쪽 끝을 제한합니다. 계획된 전환을 위해 사용하되, 두 이미지가 물리적으로 가능한 경로를 설명하는지 확인하세요.
  • 레퍼런스 이미지는 비디오가 그 구성에서 열리도록 요구하지 않으면서 신원, 의류, 객체, 또는 스타일을 제공합니다.

하나의 승인된 첫 프레임으로 시작하세요. 추가 레퍼런스는 머리, 의류, 조명에서 충돌할 수 있으므로, 더 많은 파일이 자동으로 더 많은 컨트롤을 의미하지 않습니다.

4단계: 모션을 쓰세요, 다른 초상화가 아니라

Seedream 프레임은 이미 그 사람과 방이 어떻게 보이는지에 답합니다. 비디오 프롬프트는 시간에 따라 무엇이 변하는지에 답해야 합니다.

이 순서를 사용하세요:

Duration and shot: 5 seconds, one continuous medium shot.
Subject motion: the adult performer turns toward the lamp and takes one slow step.
Camera: locked for 2 seconds, then a gentle 10% push-in.
Preserve: same identity, apparent adult age, robe, hair, room, and lighting.
Audio: quiet room tone and soft fabric movement; no dialogue.
Avoid: cuts, extra people, wardrobe changes, face drift, text, or logos.

하나의 액션과 하나의 카메라 무브는 초안에 충분합니다. 주체가 돌고, 걷고, 앉고, 말하고, 표정을 바꾸고, 카메라가 5초 내에 회전하면, 모델은 6개의 움직이는 목표를 협상해야 합니다. 그것을 샷으로 나누세요.

5단계: 비동기 API 연결

비디오 API는 보통 파일 전에 작업 ID를 반환합니다. 엔드포인트와 모델 ID를 환경 변수에 유지하고 호스트의 현재 필드 이름을 따르세요.

const apiKey = process.env.AI_MEDIA_API_KEY!;
const imageEndpoint = process.env.IMAGE_GENERATION_URL!;
const videoEndpoint = process.env.VIDEO_GENERATION_URL!;
const taskEndpoint = process.env.TASK_STATUS_URL!;

async function postJson(url: string, body: unknown) {
  const response = await fetch(url, {
    method: 'POST',
    headers: {
      Authorization: `Bearer ${apiKey}`,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify(body),
  });

  const data = await response.json();
  if (!response.ok) throw new Error(JSON.stringify(data));
  return data;
}

async function waitForTask(taskId: string) {
  for (let attempt = 0; attempt < 90; attempt += 1) {
    const response = await fetch(`${taskEndpoint}/${taskId}`, {
      headers: { Authorization: `Bearer ${apiKey}` },
    });
    const task = await response.json();

    if (task.status === 'completed') return task;
    if (task.status === 'failed') {
      throw new Error(`${task.error_code ?? 'failed'}: ${task.error ?? ''}`);
    }
    await new Promise((resolve) => setTimeout(resolve, 4000));
  }
  throw new Error('Task timed out locally; check its status before resubmitting.');
}

const imageTask = await postJson(imageEndpoint, {
  model: process.env.SEEDREAM_MODEL_ID,
  prompt: process.env.APPROVED_IMAGE_PROMPT,
  aspect_ratio: '9:16',
  resolution: '1K',
});

const image = await waitForTask(imageTask.task_id);
// Human approval and rights checks happen here.

const videoTask = await postJson(videoEndpoint, {
  model: process.env.VIDEO_MODEL_ID,
  prompt: process.env.APPROVED_MOTION_PROMPT,
  first_frame_url: image.output_url,
  duration: 5,
  resolution: '480P',
});

const video = await waitForTask(videoTask.task_id);
console.log(video.output_url);

이것은 범용 스키마가 아닌 어댑터 예시입니다. 호스트는 이미지 필드, 미디어 배열, 해상도 케이싱, 작업 응답에서 다릅니다. 한 번 매핑하세요. 선택한 API가 문서화할 때만 필터 필드를 구현하세요. 모델 이름은 그 필드를 안전하게 정의하지 않습니다.

6단계: 먼저 초안을 작성한 후 수락된 샷에 비용을 지불하세요

4~6초부터 가장 낮은 유용한 해상도로 시작하세요. Wan 3.0은 480P에서 초안을 작성할 수 있습니다. 가능한 곳에서 버전을 비교하는 동안 프롬프트, 소스 해시, 모델 ID, 경로, 시드를 고정된 상태로 유지하세요.

수락된 클립당 비용을 추적하세요, 제출된 작업당이 아니라:

수락된 클립 비용 =
  (모든 소스 이미지 시도 + 모든 비디오 시도 + 검토/저장소 비용)
  / 수락된 클립

저렴한 거부된 초안은 절약이 아닙니다. 더 비싼 모델은 재시도가 더 적게 필요하면 수락된 클립당 비용이 더 적을 수 있습니다. 자신의 승인된 테스트 세트로 측정하세요.

단계별 실패 읽기

실패 지점가능한 클래스다음 행동
작업 ID 전에 요청이 거부됨잘못된 필드, 미디어, 계정, 또는 사전 확인계약 오류를 수정하세요; 맹목적으로 재시도하지 마세요
작업이 시작된 후 정책 코드로 실패모델 또는 제공자 결정이것을 최종으로 취급하고 요청을 약관에 대해 검토하세요
작업이 완료되지만 파일이 해제되지 않음출력 검토출력 카테고리를 검토하세요; 단어를 변경하여 통과할 때까지 계속하지 마세요
서비스가 소스 이미지를 가져올 수 없음만료된 URL, 차단된 호스트, MIME, 또는 크기자산 배송을 수리하세요; 이것은 중재의 증거가 아닙니다
폴러 시간 초과로컬 타임아웃 또는 긴 큐중복 청구 가능 작업을 만들기 전에 같은 작업 ID를 쿼리하세요

성인 전용 컨트롤은 모델 외부에 거합니다

생성 호출은 시스템의 중간이지, 시작이 아닙니다. Seedream에 자산이 도달하기 전에 누가 소유했는지, 무엇이 권한이 있는지 기록하세요. 비디오가 게시되기 전에 프롬프트만이 아닌 렌더링된 파일을 검토하세요.

최소한 유지하세요:

  • 묘사된 모든 실제 인물에 대한 나이 보증 결정;
  • 생성, 편집, 저장소, 배포를 포함하는 서명된 릴리스;
  • 공인 및 비동의 실제 인물 성화화에 대한 블록;
  • 미성년자 및 모호한 나이 결과에 대한 단단한 거부;
  • 입력 해시, 출력 해시, 모델 ID, 타임스탬프, 검토자 결정;
  • 접근 제어, 보고, 삭제, 삭제 절차;
  • 현지 법, 게시자 규칙, 결제 규칙, 연령 제한에 대한 목적지 확인.

친밀한 이미지를 만들도록 동의는 그것을 배포하도록 동의가 자동이 아닙니다. 미국 법무부가 그 구별을 명시적으로 만듭니다[6]. NCMEC는 또한 합성 아동 성적 학대 자료로부터의 심각한 해악과 법적 위험을 문서화합니다. 가상 또는 생성 출력은 허점이 아닙니다[7].

출처에 대해, 당신의 도구 체인이 그것을 지원할 때 위조 방지 기록을 첨부하세요. C2PA 콘텐츠 자격증명은 서명된 매니페스트로 자산에 결합된 생성 및 편집에 대한 주장을 전달할 수 있습니다[8]. 그들은 동의 기록을 대체하지 않지만 제작 이력을 감사하기 쉽게 만듭니다.

최종 검토 체크리스트

모든 답이 그렇지 않으면 클립을 승인하지 마세요:

  • 묘사된 모든 사람이 명백하게 성인인가요?
  • 신원이 가상, 허가됨, 또는 구체적인 서면 동의로 커버되나요?
  • 셀러브리티, 공인, 또는 우발적 유사성이 없나요?
  • 출력이 승인된 프레임의 일부가 아닌 추가 인물을 피하나요?
  • 얼굴, 손, 팔다리, 반사, 의류, 겉보기 나이가 안정적인가요?
  • 모션이 새로운 행동을 추가하지 않고 승인된 샷과 일치하나요?
  • 오디오는 의도하지 않은 이름, 대사, 인식 가능한 음악이 없나요?
  • 입력, 프롬프트, 모델, 출력, 검토자, 권리 기록이 연결되어 있나요?
  • 의도한 게시자가 목표 지역에서 최종 카테고리를 허용하나요?

FAQ

Seedance, Wan, MiniMax H3은 검열되지 않은가요?

모델 제품군 이름에서 그것을 추론하지 마세요. 정확한 엔드포인트의 현재 문서와 약관을 확인하세요. 이 가이드는 Seedance, Wan, MiniMax H3에 대해 보편적 수락 주장을 하지 않습니다.

초보자는 어느 모델을 선택해야 하나요?

긴 또는 레퍼런스가 많은 테이크에는 Seedance 2.5를, 첫/마지막 프레임 컨트롤에는 Wan 3.0을, 회전이 우선일 때 Wan Video Prime을, 네이티브 스테레오가 있는 짧은 2K 결과에는 MiniMax H3을 사용하세요. 품질을 순위 매기기 전에 같은 안전한 샷을 테스트하세요.

Seedream 5.0 Pro가 소스 이미지를 생성할 수 있나요?

그렇습니다. Seedream에서 신원, 구성, 조명, 의류, 종횡비를 고정한 후 승인된 이미지를 비디오 모델로 보내세요.

MiniMax H3 Max는 H3의 중재 동작을 상속하나요?

그렇다고 가정하지 마세요. 정확한 H3 Max 모델 ID의 현재 필드와 약관을 확인하세요.

실제 인물을 애니메이션할 수 있나요?

생성된 사용과 배포를 위한 구체적인 허가를 준 검증된 성인에게만 해당됩니다. 일반적인 사진 릴리스는 합성 친밀 미디어를 포함하지 않을 수 있습니다.

하나의 콘텐츠 확인을 끄면 결과를 보장하나요?

아닙니다. 설정은 하나의 사전 확인, 출력 확인, 또는 경로 선택에 영향을 줄 수 있습니다. 모든 모델, 공급자, 법적, 또는 출판 제한을 재정의하지 않습니다.

"검열되지 않음"이라는 단어가 아니라 승인을 중심으로 구축하세요

작동하는 NSFW 비디오 API 파이프라인은 일상적입니다: 합법적인 성인 소스 프레임을 승인하고, 비디오 모델을 선택하고, 저렴한 초안을 실행하고, 파일을 검토하고, 권리 기록을 유지하세요. Seedream 5.0 Pro가 키프레임을 만듭니다. Seedance, Wan, 또는 MiniMax H3가 그것을 애니메이션합니다.

신뢰성은 각 결정을 올바른 단계에 할당하는 것에서 나옵니다. 나이, 동의, 권리, 출판, 승인을 모델 외부에 유지하세요.

References

  1. ByteDance Seed. Beyond Generation, It Understands Design | Introducing Seedream 5.0 Pro. Retrieved September 2026 from seed.bytedance.com/en/blog/beyond-generation-it-understands-design-introducing-seedream-5-0-pro
  2. ByteDance Seed. Seedance 2.0 Official Launch. Retrieved September 2026 from seed.bytedance.com/blog/seedance-2-0-official-launch
  3. ByteDance Seed. One-take Creation, Flexible Referencing: Introducing Seedance 2.5. Retrieved September 2026 from seed.bytedance.com/en/blog/one-take-creation-flexible-referencing-introducing-seedance-2-5
  4. Alibaba Cloud Model Studio. Wan3.0 Video Generation. Retrieved September 2026 from docs.modelstudio.console.alibabacloud.com/en/model-studio/wan3-video-generation-guide
  5. MiniMax. MiniMax H3: An Open Model Breaking the Boundaries Between Tasks and Modalities. Retrieved September 2026 from minimax.io/blog/minimax-h3
  6. U.S. Department of Justice. Sharing of Intimate Images Without Consent: Know Your Rights. Retrieved September 2026 from justice.gov/ovw/sharing-intimate-images-without-consent-know-your-rights
  7. National Center for Missing & Exploited Children. Generative AI. Retrieved September 2026 from ncmec.org/GAI
  8. Coalition for Content Provenance and Authenticity. Content Credentials: C2PA Technical Specification 2.4. Retrieved September 2026 from spec.c2pa.org/specifications/specifications/2.4