{
  "aboutHtml": "<p>Muse Voice Transcribe 1.0 ialah model persepsi audio Meta untuk mentranskripsikan pertuturan, mengesan sempadan ujaran dan mengaitkan giliran dengan penutur. Model ini tergolong dalam keluarga model Muse Spark dan menggabungkan pengecaman, diarisasi dan pengesanan penghujung ujaran dalam model. Outputnya ialah teks yang dikenal pasti bersama maklumat pemasaan dan penutur yang tersedia dalam mod yang dipilih.</p><p>Model ini memproses audio dalam cebisan 80 milisaat dan menentukan masa untuk terus mendengar atau mengeluarkan teks. Kelewatan adaptifnya membolehkan model menunggu audio tambahan apabila sesuatu perkataan lebih sukar dikenal pasti. Ini menghasilkan teks separa semasa pertuturan diterima, diikuti hasil transkripsi yang lengkap. Anggap hipotesis separa dan giliran yang lengkap sebagai peringkat berbeza dalam pengalaman mendengar.</p><p>Pilih antara tiga mod. Push-to-talk ialah lalai untuk satu ujaran terkawal, seperti pertanyaan suara atau petikan imlak ringkas. Endpointing membolehkan model mengesan sempadan giliran pertuturan dan mengembalikan satu transkrip lengkap bagi setiap segmen yang dikesan. Diarization mengaitkan pertuturan yang dikenal pasti dengan label penutur dan ditujukan untuk rakaman berbilang penutur, bukannya penggiliran arahan suara yang terpantas.</p><p>Untuk klip rakaman, aliran kerja transkripsi fail mengembalikan transkrip lengkap dalam satu permintaan. Hasil lalai ialah JSON yang mengandungi transkrip dan tempoh audio, dengan tatasusunan turns dalam mod endpointing dan diarization. Setiap giliran boleh membawa pengecam, masa mula dan tamat dalam milisaat serta teksnya yang dikenal pasti. Label penutur hadir dalam mod diarization. Push-to-talk menghasilkan transkrip lengkap tanpa giliran yang dikesan dalam tatasusunan tersebut. Antara muka fail rakaman pengeluar juga boleh mengembalikan teks biasa atau aliran peristiwa transkripsi. Teks biasa meletakkan giliran yang dikesan pada baris berasingan dan boleh menyertakan label penutur; aliran peristiwa tamat selepas peristiwa terakhirnya tanpa ringkasan JSON berasingan. Mod separa delta mengembalikan teks secara bertokok, manakala peristiwa transkrip akhir mengandungi keseluruhan teks.</p><p>Sediakan fail RIFF/WAVE yang mengandungi audio PCM integer 16-bit mono pada 16 atau 24 kHz. Kadar natif model ialah 24 kHz, dan antara muka turut menerima 16 kHz. Tukarkan bekas atau pengekodan lain kepada bentuk WAV yang disokong itu sebelum membekalkan rakaman. Profil transkripsi fail membenarkan audio sehingga 10 minit dan jumlah badan permintaan sehingga 32 MB. Simpan rakaman asal dan sebarang penukaran bersama transkrip yang dikembalikan untuk semakan pendengaran kemudian.</p><p>Aliran kerja audio langsung menggunakan PCM mono mentah bertanda 16-bit little-endian, dengan audio 16 atau 24 kHz dihantar pada kadar yang menghampiri masa nyata. Tetingkap sesi yang didokumenkan ialah 60 minit. Meta menerangkan input audio natif yang melebihi satu jam; had fail dan sesi langsung yang didokumenkan kekal sebagai sempadan antara muka yang berasingan. Pilih aliran kerja fail rakaman atau langsung berdasarkan sama ada audio sudah lengkap atau masih dirakam, dan kaitkan hasil daripada sesi berasingan dengan segmen input masing-masing.</p><p>Muse Voice Transcribe dilatih merentas lebih 70 bahasa, manakala antara muka pengecaman yang didokumenkan menyenaraikan 25 bahasa yang disokong. Ini termasuk bahasa Inggeris, Perancis, Jerman, Sepanyol, Arab, Cina Mandarin, Hindi, Jepun, Korea, Itali dan Portugis. Model ini mengenal pasti peralihan bahasa dalam atau antara ayat. Petunjuk bahasa boleh menamakan bahasa yang dijangka dalam audio, tetapi ia memandu pengecaman dan bukannya memaksa transkrip menjadi satu bahasa.</p><p>Petunjuk kosa kata membantu pengecaman istilah produk, akronim, nama atau tempat yang penting dalam rakaman. Bekalkan perkataan dan ejaan sebenar yang anda jangka akan didengar. Senarai kata kunci mempengaruhi pengecaman tanpa menjamin ejaan yang tepat, maka semak istilah penentu terhadap audio. Petunjuk bahasa dan kata kunci dipilih pada permulaan transkripsi; pastikan ia sesuai dengan rakaman tersebut dan bukannya mengubah maknanya ketika sesi sedang berjalan.</p><p>Model ini menyokong diarisasi untuk perbualan dengan lebih 20 penutur. Label seperti A dan B mengenal pasti penutur dalam satu transkripsi. Label itu bukan nama yang disahkan dan tidak membuktikan bahawa sesuatu label merujuk kepada orang yang sama dalam sesi lain. Untuk tugas analisis mesyuarat asal, minta giliran yang dikaitkan dengan penutur, simpan rakaman dan gunakan label untuk menyusun perbincangan sebelum menetapkan nama peserta sebenar melalui aliran kerja sekeliling.</p><p>Transkrip separa langsung boleh berubah apabila lebih banyak pertuturan diterima. Dalam mod kumulatif, setiap hasil separa menggantikan hipotesis sebelumnya dan bukannya menambah salinan baharu. Penghujung pertuturan yang dikesan menandakan sempadan, manakala hasil giliran lengkap membekalkan teks akhir dan boleh berbeza daripada hasil separa terakhir. Kaitkan giliran yang bertindih dengan pengecam gilirannya, dan proses hasil lengkap sebelum menganggap transkrip telah selesai. Apabila input langsung tamat, isyaratkan penghujung input dan teruskan penerimaan sehingga pengeluar selesai mengeluarkan hasil yang tertangguh. Menutup sambungan serta-merta boleh menyebabkan hasil tersebut hilang; sempadan pertuturan yang dikesan menamatkan giliran, bukannya seluruh sesi.</p><p>Pemasaan diberikan pada peringkat giliran. Profil ini tidak membekalkan cap masa per perkataan atau skor keyakinan, dan kemajuan pemprosesan audio bukan cap masa untuk perkataan tertentu. Pengesanan peristiwa bunyi, pengesanan emosi dan pemformatan semula transkrip juga berada di luar profil output yang didokumenkan. Gunakan selang giliran yang dikembalikan untuk garis masa penutur atau semakan pada peringkat segmen, dan kekalkan perkataan yang dikenal pasti jika langkah penyuntingan berasingan kemudian menghasilkan nota yang lebih kemas.</p><p>Artifak yang berguna termasuk petikan imlak lengkap, transkrip pertanyaan suara, perbualan yang dikaitkan dengan penutur atau garis masa ujaran. Bandingkan nama, nombor dan istilah teknikal dengan rakaman asal, kekalkan kaitan mod dan pemasaan, serta pastikan giliran lengkap tersedia untuk semakan. Transkripsi menetapkan perkara yang dikenal pasti dalam audio; menjawab soalan lisan, menterjemahkannya atau menukarkannya kepada nota mesyuarat merupakan langkah aplikasi yang seterusnya.</p>",
  "aboutText": "Muse Voice Transcribe 1.0 ialah model persepsi audio Meta untuk mentranskripsikan pertuturan, mengesan sempadan ujaran dan mengaitkan giliran dengan penutur. Model ini tergolong dalam keluarga model Muse Spark dan menggabungkan pengecaman, diarisasi dan pengesanan penghujung ujaran dalam model. Outputnya ialah teks yang dikenal pasti bersama maklumat pemasaan dan penutur yang tersedia dalam mod yang dipilih.\n\nModel ini memproses audio dalam cebisan 80 milisaat dan menentukan masa untuk terus mendengar atau mengeluarkan teks. Kelewatan adaptifnya membolehkan model menunggu audio tambahan apabila sesuatu perkataan lebih sukar dikenal pasti. Ini menghasilkan teks separa semasa pertuturan diterima, diikuti hasil transkripsi yang lengkap. Anggap hipotesis separa dan giliran yang lengkap sebagai peringkat berbeza dalam pengalaman mendengar.\n\nPilih antara tiga mod. Push-to-talk ialah lalai untuk satu ujaran terkawal, seperti pertanyaan suara atau petikan imlak ringkas. Endpointing membolehkan model mengesan sempadan giliran pertuturan dan mengembalikan satu transkrip lengkap bagi setiap segmen yang dikesan. Diarization mengaitkan pertuturan yang dikenal pasti dengan label penutur dan ditujukan untuk rakaman berbilang penutur, bukannya penggiliran arahan suara yang terpantas.\n\nUntuk klip rakaman, aliran kerja transkripsi fail mengembalikan transkrip lengkap dalam satu permintaan. Hasil lalai ialah JSON yang mengandungi transkrip dan tempoh audio, dengan tatasusunan turns dalam mod endpointing dan diarization. Setiap giliran boleh membawa pengecam, masa mula dan tamat dalam milisaat serta teksnya yang dikenal pasti. Label penutur hadir dalam mod diarization. Push-to-talk menghasilkan transkrip lengkap tanpa giliran yang dikesan dalam tatasusunan tersebut. Antara muka fail rakaman pengeluar juga boleh mengembalikan teks biasa atau aliran peristiwa transkripsi. Teks biasa meletakkan giliran yang dikesan pada baris berasingan dan boleh menyertakan label penutur; aliran peristiwa tamat selepas peristiwa terakhirnya tanpa ringkasan JSON berasingan. Mod separa delta mengembalikan teks secara bertokok, manakala peristiwa transkrip akhir mengandungi keseluruhan teks.\n\nSediakan fail RIFF/WAVE yang mengandungi audio PCM integer 16-bit mono pada 16 atau 24 kHz. Kadar natif model ialah 24 kHz, dan antara muka turut menerima 16 kHz. Tukarkan bekas atau pengekodan lain kepada bentuk WAV yang disokong itu sebelum membekalkan rakaman. Profil transkripsi fail membenarkan audio sehingga 10 minit dan jumlah badan permintaan sehingga 32 MB. Simpan rakaman asal dan sebarang penukaran bersama transkrip yang dikembalikan untuk semakan pendengaran kemudian.\n\nAliran kerja audio langsung menggunakan PCM mono mentah bertanda 16-bit little-endian, dengan audio 16 atau 24 kHz dihantar pada kadar yang menghampiri masa nyata. Tetingkap sesi yang didokumenkan ialah 60 minit. Meta menerangkan input audio natif yang melebihi satu jam; had fail dan sesi langsung yang didokumenkan kekal sebagai sempadan antara muka yang berasingan. Pilih aliran kerja fail rakaman atau langsung berdasarkan sama ada audio sudah lengkap atau masih dirakam, dan kaitkan hasil daripada sesi berasingan dengan segmen input masing-masing.\n\nMuse Voice Transcribe dilatih merentas lebih 70 bahasa, manakala antara muka pengecaman yang didokumenkan menyenaraikan 25 bahasa yang disokong. Ini termasuk bahasa Inggeris, Perancis, Jerman, Sepanyol, Arab, Cina Mandarin, Hindi, Jepun, Korea, Itali dan Portugis. Model ini mengenal pasti peralihan bahasa dalam atau antara ayat. Petunjuk bahasa boleh menamakan bahasa yang dijangka dalam audio, tetapi ia memandu pengecaman dan bukannya memaksa transkrip menjadi satu bahasa.\n\nPetunjuk kosa kata membantu pengecaman istilah produk, akronim, nama atau tempat yang penting dalam rakaman. Bekalkan perkataan dan ejaan sebenar yang anda jangka akan didengar. Senarai kata kunci mempengaruhi pengecaman tanpa menjamin ejaan yang tepat, maka semak istilah penentu terhadap audio. Petunjuk bahasa dan kata kunci dipilih pada permulaan transkripsi; pastikan ia sesuai dengan rakaman tersebut dan bukannya mengubah maknanya ketika sesi sedang berjalan.\n\nModel ini menyokong diarisasi untuk perbualan dengan lebih 20 penutur. Label seperti A dan B mengenal pasti penutur dalam satu transkripsi. Label itu bukan nama yang disahkan dan tidak membuktikan bahawa sesuatu label merujuk kepada orang yang sama dalam sesi lain. Untuk tugas analisis mesyuarat asal, minta giliran yang dikaitkan dengan penutur, simpan rakaman dan gunakan label untuk menyusun perbincangan sebelum menetapkan nama peserta sebenar melalui aliran kerja sekeliling.\n\nTranskrip separa langsung boleh berubah apabila lebih banyak pertuturan diterima. Dalam mod kumulatif, setiap hasil separa menggantikan hipotesis sebelumnya dan bukannya menambah salinan baharu. Penghujung pertuturan yang dikesan menandakan sempadan, manakala hasil giliran lengkap membekalkan teks akhir dan boleh berbeza daripada hasil separa terakhir. Kaitkan giliran yang bertindih dengan pengecam gilirannya, dan proses hasil lengkap sebelum menganggap transkrip telah selesai. Apabila input langsung tamat, isyaratkan penghujung input dan teruskan penerimaan sehingga pengeluar selesai mengeluarkan hasil yang tertangguh. Menutup sambungan serta-merta boleh menyebabkan hasil tersebut hilang; sempadan pertuturan yang dikesan menamatkan giliran, bukannya seluruh sesi.\n\nPemasaan diberikan pada peringkat giliran. Profil ini tidak membekalkan cap masa per perkataan atau skor keyakinan, dan kemajuan pemprosesan audio bukan cap masa untuk perkataan tertentu. Pengesanan peristiwa bunyi, pengesanan emosi dan pemformatan semula transkrip juga berada di luar profil output yang didokumenkan. Gunakan selang giliran yang dikembalikan untuk garis masa penutur atau semakan pada peringkat segmen, dan kekalkan perkataan yang dikenal pasti jika langkah penyuntingan berasingan kemudian menghasilkan nota yang lebih kemas.\n\nArtifak yang berguna termasuk petikan imlak lengkap, transkrip pertanyaan suara, perbualan yang dikaitkan dengan penutur atau garis masa ujaran. Bandingkan nama, nombor dan istilah teknikal dengan rakaman asal, kekalkan kaitan mod dan pemasaan, serta pastikan giliran lengkap tersedia untuk semakan. Transkripsi menetapkan perkara yang dikenal pasti dalam audio; menjawab soalan lisan, menterjemahkannya atau menukarkannya kepada nota mesyuarat merupakan langkah aplikasi yang seterusnya.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "1191c987a45f7204372a928913a119a7e321580d534e4984613be7d1ab63dbc9",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "ms",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">M</span><h2 id=\"sheet-title\">Meta: Muse Voice Transcribe 1.0</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Tutup\">×</button></div><div class=\"idline\"><span>Meta /</span><code>meta/muse-voice-transcribe-1.0</code><button type=\"button\" id=\"copy-id\">Salin ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Bahagian kad model\"><button type=\"button\" data-card-jump=\"overview\">Pengenalan</button><button type=\"button\" data-card-jump=\"methods\">Input &amp; kaedah</button><button type=\"button\" data-card-jump=\"pricing\">Pelan harga</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=\"Kaedah 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|meta%2Fmuse-voice-transcribe-1.0\">Pengecaman</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\">Pengenalan</h3><p class=\"mdesc-full\">Muse Voice Transcribe 1.0 ialah model pertuturan kepada teks Meta untuk imlak, giliran pertuturan yang dikesan dan transkrip yang membezakan penutur. Model ini menyokong petunjuk bahasa dan kosa kata, peralihan bahasa serta pemasaan pada peringkat giliran, dengan aliran kerja berasingan untuk klip rakaman dan audio langsung.</p><dl class=\"card-io\" data-card-io><div><dt>Input 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>Huraian ini merangkumi keupayaan model. Input, output dan pilihan yang tersedia di Ailoot disenaraikan di bawah untuk kaedah yang dipilih.</p><div class=\"mabout\" id=\"m-about\"><p>Muse Voice Transcribe 1.0 ialah model persepsi audio Meta untuk mentranskripsikan pertuturan, mengesan sempadan ujaran dan mengaitkan giliran dengan penutur. Model ini tergolong dalam keluarga model Muse Spark dan menggabungkan pengecaman, diarisasi dan pengesanan penghujung ujaran dalam model. Outputnya ialah teks yang dikenal pasti bersama maklumat pemasaan dan penutur yang tersedia dalam mod yang dipilih.</p><p>Model ini memproses audio dalam cebisan 80 milisaat dan menentukan masa untuk terus mendengar atau mengeluarkan teks. Kelewatan adaptifnya membolehkan model menunggu audio tambahan apabila sesuatu perkataan lebih sukar dikenal pasti. Ini menghasilkan teks separa semasa pertuturan diterima, diikuti hasil transkripsi yang lengkap. Anggap hipotesis separa dan giliran yang lengkap sebagai peringkat berbeza dalam pengalaman mendengar.</p><p>Pilih antara tiga mod. Push-to-talk ialah lalai untuk satu ujaran terkawal, seperti pertanyaan suara atau petikan imlak ringkas. Endpointing membolehkan model mengesan sempadan giliran pertuturan dan mengembalikan satu transkrip lengkap bagi setiap segmen yang dikesan. Diarization mengaitkan pertuturan yang dikenal pasti dengan label penutur dan ditujukan untuk rakaman berbilang penutur, bukannya penggiliran arahan suara yang terpantas.</p><p>Untuk klip rakaman, aliran kerja transkripsi fail mengembalikan transkrip lengkap dalam satu permintaan. Hasil lalai ialah JSON yang mengandungi transkrip dan tempoh audio, dengan tatasusunan turns dalam mod endpointing dan diarization. Setiap giliran boleh membawa pengecam, masa mula dan tamat dalam milisaat serta teksnya yang dikenal pasti. Label penutur hadir dalam mod diarization. Push-to-talk menghasilkan transkrip lengkap tanpa giliran yang dikesan dalam tatasusunan tersebut. Antara muka fail rakaman pengeluar juga boleh mengembalikan teks biasa atau aliran peristiwa transkripsi. Teks biasa meletakkan giliran yang dikesan pada baris berasingan dan boleh menyertakan label penutur; aliran peristiwa tamat selepas peristiwa terakhirnya tanpa ringkasan JSON berasingan. Mod separa delta mengembalikan teks secara bertokok, manakala peristiwa transkrip akhir mengandungi keseluruhan teks.</p><p>Sediakan fail RIFF/WAVE yang mengandungi audio PCM integer 16-bit mono pada 16 atau 24 kHz. Kadar natif model ialah 24 kHz, dan antara muka turut menerima 16 kHz. Tukarkan bekas atau pengekodan lain kepada bentuk WAV yang disokong itu sebelum membekalkan rakaman. Profil transkripsi fail membenarkan audio sehingga 10 minit dan jumlah badan permintaan sehingga 32 MB. Simpan rakaman asal dan sebarang penukaran bersama transkrip yang dikembalikan untuk semakan pendengaran kemudian.</p><p>Aliran kerja audio langsung menggunakan PCM mono mentah bertanda 16-bit little-endian, dengan audio 16 atau 24 kHz dihantar pada kadar yang menghampiri masa nyata. Tetingkap sesi yang didokumenkan ialah 60 minit. Meta menerangkan input audio natif yang melebihi satu jam; had fail dan sesi langsung yang didokumenkan kekal sebagai sempadan antara muka yang berasingan. Pilih aliran kerja fail rakaman atau langsung berdasarkan sama ada audio sudah lengkap atau masih dirakam, dan kaitkan hasil daripada sesi berasingan dengan segmen input masing-masing.</p><p>Muse Voice Transcribe dilatih merentas lebih 70 bahasa, manakala antara muka pengecaman yang didokumenkan menyenaraikan 25 bahasa yang disokong. Ini termasuk bahasa Inggeris, Perancis, Jerman, Sepanyol, Arab, Cina Mandarin, Hindi, Jepun, Korea, Itali dan Portugis. Model ini mengenal pasti peralihan bahasa dalam atau antara ayat. Petunjuk bahasa boleh menamakan bahasa yang dijangka dalam audio, tetapi ia memandu pengecaman dan bukannya memaksa transkrip menjadi satu bahasa.</p><p>Petunjuk kosa kata membantu pengecaman istilah produk, akronim, nama atau tempat yang penting dalam rakaman. Bekalkan perkataan dan ejaan sebenar yang anda jangka akan didengar. Senarai kata kunci mempengaruhi pengecaman tanpa menjamin ejaan yang tepat, maka semak istilah penentu terhadap audio. Petunjuk bahasa dan kata kunci dipilih pada permulaan transkripsi; pastikan ia sesuai dengan rakaman tersebut dan bukannya mengubah maknanya ketika sesi sedang berjalan.</p><p>Model ini menyokong diarisasi untuk perbualan dengan lebih 20 penutur. Label seperti A dan B mengenal pasti penutur dalam satu transkripsi. Label itu bukan nama yang disahkan dan tidak membuktikan bahawa sesuatu label merujuk kepada orang yang sama dalam sesi lain. Untuk tugas analisis mesyuarat asal, minta giliran yang dikaitkan dengan penutur, simpan rakaman dan gunakan label untuk menyusun perbincangan sebelum menetapkan nama peserta sebenar melalui aliran kerja sekeliling.</p><p>Transkrip separa langsung boleh berubah apabila lebih banyak pertuturan diterima. Dalam mod kumulatif, setiap hasil separa menggantikan hipotesis sebelumnya dan bukannya menambah salinan baharu. Penghujung pertuturan yang dikesan menandakan sempadan, manakala hasil giliran lengkap membekalkan teks akhir dan boleh berbeza daripada hasil separa terakhir. Kaitkan giliran yang bertindih dengan pengecam gilirannya, dan proses hasil lengkap sebelum menganggap transkrip telah selesai. Apabila input langsung tamat, isyaratkan penghujung input dan teruskan penerimaan sehingga pengeluar selesai mengeluarkan hasil yang tertangguh. Menutup sambungan serta-merta boleh menyebabkan hasil tersebut hilang; sempadan pertuturan yang dikesan menamatkan giliran, bukannya seluruh sesi.</p><p>Pemasaan diberikan pada peringkat giliran. Profil ini tidak membekalkan cap masa per perkataan atau skor keyakinan, dan kemajuan pemprosesan audio bukan cap masa untuk perkataan tertentu. Pengesanan peristiwa bunyi, pengesanan emosi dan pemformatan semula transkrip juga berada di luar profil output yang didokumenkan. Gunakan selang giliran yang dikembalikan untuk garis masa penutur atau semakan pada peringkat segmen, dan kekalkan perkataan yang dikenal pasti jika langkah penyuntingan berasingan kemudian menghasilkan nota yang lebih kemas.</p><p>Artifak yang berguna termasuk petikan imlak lengkap, transkrip pertanyaan suara, perbualan yang dikaitkan dengan penutur atau garis masa ujaran. Bandingkan nama, nombor dan istilah teknikal dengan rakaman asal, kekalkan kaitan mod dan pemasaan, serta pastikan giliran lengkap tersedia untuk semakan. Transkripsi menetapkan perkara yang dikenal pasti dalam audio; menjawab soalan lisan, menterjemahkannya atau menukarkannya kepada nota mesyuarat merupakan langkah aplikasi yang seterusnya.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Tersedia di Ailoot · input &amp; kaedah</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>Input</dt><dd><code>audio</code></dd></div><div><dt>Output</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Medan</th><th>Jenis</th><th>Keperluan</th><th>Nilai &amp; had</th><th>Lalai</th></tr></thead><tbody><tr><th data-cell-label=\"Medan\" scope=\"row\"><span class=\"card-cell-label\">Medan</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=\"Keperluan\"><span class=\"card-cell-label\">Keperluan</span>Diperlukan</td><td data-cell-label=\"Nilai &amp; had\"><span class=\"card-cell-label\">Nilai &amp; had</span><div>meta/muse-voice-transcribe-1.0</div></td><td data-cell-label=\"Lalai\" data-default=\"unspecified\"><span class=\"card-cell-label\">Lalai</span>—</td></tr><tr><th data-cell-label=\"Medan\" scope=\"row\"><span class=\"card-cell-label\">Medan</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=\"Keperluan\"><span class=\"card-cell-label\">Keperluan</span>Diperlukan</td><td data-cell-label=\"Nilai &amp; had\"><span class=\"card-cell-label\">Nilai &amp; had</span></td><td data-cell-label=\"Lalai\" data-default=\"unspecified\"><span class=\"card-cell-label\">Lalai</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Parameter kaedah dan kitar hayat</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 fail PCM WAV sebenar anda yang tidak kosong, mengekodkan keseluruhan bait fail sebagai base64 dan menghantar input_audio.format sebagai wav.</td></tr></tbody></table></div><p>Kitar hayat: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · task_id tepat daripada rekod media sedia ada milik anda</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\">Pelan harga</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Rujukan tarif tidak menambah pilihan permintaan. Parameter yang disokong disenaraikan untuk kaedah yang dipilih.</p><dl data-price-conditions><dt>Mod pantas</dt><dd>Tidak dinyatakan <span class=\"note-s\">Apabila mod pantas dipilih</span></dd><dt>Mod flex</dt><dd>Tidak dinyatakan <span class=\"note-s\">Apabila mod flex dipilih</span></dd><dt>Usaha penaakulan maksimum</dt><dd>Tidak dinyatakan <span class=\"note-s\">Apabila usaha penaakulan maksimum menggunakan pelarasan default</span></dd></dl></div><div data-declared-tariff-pricing><h4>Kadar Ailoot</h4><h4>Harga mengikut konfigurasi</h4><p class=\"note-s\">Padankan setiap caj dengan syarat yang dipaparkan. Gunakan satu kadar bagi setiap set konfigurasi alternatif.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigurasi</th><th>Jadual kadar</th><th>Unit pengebilan</th><th>Caj</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigurasi\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasi</span>Kadar asas token</th><td data-cell-label=\"Jadual kadar\"><span class=\"card-cell-label\">Jadual kadar</span>Kadar asas</td><td data-cell-label=\"Unit pengebilan\"><span class=\"card-cell-label\">Unit pengebilan</span>—</td><td data-cell-label=\"Caj\"><span class=\"card-cell-label\">Caj</span><div><span>Input · Token input</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Output · Token output</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Input · Bacaan cache</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Input · Penulisan cache</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Input · 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>saat audio input</th><td data-cell-label=\"Jadual kadar\"><span class=\"card-cell-label\">Jadual kadar</span>—</td><td data-cell-label=\"Unit pengebilan\"><span class=\"card-cell-label\">Unit pengebilan</span>bagi setiap saat audio masukan</td><td data-cell-label=\"Caj\"><span class=\"card-cell-label\">Caj</span><div><span>Input · saat audio input</span> <b>$0.0001</b> <span class=\"price-unit\">bagi setiap saat audio masukan</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot merizabkan anggaran amaun sebelum permintaan. Selepas hasil diterima, caj akhir diselesaikan berdasarkan penggunaan terukur. Penyelesaian caj penstriman menggunakan rekod penggunaan akhir. <a href=\"/docs/ms/billing/reserve/\">Cara rizab dan penyelesaian caj berfungsi →</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 kod\"><button class=\"cg-tab\" id=\"model-code-1834-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1834-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · fail WAV sebenar dan hasil asal yang lengkap</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Salin kod\"><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-1834-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1834-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;meta/muse-voice-transcribe-1.0&#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\">Badan respons asal yang lengkap, status dan pengepala yang dimajukan. Pengendali ini tidak menambah bentuk JSON sejagat, medan teks atau struktur 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, fail dan bahagian kandungan yang dikembalikan.</p><p class=\"note-s\">Simpan respons dan pengepala yang lengkap, setiap output sebenar, pengecam asal yang dikembalikan serta semua medan penggunaan. Pulihkan operasi asal tanpa menghantar permintaan penciptaan sekali lagi.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Jika respons asal perlu disemak</h5><p class=\"note-s\">Simpan X-Client-Request-ID sebenar dan respons lengkap. Baca aset asal milik anda serta pautan kandungan bertandatangan yang tepat; jangan sekali-kali hantar semula penciptaan yang tidak pasti.</p></div><details class=\"card-about\" data-output-fields><summary>Medan respons</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Medan</th><th>Jenis</th></tr></thead><tbody><tr><th data-cell-label=\"Medan\" scope=\"row\"><span class=\"card-cell-label\">Medan</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=\"Medan\" scope=\"row\"><span class=\"card-cell-label\">Medan</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>Ralat dan langkah seterusnya</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Respons</th><th>Syarat</th><th>Langkah seterusnya</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=\"Syarat\"><span class=\"card-cell-label\">Syarat</span>Badan JSON atau ID model kanonik yang dinyatakan secara jelas tidak sah.</td><td data-cell-label=\"Langkah seterusnya\"><span class=\"card-cell-label\">Langkah seterusnya</span>Simpan respons dan betulkan medan permintaan yang dinyatakan.</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=\"Syarat\"><span class=\"card-cell-label\">Syarat</span>Kunci API Ailoot tidak sah.</td><td data-cell-label=\"Langkah seterusnya\"><span class=\"card-cell-label\">Langkah seterusnya</span>Gunakan kunci API Ailoot anda yang dibenarkan.</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=\"Syarat\"><span class=\"card-cell-label\">Syarat</span>Kumpulan kunci tidak membenarkan kaedah ini.</td><td data-cell-label=\"Langkah seterusnya\"><span class=\"card-cell-label\">Langkah seterusnya</span>Simpan butiran ralat 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=\"Syarat\"><span class=\"card-cell-label\">Syarat</span>Kaedah yang dipilih tidak mempunyai laluan yang dibenarkan.</td><td data-cell-label=\"Langkah seterusnya\"><span class=\"card-cell-label\">Langkah seterusnya</span>Simpan butiran ralat 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=\"Syarat\"><span class=\"card-cell-label\">Syarat</span>Tarif yang diterima tidak dapat memperoleh kuantiti input atau batas yang diperlukan.</td><td data-cell-label=\"Langkah seterusnya\"><span class=\"card-cell-label\">Langkah seterusnya</span>Simpan respons; gunakan bentuk perwakilan input yang diperlukan 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=\"Syarat\"><span class=\"card-cell-label\">Syarat</span>Storan, laluan, harga kaedah atau penahanan dana yang diperlukan tidak tersedia.</td><td data-cell-label=\"Langkah seterusnya\"><span class=\"card-cell-label\">Langkah seterusnya</span>Simpan respons asal yang lengkap. Penahanan dana yang tidak pasti bukan kebenaran untuk menghantar semula.</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=\"Syarat\"><span class=\"card-cell-label\">Syarat</span>Hasil asal, penggunaan atau penyelesaian caj memerlukan semakan.</td><td data-cell-label=\"Langkah seterusnya\"><span class=\"card-cell-label\">Langkah seterusnya</span>Simpan ID permintaan sebenar dan respons asal. Baca rekod sedia ada milik anda; jangan hantar semula permintaan penciptaan.</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=meta%2Fmuse-voice-transcribe-1.0&amp;route=Ultra&amp;caller=meta%2Fmuse-voice-transcribe-1.0&amp;fmt=transcriptions\"><code>meta/muse-voice-transcribe-1.0</code></a></span></p><h4>Alias laluan kaedah</h4><p class=\"note-s\">Gunakan laluan kaedah yang dipaparkan di atas.</p><h4>ID pemanggil berkaitan</h4><p class=\"note-s\"><a href=\"#m=meta%2Fmuse-voice-transcribe-1.0&amp;route=Ultra&amp;caller=meta%2Fmuse-voice-transcribe-1.0&amp;fmt=transcriptions\"><code>meta/muse-voice-transcribe-1.0</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "meta/muse-voice-transcribe-1.0",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "meta/muse-voice-transcribe-1.0",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|meta%2Fmuse-voice-transcribe-1.0",
      "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": "Badan JSON atau ID model kanonik yang dinyatakan secara jelas tidak sah.",
                "http_status": 400,
                "recovery": "Simpan respons dan betulkan medan permintaan yang dinyatakan.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Kunci API Ailoot tidak sah.",
                "http_status": 401,
                "recovery": "Gunakan kunci API Ailoot anda yang dibenarkan.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Kumpulan kunci tidak membenarkan kaedah ini.",
                "http_status": 403,
                "recovery": "Simpan butiran ralat yang dikembalikan.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Kaedah yang dipilih tidak mempunyai laluan yang dibenarkan.",
                "http_status": 404,
                "recovery": "Simpan butiran ralat yang dikembalikan.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Tarif yang diterima tidak dapat memperoleh kuantiti input atau batas yang diperlukan.",
                "http_status": 422,
                "recovery": "Simpan respons; gunakan bentuk perwakilan input yang diperlukan oleh tarif yang diterima.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Storan, laluan, harga kaedah atau penahanan dana yang diperlukan tidak tersedia.",
                "http_status": 503,
                "recovery": "Simpan respons asal yang lengkap. Penahanan dana yang tidak pasti bukan kebenaran untuk menghantar semula.",
                "type": null
              },
              {
                "code": null,
                "condition": "Hasil asal, penggunaan atau penyelesaian caj memerlukan semakan.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Simpan ID permintaan sebenar dan respons asal. Baca rekod sedia ada milik anda; jangan hantar semula permintaan penciptaan.",
                "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 sebenar dan respons lengkap. Baca aset asal milik anda serta pautan kandungan bertandatangan yang tepat; jangan sekali-kali hantar semula penciptaan yang tidak pasti."
            },
            "outputs": {
              "all_results": "Simpan respons dan pengepala yang lengkap, setiap output sebenar, pengecam asal yang dikembalikan serta semua medan penggunaan. Pulihkan operasi asal tanpa menghantar permintaan penciptaan sekali lagi.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Badan respons asal yang lengkap, status dan pengepala yang dimajukan. Pengendali ini tidak menambah bentuk JSON sejagat, medan teks atau struktur pembungkus tugas."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "meta/muse-voice-transcribe-1.0"
                ],
                "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": [
                    "meta/muse-voice-transcribe-1.0"
                  ],
                  "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": "meta/muse-voice-transcribe-1.0"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Contoh ini membaca fail PCM WAV sebenar anda yang tidak kosong, mengekodkan keseluruhan bait fail sebagai base64 dan menghantar input_audio.format sebagai 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 tepat daripada rekod media sedia ada milik anda",
                "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': 'meta/muse-voice-transcribe-1.0', '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": "meta/muse-voice-transcribe-1.0",
        "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": "meta/muse-voice-transcribe-1.0",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "aa56bc09598c00850807efaee8b61937551ad72a3566afc6468fbb01229e92e1",
    "input_html_sha256": "780d3422e0c7ed4bb894a43f279f7bf1ba34215dbf6c0b35c7067038419c63e9",
    "private_audit_sha256": "673e68ae184f4d7a93505136c31ecbb9b0a1cc46f3468f20a440a609ba1751b4",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/ms/meta-muse-voice-transcribe-1-0/",
    "description": "Muse Voice Transcribe 1.0 ialah model pertuturan kepada teks Meta untuk imlak, giliran pertuturan yang dikesan dan transkrip yang membezakan penutur. Model ini menyokong petunjuk bahasa dan kosa kata, peralihan bahasa serta pemasaan pada peringkat giliran, dengan aliran kerja berasingan untuk klip rakaman dan audio langsung.",
    "locale": "ms",
    "md_url": "https://ailoot.ai/models/ms/meta-muse-voice-transcribe-1-0/index.md",
    "title": "Meta: Muse Voice Transcribe 1.0 — Ailoot",
    "url": "https://ailoot.ai/models/ms/meta-muse-voice-transcribe-1-0/"
  },
  "rawModel": {
    "about": "Muse Voice Transcribe 1.0 ialah model persepsi audio Meta untuk mentranskripsikan pertuturan, mengesan sempadan ujaran dan mengaitkan giliran dengan penutur. Model ini tergolong dalam keluarga model Muse Spark dan menggabungkan pengecaman, diarisasi dan pengesanan penghujung ujaran dalam model. Outputnya ialah teks yang dikenal pasti bersama maklumat pemasaan dan penutur yang tersedia dalam mod yang dipilih.\n\nModel ini memproses audio dalam cebisan 80 milisaat dan menentukan masa untuk terus mendengar atau mengeluarkan teks. Kelewatan adaptifnya membolehkan model menunggu audio tambahan apabila sesuatu perkataan lebih sukar dikenal pasti. Ini menghasilkan teks separa semasa pertuturan diterima, diikuti hasil transkripsi yang lengkap. Anggap hipotesis separa dan giliran yang lengkap sebagai peringkat berbeza dalam pengalaman mendengar.\n\nPilih antara tiga mod. Push-to-talk ialah lalai untuk satu ujaran terkawal, seperti pertanyaan suara atau petikan imlak ringkas. Endpointing membolehkan model mengesan sempadan giliran pertuturan dan mengembalikan satu transkrip lengkap bagi setiap segmen yang dikesan. Diarization mengaitkan pertuturan yang dikenal pasti dengan label penutur dan ditujukan untuk rakaman berbilang penutur, bukannya penggiliran arahan suara yang terpantas.\n\nUntuk klip rakaman, aliran kerja transkripsi fail mengembalikan transkrip lengkap dalam satu permintaan. Hasil lalai ialah JSON yang mengandungi transkrip dan tempoh audio, dengan tatasusunan turns dalam mod endpointing dan diarization. Setiap giliran boleh membawa pengecam, masa mula dan tamat dalam milisaat serta teksnya yang dikenal pasti. Label penutur hadir dalam mod diarization. Push-to-talk menghasilkan transkrip lengkap tanpa giliran yang dikesan dalam tatasusunan tersebut. Antara muka fail rakaman pengeluar juga boleh mengembalikan teks biasa atau aliran peristiwa transkripsi. Teks biasa meletakkan giliran yang dikesan pada baris berasingan dan boleh menyertakan label penutur; aliran peristiwa tamat selepas peristiwa terakhirnya tanpa ringkasan JSON berasingan. Mod separa delta mengembalikan teks secara bertokok, manakala peristiwa transkrip akhir mengandungi keseluruhan teks.\n\nSediakan fail RIFF/WAVE yang mengandungi audio PCM integer 16-bit mono pada 16 atau 24 kHz. Kadar natif model ialah 24 kHz, dan antara muka turut menerima 16 kHz. Tukarkan bekas atau pengekodan lain kepada bentuk WAV yang disokong itu sebelum membekalkan rakaman. Profil transkripsi fail membenarkan audio sehingga 10 minit dan jumlah badan permintaan sehingga 32 MB. Simpan rakaman asal dan sebarang penukaran bersama transkrip yang dikembalikan untuk semakan pendengaran kemudian.\n\nAliran kerja audio langsung menggunakan PCM mono mentah bertanda 16-bit little-endian, dengan audio 16 atau 24 kHz dihantar pada kadar yang menghampiri masa nyata. Tetingkap sesi yang didokumenkan ialah 60 minit. Meta menerangkan input audio natif yang melebihi satu jam; had fail dan sesi langsung yang didokumenkan kekal sebagai sempadan antara muka yang berasingan. Pilih aliran kerja fail rakaman atau langsung berdasarkan sama ada audio sudah lengkap atau masih dirakam, dan kaitkan hasil daripada sesi berasingan dengan segmen input masing-masing.\n\nMuse Voice Transcribe dilatih merentas lebih 70 bahasa, manakala antara muka pengecaman yang didokumenkan menyenaraikan 25 bahasa yang disokong. Ini termasuk bahasa Inggeris, Perancis, Jerman, Sepanyol, Arab, Cina Mandarin, Hindi, Jepun, Korea, Itali dan Portugis. Model ini mengenal pasti peralihan bahasa dalam atau antara ayat. Petunjuk bahasa boleh menamakan bahasa yang dijangka dalam audio, tetapi ia memandu pengecaman dan bukannya memaksa transkrip menjadi satu bahasa.\n\nPetunjuk kosa kata membantu pengecaman istilah produk, akronim, nama atau tempat yang penting dalam rakaman. Bekalkan perkataan dan ejaan sebenar yang anda jangka akan didengar. Senarai kata kunci mempengaruhi pengecaman tanpa menjamin ejaan yang tepat, maka semak istilah penentu terhadap audio. Petunjuk bahasa dan kata kunci dipilih pada permulaan transkripsi; pastikan ia sesuai dengan rakaman tersebut dan bukannya mengubah maknanya ketika sesi sedang berjalan.\n\nModel ini menyokong diarisasi untuk perbualan dengan lebih 20 penutur. Label seperti A dan B mengenal pasti penutur dalam satu transkripsi. Label itu bukan nama yang disahkan dan tidak membuktikan bahawa sesuatu label merujuk kepada orang yang sama dalam sesi lain. Untuk tugas analisis mesyuarat asal, minta giliran yang dikaitkan dengan penutur, simpan rakaman dan gunakan label untuk menyusun perbincangan sebelum menetapkan nama peserta sebenar melalui aliran kerja sekeliling.\n\nTranskrip separa langsung boleh berubah apabila lebih banyak pertuturan diterima. Dalam mod kumulatif, setiap hasil separa menggantikan hipotesis sebelumnya dan bukannya menambah salinan baharu. Penghujung pertuturan yang dikesan menandakan sempadan, manakala hasil giliran lengkap membekalkan teks akhir dan boleh berbeza daripada hasil separa terakhir. Kaitkan giliran yang bertindih dengan pengecam gilirannya, dan proses hasil lengkap sebelum menganggap transkrip telah selesai. Apabila input langsung tamat, isyaratkan penghujung input dan teruskan penerimaan sehingga pengeluar selesai mengeluarkan hasil yang tertangguh. Menutup sambungan serta-merta boleh menyebabkan hasil tersebut hilang; sempadan pertuturan yang dikesan menamatkan giliran, bukannya seluruh sesi.\n\nPemasaan diberikan pada peringkat giliran. Profil ini tidak membekalkan cap masa per perkataan atau skor keyakinan, dan kemajuan pemprosesan audio bukan cap masa untuk perkataan tertentu. Pengesanan peristiwa bunyi, pengesanan emosi dan pemformatan semula transkrip juga berada di luar profil output yang didokumenkan. Gunakan selang giliran yang dikembalikan untuk garis masa penutur atau semakan pada peringkat segmen, dan kekalkan perkataan yang dikenal pasti jika langkah penyuntingan berasingan kemudian menghasilkan nota yang lebih kemas.\n\nArtifak yang berguna termasuk petikan imlak lengkap, transkrip pertanyaan suara, perbualan yang dikaitkan dengan penutur atau garis masa ujaran. Bandingkan nama, nombor dan istilah teknikal dengan rakaman asal, kekalkan kaitan mod dan pemasaan, serta pastikan giliran lengkap tersedia untuk semakan. Transkripsi menetapkan perkara yang dikenal pasti dalam audio; menjawab soalan lisan, menterjemahkannya atau menukarkannya kepada nota mesyuarat merupakan langkah aplikasi yang seterusnya.",
    "alias_of": null,
    "aliases": [],
    "author": "Meta",
    "capabilities": {
      "context_length": 0,
      "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": "Maklumat lengkap tentang harga konfigurasi terdapat dalam butiran."
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "meta/muse-voice-transcribe-1.0",
    "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": "Badan JSON atau ID model kanonik yang dinyatakan secara jelas tidak sah.",
                "http_status": 400,
                "recovery": "Simpan respons dan betulkan medan permintaan yang dinyatakan.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Kunci API Ailoot tidak sah.",
                "http_status": 401,
                "recovery": "Gunakan kunci API Ailoot anda yang dibenarkan.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Kumpulan kunci tidak membenarkan kaedah ini.",
                "http_status": 403,
                "recovery": "Simpan butiran ralat yang dikembalikan.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Kaedah yang dipilih tidak mempunyai laluan yang dibenarkan.",
                "http_status": 404,
                "recovery": "Simpan butiran ralat yang dikembalikan.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "Tarif yang diterima tidak dapat memperoleh kuantiti input atau batas yang diperlukan.",
                "http_status": 422,
                "recovery": "Simpan respons; gunakan bentuk perwakilan input yang diperlukan oleh tarif yang diterima.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Storan, laluan, harga kaedah atau penahanan dana yang diperlukan tidak tersedia.",
                "http_status": 503,
                "recovery": "Simpan respons asal yang lengkap. Penahanan dana yang tidak pasti bukan kebenaran untuk menghantar semula.",
                "type": null
              },
              {
                "code": null,
                "condition": "Hasil asal, penggunaan atau penyelesaian caj memerlukan semakan.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Simpan ID permintaan sebenar dan respons asal. Baca rekod sedia ada milik anda; jangan hantar semula permintaan penciptaan.",
                "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 sebenar dan respons lengkap. Baca aset asal milik anda serta pautan kandungan bertandatangan yang tepat; jangan sekali-kali hantar semula penciptaan yang tidak pasti."
            },
            "outputs": {
              "all_results": "Simpan respons dan pengepala yang lengkap, setiap output sebenar, pengecam asal yang dikembalikan serta semua medan penggunaan. Pulihkan operasi asal tanpa menghantar permintaan penciptaan sekali lagi.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Badan respons asal yang lengkap, status dan pengepala yang dimajukan. Pengendali ini tidak menambah bentuk JSON sejagat, medan teks atau struktur pembungkus tugas."
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "meta/muse-voice-transcribe-1.0"
                ],
                "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": [
                    "meta/muse-voice-transcribe-1.0"
                  ],
                  "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": "meta/muse-voice-transcribe-1.0"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "Contoh ini membaca fail PCM WAV sebenar anda yang tidak kosong, mengekodkan keseluruhan bait fail sebagai base64 dan menghantar input_audio.format sebagai 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 tepat daripada rekod media sedia ada milik anda",
                "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': 'meta/muse-voice-transcribe-1.0', '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": "meta/muse-voice-transcribe-1.0",
        "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": "meta/muse-voice-transcribe-1.0",
        "request_model_id": "meta/muse-voice-transcribe-1.0",
        "route_label": "Ultra"
      }
    ],
    "name": "Meta: Muse Voice Transcribe 1.0",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Muse Voice Transcribe 1.0 ialah model pertuturan kepada teks Meta untuk imlak, giliran pertuturan yang dikesan dan transkrip yang membezakan penutur. Model ini menyokong petunjuk bahasa dan kosa kata, peralihan bahasa serta pemasaan pada peringkat giliran, dengan aliran kerja berasingan untuk klip rakaman dan audio langsung."
  },
  "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": "Muse Voice Transcribe 1.0 ialah model pertuturan kepada teks Meta untuk imlak, giliran pertuturan yang dikesan dan transkrip yang membezakan penutur. Model ini menyokong petunjuk bahasa dan kosa kata, peralihan bahasa serta pemasaan pada peringkat giliran, dengan aliran kerja berasingan untuk klip rakaman dan audio langsung.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "eed968e2edd431f2e07fb245c4a0bfa5f79d8114212d06233c1f957bdf9c80ae",
    "renderer_sha256": "1dab5ba62521e9568c8b7c82005622cabbf330a075df7cce1f83274a04009460"
  },
  "sourceRevision": "40aa6ca293435f85cd190202ef759aa25f51b6661831b8e0a85f55e152c53a87"
}
