Langsung ke konten

Ucapan

POST /v1/audio/speech mengubah teks menjadi audio ucapan. Ini mengikuti format text-to-speech OpenAI, sehingga client.audio.speech.create tetap berfungsi dengan base URL yang diubah. Model speech tersedia di halaman models — di antaranya tts-1, tts-1-hd, eleven-multilingual-v2, eleven-v3 dan gemini-2.5-flash-preview-tts.

Hasilkan audio

curl https://api.inferray.com/v1/audio/speech \
  -H "Authorization: Bearer $INFERRAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "tts-1",
    "input": "Your order has shipped and will arrive on Thursday.",
    "voice": "alloy",
    "response_format": "mp3"
  }' \
  --output speech.mp3
import fs from "node:fs";
import OpenAI from "openai";

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

const audio = await client.audio.speech.create({
  model: "tts-1",
  input: "Your order has shipped and will arrive on Thursday.",
  voice: "alloy",
});

fs.writeFileSync("speech.mp3", Buffer.from(await audio.arrayBuffer()));

Isi respons adalah file audio itu sendiri, bukan JSON. Simpan byte-nya.

Parameter

ParameterFungsinya
modelWajib. Model suara.
inputWajib. Teks yang akan diucapkan.
voiceSuara. Setiap keluarga model punya suaranya sendiri; tanpa ini, suara bawaan model yang dipakai.
response_formatmp3, wav, opus, aac, flac atau pcm, jika didukung model. Bawaannya bergantung pada model.
speedKecepatan pemutaran, pada model yang mendukungnya.
instructionsArahan gaya seperti "bicara dengan hangat dan pelan", pada model yang menerimanya.

Harga

Speech dihargai per karakter input (atau per token pada beberapa model), yang ditampilkan di halaman setiap model. Teks yang panjang akan lebih mahal secara proporsional, jadi hapus markup dan boilerplate sebelum mengirimkannya.

Tidak tersedia

Respons di-buffer dan dikembalikan sekaligus; streaming audio saat sedang dihasilkan tidak tersedia. Untuk suara dua arah secara live, sesi realtime belum tersedia.