쿠키를 사용합니다. 쿠키와 브라우저 저장소는 로그인 상태를 유지하고 환경설정을 기억합니다. 동의하시면 사이트 이용 방식도 측정합니다. 언제든지 할 수 있습니다. 자세한 내용은 쿠키 정책을 참고하세요.

음성 합성(TTS)

엔드포인트

음성 합성(TTS)

POST /audio/speech로 텍스트를 mp3, wav 등 원시 오디오 바이트로 변환하는 방법입니다. model, input, voice 파라미터, 입력 글자 수 기준 요금, 음성 모델 조회, 오류 코드를 다룹니다.

플레이그라운드에서 사용해 보기

텍스트를 자연스러운 음성으로 변환합니다(text-to-speech, TTS). 이 엔드포인트는 OpenAI의 POST /audio/speech 형식을 따르며 원시 오디오 바이트를 반환하므로, client.audio.speech.create(...)가 그대로 동작합니다.

POST https://api14.com/api/v1/audio/speech

요청

파라미터타입필수설명
modelstring예음성 모델 ID. 예: openai/gpt-4o-mini-tts.
inputstring예음성으로 읽을 텍스트.
voicestring예음성 이름. 예: alloy, nova, verse. 음성은 모델마다 다릅니다(모델 페이지 참고).
response_formatstring아니요mp3(기본값), wav, opus, aac, flac, pcm (지원되는 경우).
speednumber아니요재생 속도. 일반적으로 0.25–4.0.
instructionsstring아니요이를 지원하는 모델용 스타일 지침("차분하고 따뜻한 어조").

예제

import { writeFile } from "node:fs/promises";
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api14.com/api/v1",
  apiKey: process.env.API14_API_KEY,
});

const audio = await client.audio.speech.create({
  "model": "openai/gpt-4o-mini-tts",
  "input": "Hello from api14! One API for every model.",
  "voice": "alloy",
  "response_format": "mp3"
});
await writeFile("speech.mp3", Buffer.from(await audio.arrayBuffer()));

응답

본문은 오디오 파일 자체이며, 알맞은 Content-Type(예: audio/mpeg)이 함께 옵니다. 디스크에 저장하거나 플레이어로 스트리밍하세요.

curl https://api14.com/api/v1/audio/speech \
  -H "Authorization: Bearer sk-api14-..." \
  -H "Content-Type: application/json" \
  -d '{"model":"openai/gpt-4o-mini-tts","input":"Hello from api14!","voice":"alloy"}' \
  --output hello.mp3

오류는 여전히 OpenAI 오류 형식의 JSON으로 반환되므로, 파일을 쓰기 전에 상태 코드를 확인하세요.

가격

음성은 모델에 표시된 가격("$ / 1M characters")으로 입력 글자 수에 따라 과금됩니다. 1,000자 단락을 $15 / 1M characters 모델로 처리하면 $0.015입니다.

음성 모델 목록 조회

curl "https://api14.com/api/v1/models?category=speech"

오류

상태코드발생 조건
400model_required / invalid_jsonmodel이 없거나 본문 형식이 잘못되었습니다.
402insufficient_balanceUSD 잔액이 $0입니다.
403model_not_allowed / plan_required키 허용 목록이나 요금제에서 해당 모델이 제외됩니다.
404model_not_found알 수 없거나 비활성화된 모델 ID입니다.
429rate_limited분당 요청 수를 초과했습니다.

지원하지 않는 음성이나 형식은 업스트림에서 거부되어 그대로 전달됩니다. 오류를 참고하세요.