KO ▾
API 키 받기
  1. NSFW Video API
  2. 비디오 워크플로우에 무검열 텍스트 통합하기

비디오 워크플로우에 무검열 텍스트 통합하기

이 빠른 시작 가이드를 사용하여 NSFW 비디오 파이프라인에 무검열 텍스트 API를 통합하세요. 인증 방법, 스크립트 생성 방법, 표준 OpenAI 호환 클라이언트를 사용한 응답 스트리밍 방법을 배웁니다.

베이스 URL 및 인증

API는 https://api.nsfwvideo.top/v1에서 호스팅됩니다. 인증하려면 계정 대시보드에서 API 키가 필요합니다. Google 또는 이메일로 가입하여 즉시 키를 받을 수 있습니다. 이 키를 Authorization 헤더의 Bearer 토큰으로 전달하세요. 이 설정은 베이스 URL과 API 키를 구성하여 모든 OpenAI 호환 SDK와 함께 작동합니다. 클라이언트가 무검열 모델에 접근하기 위해 특정 엔드포인트로 요청을 보내는지 확인하세요.

비디오 스크립트 생성

모델 ID uncensored로 /v1/chat/completions에 POST 요청을 보내세요. 이 모델은 합법적인 성인 사용에 대한 콘텐츠 거절 없이 답변하도록 조정되어 NSFW 비디오 스크립트에 이상적입니다. 상세한 장면 설명이나 대화를 요청할 수 있습니다. API는 비디오 생성 파이프라인에 직접 피드백할 수 있는 텍스트를 반환하여 일관된 출력을 보장합니다.

curl https://api.nsfwvideo.top/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
  }'

JSON 모드 프롬프트 엔지니어링

구조화된 데이터의 경우 response_format 매개변수를 {"type": "json_object"}로 설정하세요. 이는 모델이 유효한 JSON을 반환하도록 보장하며, 자동화 워크플로우에서 메타데이터나 구조화된 프롬프트를 파싱하는 데 필수적입니다. scene_description 또는 camera_angles과 같은 특정 키를 강제하기 위해 시스템 프롬프트에 스키마를 정의할 수 있습니다. 이는 사후 처리 오버헤드를 줄이고 파이프라인을 깔끔하게 유지합니다.

from openai import OpenAI

client = OpenAI(base_url="https://api.nsfwvideo.top/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)

스트리밍 응답

stream을 true로 설정하여 스트리밍을 활성화하세요. API는 서버 전송 이벤트(SSE)를 통해 청크를 반환합니다. 이를 통해 진행 상황을 표시하거나 실시간으로 토큰을 처리할 수 있습니다. 각 청크에는 부분 텍스트가 포함되며 마지막 청크에는 토큰 사용 통계가 포함됩니다. 스트리밍은 긴 스크립트에 효율적이며 전체 응답을 기다리지 않고 생성되는 콘텐츠에 따라 애플리케이션이 반응할 수 있게 합니다.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.nsfwvideo.top/v1", apiKey: process.env.API_KEY });

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);

컨텍스트 창 처리

컨텍스트 창은 프롬프트와 완료를 모두 포함하여 100,000 토큰입니다. 요청당 최대 출력은 32,000 토큰이며, max_tokens이 설정되지 않은 경우 2,048 토큰입니다. 잘림을 피하기 위해 입력 길이를 적절히 계획하세요. 긴 대화의 경우 오래된 메시지를 잘라내어 기록을 관리하세요. 이는 모델이 관련 컨텍스트를 위해 충분한 공간을 확보하여 비디오 스크립트 생성의 일관성을 유지하도록 보장합니다.

속도 제한 및 토큰

분당 300개 요청 및 키당 8개의 동시 요청으로 제한됩니다. 요청 본문은 8 MB를 초과할 수 없습니다. 401(잘못된 키) 또는 402(크레딧 없음)과 같은 오류는 선불 크레딧을 소모하지 않습니다. 속도 제한(429)도 크레딧을 소모하지 않으므로 페널티 없이 다시 시도할 수 있습니다. 크레딧은 성공적인 토큰 사용에만 청구되므로 대용량 파이프라인의 비용 통제를 보장합니다.

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

