Kami menggunakan cookie. Cookie dan penyimpanan browser menjaga Anda tetap masuk dan mengingat preferensi Anda. Dengan izin Anda, kami juga mengukur cara situs digunakan. Anda dapat kapan saja. Lihat kebijakan cookie kami.

Suara (TTS)

Endpoint

Suara (TTS)

POST /audio/speech mengubah teks menjadi byte audio ucapan alami dengan format yang sama seperti OpenAI, lengkap dengan harga per karakter.

Coba di playground

Ubah teks menjadi ucapan yang terdengar alami (text-to-speech, TTS). Endpoint ini mengikuti bentuk POST /audio/speech milik OpenAI dan mengembalikan byte audio mentah, sehingga client.audio.speech.create(...) bekerja tanpa perubahan.

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

Request

ParameterTipeWajibDeskripsi
modelstringyaID model suara, mis. openai/gpt-4o-mini-tts.
inputstringyaTeks yang akan diucapkan.
voicestringyaNama suara, mis. alloy, nova, verse. Suara berbeda untuk tiap model (lihat halaman model).
response_formatstringtidakmp3 (default), wav, opus, aac, flac, pcm jika didukung.
speednumbertidakKecepatan pemutaran, biasanya 0.25–4.0.
instructionsstringtidakPanduan gaya untuk model yang menerimanya ("nada tenang dan hangat").

Contoh

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()));

Respons

Body adalah file audio itu sendiri, dengan Content-Type yang sesuai (mis. audio/mpeg). Simpan ke disk atau stream ke pemutar:

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

Error tetap dikembalikan sebagai JSON dalam format error OpenAI, jadi periksa kode status sebelum menulis file.

Harga

Suara ditagih per karakter input sesuai harga model yang tercantum, ditampilkan sebagai "$ / 1M karakter". Paragraf 1.000 karakter pada model berharga $15 / 1M karakter berbiaya $0,015.

Menampilkan daftar model suara

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

Error

StatusKodeKapan
400model_required / invalid_jsonmodel tidak ada atau body salah format.
402insufficient_balanceSaldo USD Anda $0.
403model_not_allowed / plan_requiredAllowlist key atau paket tidak mencakup model ini.
404model_not_foundID model tidak dikenal atau dinonaktifkan.
429rate_limitedBatas request per menit terlampaui.

Suara atau format yang tidak didukung ditolak oleh upstream dan diteruskan. Lihat Error.