Langsung ke konten

Transkripsi

POST /v1/audio/transcriptions mengubah ucapan menjadi teks: rapat, panggilan, pesan suara, podcast. Kirim berkas audio atau URL, lalu dapatkan transkripsi beserta pewaktuan per kata. Model saat ini adalah grok-stt-1-0, ditagih per jam audio.

Unggah file

curl https://api.inferray.com/v1/audio/transcriptions \
  -H "Authorization: Bearer $INFERRAY_API_KEY" \
  -F "model=grok-stt-1-0" \
  -F "file=@meeting.wav"
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 transcript = await client.audio.transcriptions.create({
  model: "grok-stt-1-0",
  file: fs.createReadStream("meeting.wav"),
});

console.log(transcript.text);

Format umum didukung: WAV, MP3, OGG, Opus, FLAC, AAC, MP4, dan M4A. Badan permintaan dibatasi hingga 64 MiB; untuk rekaman yang lebih panjang, kirimkan URL.

Meneruskan URL

curl https://api.inferray.com/v1/audio/transcriptions \
  -H "Authorization: Bearer $INFERRAY_API_KEY" \
  -F "model=grok-stt-1-0" \
  -F "url=https://example.com/podcast-episode.mp3"

Opsi

Semua field berupa multipart form field, sehingga nilai boolean berupa string true dan false.

FieldFungsi
modelWajib.
file or urlWajib, salah satu dari keduanya.
languageKode bahasa, misalnya en. Angka dan mata uang kemudian ditulis dengan benar.
diarizetrue untuk memberi label pada setiap kata sesuai pembicaranya.
filler_wordstrue untuk mempertahankan "uh" dan "um".
keytermNama atau istilah yang perlu dikenali dengan andal, seperti nama produk. Ulangi field ini untuk beberapa nilai.

Respons

{
  "text": "The balance is $167,983.15.",
  "language": "English",
  "duration": 3.45,
  "words": [
    { "text": "The", "start": 0.24, "end": 0.48 },
    { "text": "balance", "start": 0.48, "end": 0.96 }
  ]
}

start dan end adalah detik sejak awal. Dengan diarize=true, setiap kata juga memiliki speaker.

Respons selalu berupa JSON. Keluaran teks biasa, SRT, dan VTT melalui response_format tidak tersedia; buat subtitle dari words jika Anda membutuhkannya.