API 사양

크레딧을 구매하기 전에 확인할 수 있도록 API의 실제 한도와 기능을 한곳에 정리했습니다.

항목내용
형식OpenAI 호환: 어떤 OpenAI SDK든 base URL과 키만 바꾸면 동작
모델 IDuncensored
인증Authorization: Bearer YOUR_KEY
엔드포인트POST /v1/chat/completions · GET /v1/models
Base URLhttps://api.nsfwvideo.top/v1
최대 출력100,000 토큰 윈도우의 남은 만큼; max_tokens는 선택 사항(별도 상한 없음)
파라미터temperature, top_p, stop, seed, presence_penalty, frequency_penalty
컨텍스트 창100,000 토큰 (입력 + 출력)
JSON 모드response_format: {"type": "json_object"}
스트리밍지원 — SSE, 마지막 청크에 토큰 사용량 포함
함수 호출지원 — tools, tool_choice; 응답에 tool_calls (스트리밍 포함), 결과는 role: tool로 전송
속도 제한키당 분당 300회
응답 헤더X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
동시 요청키당 동시 8개
요청 크기최대 8 MB
보너스$50 이상 +5%, $100 이상 +10%
과금선불 크레딧에서 실제 사용량만큼 차감, 오류·거부는 무료
가격입력 100만 토큰당 $0.25 · 출력 100만 토큰당 $1.00
유효기간유료 크레딧은 만료되지 않으며 구독 없음
무료 체험$0.50, 7일, 카드 불필요 · 체험 키: 동시 요청 2건, 분당 60건. 첫 충전 후 전체 한도(8건, 300건) 적용
충전USDT (TRC20) 또는 USDC (Base), $10~$500 사이 원하는 정수 금액
키계정당 활성 키 1개, 새 키를 만들면 이전 키는 무효
로그인Google 또는 이메일과 비밀번호
콘텐츠성인 콘텐츠 허용, 미성년자가 관련된 성적 콘텐츠는 거부

오류 코드

오류는 고정된 type을 가진 JSON으로 반환되며, 실패하거나 거부된 요청은 과금되지 않습니다.

코드유형의미
400bad_request잘못된 JSON, 빈 메시지, 잘못된 파라미터 또는 컨텍스트 초과
401missing_key · invalid_key · key_revoked키 없음·잘못됨·새 키로 교체됨
402no_credit잔액 없음 — 충전하면 즉시 재개
403content_blocked미성년자 관련 성적 콘텐츠 — 거부, 과금 없음
404not_found알 수 없는 엔드포인트
413request_too_large본문 8 MB 초과
429rate_limited · concurrency분당 300회 또는 동시 8개 초과 — 잠시 후 재시도
503upstream_busy모델 혼잡 — 몇 초 후 재시도

질문과 답변

크레딧이 부족하면 어떻게 되나요?

API 키는 활성화된 상태로 유지되지만, 요청 시 잔액 부족을 나타내는 402 오류가 반환됩니다. 언제든지 암호화폐로 충전하여 사용을 재개할 수 있습니다. 오류와 거절은 무료이므로 실패한 시도에 대해 요금이 부과되지 않습니다.

API는 함수 호출을 지원하나요?

네, API는 <code>tools</code> 및 <code>tool_choice</code> 매개변수를 통해 함수 호출을 지원합니다. 요청에 사용자 정의 함수를 정의하여 모델이 구조화된 데이터를 반환하도록 할 수 있습니다. 이는 비디오 제작 워크플로우의 다른 부분과 통합하는 데 유용합니다.

무료 티어가 있나요?

아니요, 무료 티어는 없습니다. 하지만 모든 신규 계정에는 7일 동안 유효한 $0.50의 무료 체험 크레딧이 제공됩니다. $10부터 암호화폐로 충전할 수 있습니다. 크레딧은 만료되지 않으며 모든 요청 유형에 사용할 수 있습니다.

키는 양식 하나만 작성하면 받을 수 있습니다

계정을 생성하고 키를 복사한 후 베이스 URL을 변경하세요. 설정은 이것뿐입니다.

API 키 받기