TTS API 시작 가이드
이 시작 가이드는 무검열 채팅 완료 API를 TTS 파이프라인에 통합하는 방법을 보여줍니다. 콘텐츠 거부 없이 스크립트, 자막 및 대사를 생성하기 위해 OpenAI 호환 엔드포인트를 사용하세요.
https://api.ttsapihub.com/v1
Base URL 및 인증
클라이언트를 our base URL: https://api.ttsapihub.com/v1로 설정하는 것으로 시작하세요. API는 완전히 OpenAI 호환이므로, base_url을 업데이트하고 API 키를 제공하여 표준 SDK를 사용할 수 있습니다. 인증은 Bearer 토큰을 사용한 Authorization 헤더로 처리됩니다. API 키 받기 페이지에서 가입할 때 고유한 키를 생성합니다. 각 계정은 활성 키 하나만 제한되며 언제든지 재생성할 수 있습니다. 프롬프트는 학습에 사용되지 않으며, 무료 체험 크레딧으로 시작하려면 전화번호나 신용카드가 필요하지 않습니다.
채팅 완료로 텍스트 생성
텍스트를 생성하려면 표준 POST /v1/chat/completions 요청을 보내세요. 사용할 모델 ID는 uncensored입니다. 이 모델은 합법적인 성인 사용에 대해 콘텐츠 거부 없이 답변하도록 조정된 오픈 웨이트 LLM으로, 기업용 필터가 콘텐츠를 차단할 수 있는 창의적인 스크립트나 대화에 이상적입니다. 오디오, 이미지 또는 비디오를 생성하지 않으며, TTS 파이프라인에서 처리할 수 있는 순수 텍스트를 출력합니다. temperature 및 max_tokens과 같은 매개변수를 필요에 따라 조정할 수 있습니다. API는 구조화된 데이터 추출을 위한 함수 호출을 지원하여 응답을 애플리케이션에 맞게 포맷할 수 있습니다.
curl https://api.ttsapihub.com/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."}]
}'
Python SDK 통합
Python 개발자의 경우 공식 openai SDK는 최소한의 구성으로 바로 작동합니다. base URL과 API 키로 클라이언트를 초기화한 후 chat.completions.create()를 호출하세요. 이 방법은 기존 OpenAI 호환 클라이언트를 활용하면서 무검열 모델의 이점을 얻을 수 있게 해줍니다. 응답에는 생성된 텍스트가 포함되며, 이를 음성 합성 엔진에 직접 피드백할 수 있습니다. 이는 텍스트 전용 API이므로 오디오 생성은 파이프라인에서 별도로 처리해야 합니다.
from openai import OpenAI
client = OpenAI(base_url="https://api.ttsapihub.com/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)
Node SDK 통합
Node.js 개발자는 Python과 동일한 구성으로 openai npm 패키지를 사용할 수 있습니다. baseURL을 our endpoint로 설정하고 API 키를 제공하세요. 모델 ID uncensored로 완료 엔드포인트를 호출하세요. 이 통합은 간단하며 기존 Node.js TTS 서비스에 our 텍스트 생성을 직접 통합할 수 있게 해줍니다. API는 표준 JSON로 응답하여 생성된 텍스트를 애플리케이션의 필요에 따라 파싱하고 처리하기 쉽게 만듭니다.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ttsapihub.com/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);
SSE를 통한 스트리밍 응답
낮은 지연 시간을 위해 요청에 stream: true를 설정하여 스트리밍을 활성화하세요. API는 증분 텍스트 청크를 포함하는 서버 전송 이벤트(SSE)를 반환합니다. 이는 사용자가 실시간으로 텍스트가 나타나는 것을 볼 수 있으므로 장문 콘텐츠 생성에 특히 유용합니다. 스트리밍 응답은 표준 OpenAI SSE 형식을 따르므로 기존 스트림 파서를 사용할 수 있습니다. 이 접근 방식은 지각된 대기 시간을 줄이고 애플리케이션이 텍스트가 생성되는 대로 표시하여 TTS 파이프라인의 사용자 경험을 향상시킵니다.
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 키는 분당 300개의 요청과 8 MB 요청 본문으로 제한됩니다. 모델은 100,000개의 토큰 컨텍스트 창을 지원하여 긴 스크립트나 문서를 처리할 수 있습니다. 일반적인 오류에는 401(잘못된 키), 402(불충분한 크레딧), 429(속도 제한)이 있습니다. 속도 제한에 도달하면 지수 백오프를 구현하세요. 가격은 투명합니다: 입력 토큰 100만 개당 $0.25, 출력 토큰 100만 개당 $1.00. 크레딧은 선불 크레딧이며, 만료되지 않으며, 충전은 $10부터 시작합니다. 새 계정에는 7일 동안 유효한 $0.50의 무료 체험 크레딧이 제공되며, 카드는 필요하지 않습니다. 콘텐츠 제한은 미성년자가 포함된 성적인 콘텐츠만 차단하며, 기타 모든 합법적인 성인, 허구적 또는 논쟁적인 주제는 허용됩니다.
기술 사양
크레딧을 구매하기 전에 확인할 수 있도록 API의 실제 한도와 기능을 한곳에 정리했습니다.
| 항목 | 내용 |
|---|---|
| 형식 | OpenAI 호환: 어떤 OpenAI SDK든 base URL과 키만 바꾸면 동작 |
| 엔드포인트 | POST /v1/chat/completions · GET /v1/models |
| 모델 ID | uncensored |
| 인증 | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.ttsapihub.com/v1 |
| 컨텍스트 창 | 100,000 토큰 (입력 + 출력) |
| 스트리밍 | 지원 — SSE, 마지막 청크에 토큰 사용량 포함 |
| JSON 모드 | response_format: {"type": "json_object"} |
| 파라미터 | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| 함수 호출 | 지원 — tools, tool_choice; 응답에 tool_calls (스트리밍 포함), 결과는 role: tool로 전송 |
| 최대 출력 | 100,000 토큰 윈도우의 남은 만큼; max_tokens는 선택 사항(별도 상한 없음) |
| 응답 헤더 | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| 동시 요청 | 키당 동시 8개 |
| 요청 크기 | 최대 8 MB |
| 속도 제한 | 키당 분당 300회 |
| 과금 | 선불 크레딧에서 실제 사용량만큼 차감, 오류·거부는 무료 |
| 보너스 | $50 이상 +5%, $100 이상 +10% |
| 가격 | 입력 100만 토큰당 $0.25 · 출력 100만 토큰당 $1.00 |
| 충전 | USDT (TRC20) 또는 USDC (Base), $10~$500 사이 원하는 정수 금액 |
| 유효기간 | 유료 크레딧은 만료되지 않으며 구독 없음 |
| 무료 체험 | $0.50, 7일, 카드 불필요 · 체험 키: 동시 요청 2건, 분당 60건. 첫 충전 후 전체 한도(8건, 300건) 적용 |
| 콘텐츠 | 성인 콘텐츠 허용, 미성년자가 관련된 성적 콘텐츠는 거부 |
| 키 | 계정당 활성 키 1개, 새 키를 만들면 이전 키는 무효 |
| 로그인 | Google 또는 이메일과 비밀번호 |
오류 코드
오류는 고정된 type을 가진 JSON으로 반환되며, 실패하거나 거부된 요청은 과금되지 않습니다.
| 코드 | 유형 | 의미 |
|---|---|---|
400 | bad_request | 잘못된 JSON, 빈 메시지, 잘못된 파라미터 또는 컨텍스트 초과 |
401 | missing_key · invalid_key · key_revoked | 키 없음·잘못됨·새 키로 교체됨 |
402 | no_credit | 잔액 없음 — 충전하면 즉시 재개 |
403 | content_blocked | 미성년자 관련 성적 콘텐츠 — 거부, 과금 없음 |
404 | not_found | 알 수 없는 엔드포인트 |
413 | request_too_large | 본문 8 MB 초과 |
429 | rate_limited · concurrency | 분당 300회 또는 동시 8개 초과 — 잠시 후 재시도 |
503 | upstream_busy | 모델 혼잡 — 몇 초 후 재시도 |
질문과 답변
이 API는 오디오를 생성합니까?
아니요, 이 API는 텍스트 전용입니다. 텍스트 스크립트나 대사를 생성한 후 별도의 TTS 엔진에 전달하여 오디오를 생성합니다. 오디오, 이미지 또는 비디오 파일을 생성하지 않습니다.
API를 시작하려면 어떻게 해야 합니까?
API 키 받기 페이지에서 이메일과 비밀번호로 가입하세요. API 키와 7일 동안 유효한 $0.50의 무료 체험 크레딧을 즉시 받습니다. 시작하기 위해 신용카드나 전화번호가 필요하지 않습니다.
컨텍스트 창 크기는 얼마입니까?
모델은 입력 프롬프트와 출력 완료를 모두 포함하는 100,000개의 토큰 컨텍스트 창을 지원하여 파이프라인에서 긴 문서를 처리하거나 광범위한 대화 기록을 유지할 수 있습니다.