{
  "aboutHtml": "<p>Voxtral Mini Transcribe 2 adalah edisi Voxtral dari Mistral AI yang berfokus pada transkripsi dan diidentifikasi dalam kartu model pembuatnya sebagai voxtral-mini-2602. Model ini dirancang untuk transkripsi batch berbasis rekaman, bukan peran tanya jawab yang lebih luas dari model Voxtral Mini 3B awal. Masukannya berupa audio dan hasilnya berupa teks transkripsi, yang secara opsional diperkaya dengan label pembicara dan informasi waktu. Penggunaan praktis mencakup transkrip rapat, analisis wawancara, catatan panggilan beberapa pihak, dan teks yang diselaraskan dengan media rekaman.</p><p>Pembuatnya mendokumentasikan diarisasi pembicara serta waktu mulai/akhir sehingga transkrip dapat menunjukkan siapa yang berbicara dan kapan. Cap waktu tingkat kata mendukung subtitel, pencarian audio, dan penyelarasan antara bagian teks dengan posisinya dalam rekaman. Panduan pembuatnya memperbolehkan granularitas cap waktu segmen atau kata. Untuk wawancara, artefak yang berguna adalah urutan bagian teks yang diatribusikan kepada pembicara beserta waktunya; untuk persiapan subtitel, waktu kata atau segmen dapat memandu tahap pemberian teks berikutnya alih-alih memaksa waktu tersebut disimpulkan dari teks transkrip biasa.</p><p>Bias konteks menerima hingga 100 kata atau frasa yang memandu model menuju ejaan yang dimaksud untuk nama, istilah teknis, dan kosakata khusus domain. Mistral menyatakan fitur ini dioptimalkan untuk bahasa Inggris dan dukungan dalam bahasa lain bersifat eksperimental. Siapkan daftar kosakata terarah dari topik rekaman alih-alih glosarium yang tidak terkait. Contoh asli dapat menyertakan nama proyek dan istilah khusus yang kemungkinan muncul dalam diskusi teknis, lalu memeriksa ejaan tersebut dalam transkrip yang telah selesai.</p><p>Edisi ini mendukung tiga belas bahasa: Inggris, Mandarin, Hindi, Spanyol, Arab, Prancis, Portugis, Rusia, Jerman, Jepang, Korea, Italia, dan Belanda. Pembuatnya juga mendokumentasikan ketahanan terhadap derau dan rekaman hingga tiga jam dalam satu permintaan. Ini merupakan sifat alur rekaman Mini Transcribe 2; pernyataan konteks dan durasi model pemahaman audio 2507 awal menjelaskan rilis yang berbeda. Deteksi bahasa otomatis tersedia, dan panduan menyatakan bahwa menyertakan bahasa audio yang sudah diketahui secara eksplisit dapat meningkatkan akurasi transkripsi.</p><p>Dalam alur pembuat yang terdokumentasi, audio dapat diberikan sebagai berkas yang diunggah, pengenal berkas yang telah diunggah sebelumnya, atau rekaman yang dirujuk. Demonstrasi unggahan yang menyertainya menerima rekaman MP3, WAV, M4A, FLAC, dan OGG; pilih salah satu format ini untuk alur unggahan yang didemonstrasikan. Pastikan rekaman dapat didekode dan memuat ucapan yang relevan. Untuk materi panjang, pertahankan pengenal dan titik acuan waktunya agar cuplikan atau penyuntingan berikutnya tetap dapat ditelusuri ke sumber.</p><p>Referensi transkripsi mengembalikan teks dan bahasa yang terdeteksi, dengan segmen jika diminta, serta secara terpisah mendokumentasikan peristiwa transkripsi streaming. Diarisasi bersifat opsional dan nilai bawaannya false. Panduan mencatat bahwa timestamp_granularities dan pengaturan language eksplisit saat ini tidak kompatibel, jadi pilih alur waktu yang diinginkan atau petunjuk bahasa manual alih-alih menggabungkannya. Transkripsi berlabel pembicara, bias kosakata, dan informasi waktu harus dipilih sesuai hasil yang dimaksud, bukan diasumsikan dari permintaan dasar.</p><p>Ucapan yang tumpang tindih merupakan keterbatasan substantif: Mistral menyatakan model biasanya mentranskripsikan satu pembicara ketika beberapa pembicara berbicara bersamaan. Karena itu, transkrip berlabel tidak boleh dianggap sebagai catatan lengkap setiap ucapan yang berlangsung serentak. Untuk catatan rapat, tinjau bagian tumpang tindih yang sulit serta nama atau angka penting terhadap rekaman. Tujuan model adalah transkripsi; ringkasan, terjemahan, atau analisis dapat menjadi tugas terpisah yang dibangun di atas transkrip tersebut. Voxtral Realtime memiliki karakter latensi transkripsi langsung tersendiri, sedangkan pembuatan ucapan merupakan kemampuan model lain.</p><p>Siapkan hasil untuk penggunaan berikutnya. Alur rapat dapat mempertahankan transkrip, label pembicara, dan waktu sebelum tahap terpisah mengekstrak keputusan; alur media dapat menggunakan informasi waktu untuk menemukan bagian teks dan menyusun draf teks layar; rekaman yang padat istilah dapat menyertakan daftar bias konteks yang terarah serta tinjauan ejaan hasilnya. Hasil kerja yang berguna adalah teks yang terkait dengan rekaman sumber dan metadata yang dikonfigurasi, dengan edisi transkripsi bernomor ini tetap dibedakan dari model Mini awal dan nama latest yang terus berubah.</p>",
  "aboutText": "Voxtral Mini Transcribe 2 adalah edisi Voxtral dari Mistral AI yang berfokus pada transkripsi dan diidentifikasi dalam kartu model pembuatnya sebagai voxtral-mini-2602. Model ini dirancang untuk transkripsi batch berbasis rekaman, bukan peran tanya jawab yang lebih luas dari model Voxtral Mini 3B awal. Masukannya berupa audio dan hasilnya berupa teks transkripsi, yang secara opsional diperkaya dengan label pembicara dan informasi waktu. Penggunaan praktis mencakup transkrip rapat, analisis wawancara, catatan panggilan beberapa pihak, dan teks yang diselaraskan dengan media rekaman.\n\nPembuatnya mendokumentasikan diarisasi pembicara serta waktu mulai/akhir sehingga transkrip dapat menunjukkan siapa yang berbicara dan kapan. Cap waktu tingkat kata mendukung subtitel, pencarian audio, dan penyelarasan antara bagian teks dengan posisinya dalam rekaman. Panduan pembuatnya memperbolehkan granularitas cap waktu segmen atau kata. Untuk wawancara, artefak yang berguna adalah urutan bagian teks yang diatribusikan kepada pembicara beserta waktunya; untuk persiapan subtitel, waktu kata atau segmen dapat memandu tahap pemberian teks berikutnya alih-alih memaksa waktu tersebut disimpulkan dari teks transkrip biasa.\n\nBias konteks menerima hingga 100 kata atau frasa yang memandu model menuju ejaan yang dimaksud untuk nama, istilah teknis, dan kosakata khusus domain. Mistral menyatakan fitur ini dioptimalkan untuk bahasa Inggris dan dukungan dalam bahasa lain bersifat eksperimental. Siapkan daftar kosakata terarah dari topik rekaman alih-alih glosarium yang tidak terkait. Contoh asli dapat menyertakan nama proyek dan istilah khusus yang kemungkinan muncul dalam diskusi teknis, lalu memeriksa ejaan tersebut dalam transkrip yang telah selesai.\n\nEdisi ini mendukung tiga belas bahasa: Inggris, Mandarin, Hindi, Spanyol, Arab, Prancis, Portugis, Rusia, Jerman, Jepang, Korea, Italia, dan Belanda. Pembuatnya juga mendokumentasikan ketahanan terhadap derau dan rekaman hingga tiga jam dalam satu permintaan. Ini merupakan sifat alur rekaman Mini Transcribe 2; pernyataan konteks dan durasi model pemahaman audio 2507 awal menjelaskan rilis yang berbeda. Deteksi bahasa otomatis tersedia, dan panduan menyatakan bahwa menyertakan bahasa audio yang sudah diketahui secara eksplisit dapat meningkatkan akurasi transkripsi.\n\nDalam alur pembuat yang terdokumentasi, audio dapat diberikan sebagai berkas yang diunggah, pengenal berkas yang telah diunggah sebelumnya, atau rekaman yang dirujuk. Demonstrasi unggahan yang menyertainya menerima rekaman MP3, WAV, M4A, FLAC, dan OGG; pilih salah satu format ini untuk alur unggahan yang didemonstrasikan. Pastikan rekaman dapat didekode dan memuat ucapan yang relevan. Untuk materi panjang, pertahankan pengenal dan titik acuan waktunya agar cuplikan atau penyuntingan berikutnya tetap dapat ditelusuri ke sumber.\n\nReferensi transkripsi mengembalikan teks dan bahasa yang terdeteksi, dengan segmen jika diminta, serta secara terpisah mendokumentasikan peristiwa transkripsi streaming. Diarisasi bersifat opsional dan nilai bawaannya false. Panduan mencatat bahwa timestamp_granularities dan pengaturan language eksplisit saat ini tidak kompatibel, jadi pilih alur waktu yang diinginkan atau petunjuk bahasa manual alih-alih menggabungkannya. Transkripsi berlabel pembicara, bias kosakata, dan informasi waktu harus dipilih sesuai hasil yang dimaksud, bukan diasumsikan dari permintaan dasar.\n\nUcapan yang tumpang tindih merupakan keterbatasan substantif: Mistral menyatakan model biasanya mentranskripsikan satu pembicara ketika beberapa pembicara berbicara bersamaan. Karena itu, transkrip berlabel tidak boleh dianggap sebagai catatan lengkap setiap ucapan yang berlangsung serentak. Untuk catatan rapat, tinjau bagian tumpang tindih yang sulit serta nama atau angka penting terhadap rekaman. Tujuan model adalah transkripsi; ringkasan, terjemahan, atau analisis dapat menjadi tugas terpisah yang dibangun di atas transkrip tersebut. Voxtral Realtime memiliki karakter latensi transkripsi langsung tersendiri, sedangkan pembuatan ucapan merupakan kemampuan model lain.\n\nSiapkan hasil untuk penggunaan berikutnya. Alur rapat dapat mempertahankan transkrip, label pembicara, dan waktu sebelum tahap terpisah mengekstrak keputusan; alur media dapat menggunakan informasi waktu untuk menemukan bagian teks dan menyusun draf teks layar; rekaman yang padat istilah dapat menyertakan daftar bias konteks yang terarah serta tinjauan ejaan hasilnya. Hasil kerja yang berguna adalah teks yang terkait dengan rekaman sumber dan metadata yang dikonfigurasi, dengan edisi transkripsi bernomor ini tetap dibedakan dari model Mini awal dan nama latest yang terus berubah.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "8debc1dc4390d5c5d32f88dc1f77a7e5a8b164b1bbb5d3aa81bfe6c65887b102",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "id",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Mistral: Voxtral Mini Transcribe</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Tutup\">×</button></div><div class=\"idline\"><span>Mistral /</span><code>mistralai/voxtral-mini-transcribe</code><button type=\"button\" id=\"copy-id\">Salin ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Bagian kartu model\"><button type=\"button\" data-card-jump=\"overview\">Mulai</button><button type=\"button\" data-card-jump=\"methods\">Masukan &amp; metode</button><button type=\"button\" data-card-jump=\"pricing\">Paket</button><button type=\"button\" data-card-jump=\"examples\">Contoh</button><button type=\"button\" data-card-jump=\"results\">Hasil</button><button type=\"button\" data-card-jump=\"aliases\">Alias</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Metode API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|transcriptions|/v1/audio/transcriptions|mistralai%2Fvoxtral-mini-transcribe\">Transkripsi</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Mulai</h3><p class=\"mdesc-full\">Voxtral Mini Transcribe 2 mengubah rekaman menjadi teks dengan diarisasi pembicara, cap waktu tingkat kata, dan bias kosakata. Mistral mendokumentasikan 13 bahasa dan rekaman hingga tiga jam untuk edisi yang berfokus pada transkripsi ini, yang berbeda dari Voxtral Realtime.</p><dl class=\"card-io\" data-card-io><div><dt>Masukan yang diterima</dt><dd>Audio</dd></div><div><dt>Hasil</dt><dd>Teks</dd></div></dl><details class=\"card-about\"><summary>Tentang model</summary><p class=\"note-s\" data-model-method-boundary>Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.</p><div class=\"mabout\" id=\"m-about\"><p>Voxtral Mini Transcribe 2 adalah edisi Voxtral dari Mistral AI yang berfokus pada transkripsi dan diidentifikasi dalam kartu model pembuatnya sebagai voxtral-mini-2602. Model ini dirancang untuk transkripsi batch berbasis rekaman, bukan peran tanya jawab yang lebih luas dari model Voxtral Mini 3B awal. Masukannya berupa audio dan hasilnya berupa teks transkripsi, yang secara opsional diperkaya dengan label pembicara dan informasi waktu. Penggunaan praktis mencakup transkrip rapat, analisis wawancara, catatan panggilan beberapa pihak, dan teks yang diselaraskan dengan media rekaman.</p><p>Pembuatnya mendokumentasikan diarisasi pembicara serta waktu mulai/akhir sehingga transkrip dapat menunjukkan siapa yang berbicara dan kapan. Cap waktu tingkat kata mendukung subtitel, pencarian audio, dan penyelarasan antara bagian teks dengan posisinya dalam rekaman. Panduan pembuatnya memperbolehkan granularitas cap waktu segmen atau kata. Untuk wawancara, artefak yang berguna adalah urutan bagian teks yang diatribusikan kepada pembicara beserta waktunya; untuk persiapan subtitel, waktu kata atau segmen dapat memandu tahap pemberian teks berikutnya alih-alih memaksa waktu tersebut disimpulkan dari teks transkrip biasa.</p><p>Bias konteks menerima hingga 100 kata atau frasa yang memandu model menuju ejaan yang dimaksud untuk nama, istilah teknis, dan kosakata khusus domain. Mistral menyatakan fitur ini dioptimalkan untuk bahasa Inggris dan dukungan dalam bahasa lain bersifat eksperimental. Siapkan daftar kosakata terarah dari topik rekaman alih-alih glosarium yang tidak terkait. Contoh asli dapat menyertakan nama proyek dan istilah khusus yang kemungkinan muncul dalam diskusi teknis, lalu memeriksa ejaan tersebut dalam transkrip yang telah selesai.</p><p>Edisi ini mendukung tiga belas bahasa: Inggris, Mandarin, Hindi, Spanyol, Arab, Prancis, Portugis, Rusia, Jerman, Jepang, Korea, Italia, dan Belanda. Pembuatnya juga mendokumentasikan ketahanan terhadap derau dan rekaman hingga tiga jam dalam satu permintaan. Ini merupakan sifat alur rekaman Mini Transcribe 2; pernyataan konteks dan durasi model pemahaman audio 2507 awal menjelaskan rilis yang berbeda. Deteksi bahasa otomatis tersedia, dan panduan menyatakan bahwa menyertakan bahasa audio yang sudah diketahui secara eksplisit dapat meningkatkan akurasi transkripsi.</p><p>Dalam alur pembuat yang terdokumentasi, audio dapat diberikan sebagai berkas yang diunggah, pengenal berkas yang telah diunggah sebelumnya, atau rekaman yang dirujuk. Demonstrasi unggahan yang menyertainya menerima rekaman MP3, WAV, M4A, FLAC, dan OGG; pilih salah satu format ini untuk alur unggahan yang didemonstrasikan. Pastikan rekaman dapat didekode dan memuat ucapan yang relevan. Untuk materi panjang, pertahankan pengenal dan titik acuan waktunya agar cuplikan atau penyuntingan berikutnya tetap dapat ditelusuri ke sumber.</p><p>Referensi transkripsi mengembalikan teks dan bahasa yang terdeteksi, dengan segmen jika diminta, serta secara terpisah mendokumentasikan peristiwa transkripsi streaming. Diarisasi bersifat opsional dan nilai bawaannya false. Panduan mencatat bahwa timestamp_granularities dan pengaturan language eksplisit saat ini tidak kompatibel, jadi pilih alur waktu yang diinginkan atau petunjuk bahasa manual alih-alih menggabungkannya. Transkripsi berlabel pembicara, bias kosakata, dan informasi waktu harus dipilih sesuai hasil yang dimaksud, bukan diasumsikan dari permintaan dasar.</p><p>Ucapan yang tumpang tindih merupakan keterbatasan substantif: Mistral menyatakan model biasanya mentranskripsikan satu pembicara ketika beberapa pembicara berbicara bersamaan. Karena itu, transkrip berlabel tidak boleh dianggap sebagai catatan lengkap setiap ucapan yang berlangsung serentak. Untuk catatan rapat, tinjau bagian tumpang tindih yang sulit serta nama atau angka penting terhadap rekaman. Tujuan model adalah transkripsi; ringkasan, terjemahan, atau analisis dapat menjadi tugas terpisah yang dibangun di atas transkrip tersebut. Voxtral Realtime memiliki karakter latensi transkripsi langsung tersendiri, sedangkan pembuatan ucapan merupakan kemampuan model lain.</p><p>Siapkan hasil untuk penggunaan berikutnya. Alur rapat dapat mempertahankan transkrip, label pembicara, dan waktu sebelum tahap terpisah mengekstrak keputusan; alur media dapat menggunakan informasi waktu untuk menemukan bagian teks dan menyusun draf teks layar; rekaman yang padat istilah dapat menyertakan daftar bias konteks yang terarah serta tinjauan ejaan hasilnya. Hasil kerja yang berguna adalah teks yang terkait dengan rekaman sumber dan metadata yang dikonfigurasi, dengan edisi transkripsi bernomor ini tetap dibedakan dari model Mini awal dan nama latest yang terus berubah.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Tersedia di Ailoot · masukan &amp; metode</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Transkripsi</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Masukan</dt><dd><code>audio</code></dd></div><div><dt>Keluaran</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Kolom</th><th>Jenis</th><th>Persyaratan</th><th>Nilai &amp; batasan</th><th>Bawaan</th></tr></thead><tbody><tr><th data-cell-label=\"Kolom\" scope=\"row\"><span class=\"card-cell-label\">Kolom</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Jenis\" data-field-type><span class=\"card-cell-label\">Jenis</span><code>string</code></td><td data-cell-label=\"Persyaratan\"><span class=\"card-cell-label\">Persyaratan</span>Wajib</td><td data-cell-label=\"Nilai &amp; batasan\"><span class=\"card-cell-label\">Nilai &amp; batasan</span><div>mistralai/voxtral-mini-transcribe</div></td><td data-cell-label=\"Bawaan\" data-default=\"unspecified\"><span class=\"card-cell-label\">Bawaan</span>—</td></tr><tr><th data-cell-label=\"Kolom\" scope=\"row\"><span class=\"card-cell-label\">Kolom</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"Jenis\" data-field-type><span class=\"card-cell-label\">Jenis</span><code>object</code></td><td data-cell-label=\"Persyaratan\"><span class=\"card-cell-label\">Persyaratan</span>Wajib</td><td data-cell-label=\"Nilai &amp; batasan\"><span class=\"card-cell-label\">Nilai &amp; batasan</span></td><td data-cell-label=\"Bawaan\" data-default=\"unspecified\"><span class=\"card-cell-label\">Bawaan</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Parameter metode dan siklus hidup</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Kontrak</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Kontrak\"><span class=\"card-cell-label\">Kontrak</span>application/json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Kontrak\"><span class=\"card-cell-label\">Kontrak</span>model, input_audio</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Kontrak\"><span class=\"card-cell-label\">Kontrak</span>audio</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_conditions</code></th><td data-cell-label=\"Kontrak\"><span class=\"card-cell-label\">Kontrak</span>Contoh ini membaca berkas PCM WAV Anda yang benar-benar ada dan tidak kosong, mengodekan seluruh byte berkas sebagai base64, lalu mengirim input_audio.format dengan nilai wav.</td></tr></tbody></table></div><p>Siklus hidup: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · task_id persis dari catatan media milik Ailoot yang sudah ada</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Paket</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.</p><dl data-price-conditions><dt>Mode Fast</dt><dd>Tidak ditentukan <span class=\"note-s\">Saat mode fast dipilih</span></dd><dt>Mode Flex</dt><dd>Tidak ditentukan <span class=\"note-s\">Saat mode flex dipilih</span></dd><dt>Upaya penalaran maksimum</dt><dd>Tidak ditentukan <span class=\"note-s\">Saat upaya penalaran maksimum menggunakan penyesuaian default</span></dd></dl></div><div data-declared-tariff-pricing><h4>Tarif Ailoot</h4><h4>Harga menurut konfigurasi</h4><p class=\"note-s\">Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigurasi</th><th>Jadwal tarif</th><th>Satuan penagihan</th><th>Biaya</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigurasi\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasi</span>Tarif dasar token</th><td data-cell-label=\"Jadwal tarif\"><span class=\"card-cell-label\">Jadwal tarif</span>Tarif dasar</td><td data-cell-label=\"Satuan penagihan\"><span class=\"card-cell-label\">Satuan penagihan</span>—</td><td data-cell-label=\"Biaya\"><span class=\"card-cell-label\">Biaya</span><div><span>Masukan · Token masukan</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Keluaran · Token keluaran</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Masukan · Pembacaan cache</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Masukan · Penulisan cache</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Masukan · Penulisan cache, 1 jam</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div></td></tr><tr><th data-cell-label=\"Konfigurasi\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasi</span>detik audio masukan</th><td data-cell-label=\"Jadwal tarif\"><span class=\"card-cell-label\">Jadwal tarif</span>—</td><td data-cell-label=\"Satuan penagihan\"><span class=\"card-cell-label\">Satuan penagihan</span>per detik audio masukan</td><td data-cell-label=\"Biaya\"><span class=\"card-cell-label\">Biaya</span><div><span>Masukan · detik audio masukan</span> <b>$0.0001</b> <span class=\"price-unit\">per detik audio masukan</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. <a href=\"/docs/id/billing/reserve/\">Cara kerja cadangan dan penyelesaian tagihan →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Contoh permintaan</h3><h4>Ailoot Ultra · Transkripsi</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Pilihan kode\"><button class=\"cg-tab\" id=\"model-code-1942-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1942-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · berkas WAV yang sebenarnya dan hasil asli secara lengkap</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Salin kode\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1942-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1942-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}&quot;\nexport AILOOT_AUDIO_FILE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ[&#39;AILOOT_AUDIO_FILE&#39;]).read_bytes()\nif not (audio[:4] == b&#39;RIFF&#39; and audio[8:12] == b&#39;WAVE&#39;):\n    raise SystemExit(&#39;Supply your actual PCM WAV audio file&#39;)\nwith wave.open(io.BytesIO(audio), &#39;rb&#39;) as recording:\n    if recording.getcomptype() != &#39;NONE&#39; or recording.getnframes() &lt;= 0:\n        raise SystemExit(&#39;Supply a nonempty PCM WAV recording&#39;)\nrequest = {&#39;model&#39;: &#39;mistralai/voxtral-mini-transcribe&#39;, &#39;input_audio&#39;: {&#39;data&#39;: base64.b64encode(audio).decode(&#39;ascii&#39;), &#39;format&#39;: &#39;wav&#39;}}\nPath(&#39;request.json&#39;).write_text(json.dumps(request, ensure_ascii=False), encoding=&#39;utf-8&#39;)\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Terima dan simpan hasil</h3><h4>Ailoot Ultra · Transkripsi</h4><p class=\"note-s\">Isi respons asli secara utuh, status, dan header yang diteruskan. Handler ini tidak menambahkan struktur JSON universal, bidang teks, atau pembungkus tugas.</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><div class=\"card-result-process\" data-all-results><h5>Simpan semua hasil yang selesai</h5><p class=\"note-s\">Simpan setiap respons lengkap, berkas, dan bagian konten yang dikembalikan.</p><p class=\"note-s\">Simpan respons dan header secara lengkap, setiap keluaran aktual, identifikator asli yang dikembalikan, dan semua kolom usage. Pulihkan operasi asli tanpa mengirim ulang permintaan pembuatan.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Jika respons asli perlu diperiksa</h5><p class=\"note-s\">Simpan X-Client-Request-ID aktual dan respons secara utuh. Baca aset asli yang dimiliki beserta URL konten bertanda tangan yang persis; jangan pernah kirim ulang pembuatan yang statusnya belum pasti.</p></div><details class=\"card-about\" data-output-fields><summary>Kolom respons</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Kolom</th><th>Jenis</th></tr></thead><tbody><tr><th data-cell-label=\"Kolom\" scope=\"row\"><span class=\"card-cell-label\">Kolom</span><code class=\"card-field-name\">text (when present)</code></th><td data-cell-label=\"Jenis\" data-field-type><span class=\"card-cell-label\">Jenis</span></td></tr><tr><th data-cell-label=\"Kolom\" scope=\"row\"><span class=\"card-cell-label\">Kolom</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"Jenis\" data-field-type><span class=\"card-cell-label\">Jenis</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Kesalahan dan langkah berikutnya</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Respons</th><th>Kondisi</th><th>Langkah berikutnya</th></tr></thead><tbody><tr><th data-cell-label=\"Respons\" scope=\"row\"><span class=\"card-cell-label\">Respons</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Kondisi\"><span class=\"card-cell-label\">Kondisi</span>Isi JSON atau ID model kanonis eksplisit tidak valid.</td><td data-cell-label=\"Langkah berikutnya\"><span class=\"card-cell-label\">Langkah berikutnya</span>Simpan respons dan perbaiki bidang permintaan yang ditunjukkan.</td></tr><tr><th data-cell-label=\"Respons\" scope=\"row\"><span class=\"card-cell-label\">Respons</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Kondisi\"><span class=\"card-cell-label\">Kondisi</span>Kunci API Ailoot tidak valid.</td><td data-cell-label=\"Langkah berikutnya\"><span class=\"card-cell-label\">Langkah berikutnya</span>Gunakan kunci API Ailoot Anda yang diotorisasi.</td></tr><tr><th data-cell-label=\"Respons\" scope=\"row\"><span class=\"card-cell-label\">Respons</span>403 · <code>permission_error</code></th><td data-cell-label=\"Kondisi\"><span class=\"card-cell-label\">Kondisi</span>Grup kunci tidak mengizinkan metode ini.</td><td data-cell-label=\"Langkah berikutnya\"><span class=\"card-cell-label\">Langkah berikutnya</span>Simpan rincian kesalahan yang dikembalikan.</td></tr><tr><th data-cell-label=\"Respons\" scope=\"row\"><span class=\"card-cell-label\">Respons</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Kondisi\"><span class=\"card-cell-label\">Kondisi</span>Metode yang dipilih tidak memiliki rute yang diizinkan.</td><td data-cell-label=\"Langkah berikutnya\"><span class=\"card-cell-label\">Langkah berikutnya</span>Simpan rincian kesalahan yang dikembalikan.</td></tr><tr><th data-cell-label=\"Respons\" scope=\"row\"><span class=\"card-cell-label\">Respons</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Kondisi\"><span class=\"card-cell-label\">Kondisi</span>Tarif yang diterima tidak dapat memperoleh jumlah atau batas masukan yang diwajibkan.</td><td data-cell-label=\"Langkah berikutnya\"><span class=\"card-cell-label\">Langkah berikutnya</span>Simpan respons; gunakan representasi masukan yang diwajibkan oleh tarif yang diterima.</td></tr><tr><th data-cell-label=\"Respons\" scope=\"row\"><span class=\"card-cell-label\">Respons</span>503 · <code></code></th><td data-cell-label=\"Kondisi\"><span class=\"card-cell-label\">Kondisi</span>Penyimpanan, rute, harga metode, atau pencadangan dana yang diperlukan tidak tersedia.</td><td data-cell-label=\"Langkah berikutnya\"><span class=\"card-cell-label\">Langkah berikutnya</span>Simpan respons asli secara utuh. Pencadangan dana yang belum pasti tidak mengizinkan pengiriman ulang.</td></tr><tr><th data-cell-label=\"Respons\" scope=\"row\"><span class=\"card-cell-label\">Respons</span>502 · <code>server_error</code></th><td data-cell-label=\"Kondisi\"><span class=\"card-cell-label\">Kondisi</span>Hasil awal, penggunaan, atau penyelesaian tagihan perlu diperiksa.</td><td data-cell-label=\"Langkah berikutnya\"><span class=\"card-cell-label\">Langkah berikutnya</span>Simpan ID permintaan aktual dan respons asli. Baca catatan yang dimiliki yang sudah ada; jangan kirim ulang pembuatan.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Alias</h3><h4>Alias model</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=mistralai%2Fvoxtral-mini-transcribe&amp;route=Ultra&amp;caller=mistralai%2Fvoxtral-mini-transcribe&amp;fmt=transcriptions\"><code>mistralai/voxtral-mini-transcribe</code></a></span></p><h4>Alias jalur metode</h4><p class=\"note-s\">Gunakan jalur metode yang ditampilkan di atas.</p><h4>ID pemanggil terkait</h4><p class=\"note-s\"><a href=\"#m=mistralai%2Fvoxtral-mini-transcribe&amp;route=Ultra&amp;caller=mistralai%2Fvoxtral-mini-transcribe&amp;fmt=transcriptions\"><code>mistralai/voxtral-mini-transcribe</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "mistralai/voxtral-mini-transcribe",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "mistralai/voxtral-mini-transcribe",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|mistralai%2Fvoxtral-mini-transcribe",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "Isi JSON atau ID model kanonis eksplisit tidak valid.",
                "http_status": 400,
                "recovery": "Simpan respons dan perbaiki bidang permintaan yang ditunjukkan.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Kunci API Ailoot tidak valid.",
                "http_status": 401,
                "recovery": "Gunakan kunci API Ailoot Anda yang diotorisasi.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Grup kunci tidak mengizinkan metode ini.",
                "http_status": 403,
                "recovery": "Simpan rincian kesalahan yang dikembalikan.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Metode yang dipilih tidak memiliki rute yang diizinkan.",
                "http_status": 404,
                "recovery": "Simpan rincian kesalahan yang dikembalikan.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Tarif yang diterima tidak dapat memperoleh jumlah atau batas masukan yang diwajibkan.",
                "http_status": 422,
                "recovery": "Simpan respons; gunakan representasi masukan yang diwajibkan oleh tarif yang diterima.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Penyimpanan, rute, harga metode, atau pencadangan dana yang diperlukan tidak tersedia.",
                "http_status": 503,
                "recovery": "Simpan respons asli secara utuh. Pencadangan dana yang belum pasti tidak mengizinkan pengiriman ulang.",
                "type": null
              },
              {
                "code": null,
                "condition": "Hasil awal, penggunaan, atau penyelesaian tagihan perlu diperiksa.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Simpan ID permintaan aktual dan respons asli. Baca catatan yang dimiliki yang sudah ada; jangan kirim ulang pembuatan.",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Simpan X-Client-Request-ID aktual dan respons secara utuh. Baca aset asli yang dimiliki beserta URL konten bertanda tangan yang persis; jangan pernah kirim ulang pembuatan yang statusnya belum pasti."
            },
            "outputs": {
              "all_results": "Simpan respons dan header secara lengkap, setiap keluaran aktual, identifikator asli yang dikembalikan, dan semua kolom usage. Pulihkan operasi asli tanpa mengirim ulang permintaan pembuatan.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Isi respons asli secara utuh, status, dan header yang diteruskan. Handler ini tidak menambahkan struktur JSON universal, bidang teks, atau pembungkus tugas."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "mistralai/voxtral-mini-transcribe"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "mistralai/voxtral-mini-transcribe"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "mistralai/voxtral-mini-transcribe"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Contoh ini membaca berkas PCM WAV Anda yang benar-benar ada dan tidak kosong, mengodekan seluruh byte berkas sebagai base64, lalu mengirim input_audio.format dengan nilai wav."
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "task_id persis dari catatan media milik Ailoot yang sudah ada",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'mistralai/voxtral-mini-transcribe', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Transkripsi",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.0001
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "mistralai/voxtral-mini-transcribe",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.0001",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    }
  ],
  "model_id": "mistralai/voxtral-mini-transcribe",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "c385fac261fdde2e1edecd10b2c3e6ac3f4f049cbef13946d1d7bb01efca7583",
    "input_html_sha256": "8082001249a4307fc28caa8f1a7f66ab74378d60d9d7e6c4d6ecbef9641c1397",
    "private_audit_sha256": "c0ea1f1089a7f2e561640f90e16cbab29bf54cc15cce377adfbcf7cca1be5161",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/id/mistralai-voxtral-mini-transcribe/",
    "description": "Voxtral Mini Transcribe 2 mengubah rekaman menjadi teks dengan diarisasi pembicara, cap waktu tingkat kata, dan bias kosakata. Mistral mendokumentasikan 13 bahasa dan rekaman hingga tiga jam untuk edisi yang berfokus pada transkripsi ini, yang berbeda dari Voxtral Realtime.",
    "locale": "id",
    "md_url": "https://ailoot.ai/models/id/mistralai-voxtral-mini-transcribe/index.md",
    "title": "Mistral: Voxtral Mini Transcribe — Ailoot",
    "url": "https://ailoot.ai/models/id/mistralai-voxtral-mini-transcribe/"
  },
  "rawModel": {
    "about": "Voxtral Mini Transcribe 2 adalah edisi Voxtral dari Mistral AI yang berfokus pada transkripsi dan diidentifikasi dalam kartu model pembuatnya sebagai voxtral-mini-2602. Model ini dirancang untuk transkripsi batch berbasis rekaman, bukan peran tanya jawab yang lebih luas dari model Voxtral Mini 3B awal. Masukannya berupa audio dan hasilnya berupa teks transkripsi, yang secara opsional diperkaya dengan label pembicara dan informasi waktu. Penggunaan praktis mencakup transkrip rapat, analisis wawancara, catatan panggilan beberapa pihak, dan teks yang diselaraskan dengan media rekaman.\n\nPembuatnya mendokumentasikan diarisasi pembicara serta waktu mulai/akhir sehingga transkrip dapat menunjukkan siapa yang berbicara dan kapan. Cap waktu tingkat kata mendukung subtitel, pencarian audio, dan penyelarasan antara bagian teks dengan posisinya dalam rekaman. Panduan pembuatnya memperbolehkan granularitas cap waktu segmen atau kata. Untuk wawancara, artefak yang berguna adalah urutan bagian teks yang diatribusikan kepada pembicara beserta waktunya; untuk persiapan subtitel, waktu kata atau segmen dapat memandu tahap pemberian teks berikutnya alih-alih memaksa waktu tersebut disimpulkan dari teks transkrip biasa.\n\nBias konteks menerima hingga 100 kata atau frasa yang memandu model menuju ejaan yang dimaksud untuk nama, istilah teknis, dan kosakata khusus domain. Mistral menyatakan fitur ini dioptimalkan untuk bahasa Inggris dan dukungan dalam bahasa lain bersifat eksperimental. Siapkan daftar kosakata terarah dari topik rekaman alih-alih glosarium yang tidak terkait. Contoh asli dapat menyertakan nama proyek dan istilah khusus yang kemungkinan muncul dalam diskusi teknis, lalu memeriksa ejaan tersebut dalam transkrip yang telah selesai.\n\nEdisi ini mendukung tiga belas bahasa: Inggris, Mandarin, Hindi, Spanyol, Arab, Prancis, Portugis, Rusia, Jerman, Jepang, Korea, Italia, dan Belanda. Pembuatnya juga mendokumentasikan ketahanan terhadap derau dan rekaman hingga tiga jam dalam satu permintaan. Ini merupakan sifat alur rekaman Mini Transcribe 2; pernyataan konteks dan durasi model pemahaman audio 2507 awal menjelaskan rilis yang berbeda. Deteksi bahasa otomatis tersedia, dan panduan menyatakan bahwa menyertakan bahasa audio yang sudah diketahui secara eksplisit dapat meningkatkan akurasi transkripsi.\n\nDalam alur pembuat yang terdokumentasi, audio dapat diberikan sebagai berkas yang diunggah, pengenal berkas yang telah diunggah sebelumnya, atau rekaman yang dirujuk. Demonstrasi unggahan yang menyertainya menerima rekaman MP3, WAV, M4A, FLAC, dan OGG; pilih salah satu format ini untuk alur unggahan yang didemonstrasikan. Pastikan rekaman dapat didekode dan memuat ucapan yang relevan. Untuk materi panjang, pertahankan pengenal dan titik acuan waktunya agar cuplikan atau penyuntingan berikutnya tetap dapat ditelusuri ke sumber.\n\nReferensi transkripsi mengembalikan teks dan bahasa yang terdeteksi, dengan segmen jika diminta, serta secara terpisah mendokumentasikan peristiwa transkripsi streaming. Diarisasi bersifat opsional dan nilai bawaannya false. Panduan mencatat bahwa timestamp_granularities dan pengaturan language eksplisit saat ini tidak kompatibel, jadi pilih alur waktu yang diinginkan atau petunjuk bahasa manual alih-alih menggabungkannya. Transkripsi berlabel pembicara, bias kosakata, dan informasi waktu harus dipilih sesuai hasil yang dimaksud, bukan diasumsikan dari permintaan dasar.\n\nUcapan yang tumpang tindih merupakan keterbatasan substantif: Mistral menyatakan model biasanya mentranskripsikan satu pembicara ketika beberapa pembicara berbicara bersamaan. Karena itu, transkrip berlabel tidak boleh dianggap sebagai catatan lengkap setiap ucapan yang berlangsung serentak. Untuk catatan rapat, tinjau bagian tumpang tindih yang sulit serta nama atau angka penting terhadap rekaman. Tujuan model adalah transkripsi; ringkasan, terjemahan, atau analisis dapat menjadi tugas terpisah yang dibangun di atas transkrip tersebut. Voxtral Realtime memiliki karakter latensi transkripsi langsung tersendiri, sedangkan pembuatan ucapan merupakan kemampuan model lain.\n\nSiapkan hasil untuk penggunaan berikutnya. Alur rapat dapat mempertahankan transkrip, label pembicara, dan waktu sebelum tahap terpisah mengekstrak keputusan; alur media dapat menggunakan informasi waktu untuk menemukan bagian teks dan menyusun draf teks layar; rekaman yang padat istilah dapat menyertakan daftar bias konteks yang terarah serta tinjauan ejaan hasilnya. Hasil kerja yang berguna adalah teks yang terkait dengan rekaman sumber dan metadata yang dikonfigurasi, dengan edisi transkripsi bernomor ini tetap dibedakan dari model Mini awal dan nama latest yang terus berubah.",
    "alias_of": null,
    "aliases": [],
    "author": "Mistral",
    "capabilities": {
      "context_length": 16384,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0001",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ],
        "summary": "Informasi lengkap harga konfigurasi tersedia di bagian detail."
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "mistralai/voxtral-mini-transcribe",
    "input": [
      "audio"
    ],
    "kind": "audio",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "Isi JSON atau ID model kanonis eksplisit tidak valid.",
                "http_status": 400,
                "recovery": "Simpan respons dan perbaiki bidang permintaan yang ditunjukkan.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Kunci API Ailoot tidak valid.",
                "http_status": 401,
                "recovery": "Gunakan kunci API Ailoot Anda yang diotorisasi.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Grup kunci tidak mengizinkan metode ini.",
                "http_status": 403,
                "recovery": "Simpan rincian kesalahan yang dikembalikan.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Metode yang dipilih tidak memiliki rute yang diizinkan.",
                "http_status": 404,
                "recovery": "Simpan rincian kesalahan yang dikembalikan.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Tarif yang diterima tidak dapat memperoleh jumlah atau batas masukan yang diwajibkan.",
                "http_status": 422,
                "recovery": "Simpan respons; gunakan representasi masukan yang diwajibkan oleh tarif yang diterima.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Penyimpanan, rute, harga metode, atau pencadangan dana yang diperlukan tidak tersedia.",
                "http_status": 503,
                "recovery": "Simpan respons asli secara utuh. Pencadangan dana yang belum pasti tidak mengizinkan pengiriman ulang.",
                "type": null
              },
              {
                "code": null,
                "condition": "Hasil awal, penggunaan, atau penyelesaian tagihan perlu diperiksa.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Simpan ID permintaan aktual dan respons asli. Baca catatan yang dimiliki yang sudah ada; jangan kirim ulang pembuatan.",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "Simpan X-Client-Request-ID aktual dan respons secara utuh. Baca aset asli yang dimiliki beserta URL konten bertanda tangan yang persis; jangan pernah kirim ulang pembuatan yang statusnya belum pasti."
            },
            "outputs": {
              "all_results": "Simpan respons dan header secara lengkap, setiap keluaran aktual, identifikator asli yang dikembalikan, dan semua kolom usage. Pulihkan operasi asli tanpa mengirim ulang permintaan pembuatan.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Isi respons asli secara utuh, status, dan header yang diteruskan. Handler ini tidak menambahkan struktur JSON universal, bidang teks, atau pembungkus tugas."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "mistralai/voxtral-mini-transcribe"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "mistralai/voxtral-mini-transcribe"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "mistralai/voxtral-mini-transcribe"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Contoh ini membaca berkas PCM WAV Anda yang benar-benar ada dan tidak kosong, mengodekan seluruh byte berkas sebagai base64, lalu mengirim input_audio.format dengan nilai wav."
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "task_id persis dari catatan media milik Ailoot yang sudah ada",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'mistralai/voxtral-mini-transcribe', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "Transkripsi",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.0001
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.0001",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.0001",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "mistralai/voxtral-mini-transcribe",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.0001",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.0001",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "mistralai/voxtral-mini-transcribe",
        "request_model_id": "mistralai/voxtral-mini-transcribe",
        "route_label": "Ultra"
      }
    ],
    "name": "Mistral: Voxtral Mini Transcribe",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Voxtral Mini Transcribe 2 mengubah rekaman menjadi teks dengan diarisasi pembicara, cap waktu tingkat kata, dan bias kosakata. Mistral mendokumentasikan 13 bahasa dan rekaman hingga tiga jam untuk edisi yang berfokus pada transkripsi ini, yang berbeda dari Voxtral Realtime."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Voxtral Mini Transcribe 2 mengubah rekaman menjadi teks dengan diarisasi pembicara, cap waktu tingkat kata, dan bias kosakata. Mistral mendokumentasikan 13 bahasa dan rekaman hingga tiga jam untuk edisi yang berfokus pada transkripsi ini, yang berbeda dari Voxtral Realtime.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "ac3655b0d1a0442c0ec4ad363a41016ca7bc6cf647fe73f9139561808dd5e7ec",
    "renderer_sha256": "2a0471475a29000c23db326ca1e315df73dee7524f6bc2907818ee3458813f2d"
  },
  "sourceRevision": "94245a8fabc4721a7ef7d4bceeede957007c79a20687daaa15a5d9d90dbec490"
}
