{
  "aboutHtml": "<p>Muse Voice Transcribe 1.0 è il modello di percezione audio di Meta per trascrivere il parlato, rilevare i confini degli enunciati e attribuire i turni ai parlanti. Appartiene alla famiglia di modelli Muse Spark e combina riconoscimento, diarizzazione ed endpointing all’interno del modello. Il suo output è il testo riconosciuto, con le informazioni temporali e sul parlante disponibili nella modalità selezionata.</p><p>Il modello elabora l’audio in blocchi di 80 millisecondi e decide quando continuare ad ascoltare o emettere testo. Il ritardo adattivo gli consente di attendere ulteriore audio quando una parola è più difficile da riconoscere. Questo produce testo parziale mentre il parlato arriva, seguito dai risultati di trascrizione completati. Considera l’ipotesi parziale e il turno completato come fasi diverse dell’esperienza di ascolto.</p><p>Scegli fra tre modalità. Push-to-talk è quella predefinita per un singolo enunciato controllato, come una domanda vocale o un breve passaggio dettato. Endpointing consente al modello di rilevare i confini dei turni di parola e restituire una trascrizione completata per ogni segmento rilevato. Diarization attribuisce il parlato riconosciuto a etichette dei parlanti ed è destinata alle registrazioni con più parlanti, anziché alla più rapida alternanza dei turni nei comandi vocali.</p><p>Per una clip registrata, il flusso di trascrizione dei file restituisce una trascrizione completa in una sola richiesta. Il risultato predefinito è un JSON che contiene la trascrizione e la durata dell’audio, con un array turns nelle modalità endpointing e diarization. Ogni turno può riportare un identificatore, inizio e fine in millisecondi e il testo riconosciuto. Le etichette dei parlanti sono presenti nella modalità diarization. Push-to-talk produce la trascrizione completa senza turni rilevati in quell’array. L’interfaccia del produttore per i file registrati può inoltre restituire testo semplice o un flusso di eventi di trascrizione. Il testo semplice mantiene i turni rilevati su righe separate e può includere le etichette dei parlanti; un flusso di eventi termina dopo l’evento finale, senza un riepilogo JSON separato. La modalità parziale delta restituisce testo incrementale, mentre l’evento finale di trascrizione contiene il testo completo.</p><p>Prepara un file RIFF/WAVE contenente audio mono PCM a interi di 16 bit, a 16 o 24 kHz. La frequenza nativa del modello è 24 kHz e l’interfaccia accetta anche 16 kHz. Converti gli altri contenitori o le altre codifiche nel formato WAV supportato prima di fornire una registrazione. Il profilo di trascrizione dei file consente audio fino a 10 minuti e un corpo totale della richiesta fino a 32 MB. Conserva la registrazione originale e ogni conversione associata alla trascrizione restituita per una successiva verifica tramite ascolto.</p><p>Il flusso di audio dal vivo usa PCM grezzo mono con segno a 16 bit little-endian, con audio a 16 o 24 kHz inviato a una cadenza approssimativamente in tempo reale. La finestra di sessione documentata è di 60 minuti. Meta descrive un input audio nativo superiore a un’ora; i limiti documentati per i file e le sessioni dal vivo rimangono confini separati dell’interfaccia. Scegli il flusso per file registrati o quello dal vivo in base al fatto che l’audio sia già completo o ancora in acquisizione, e mantieni i risultati di sessioni diverse associati ai rispettivi segmenti di input.</p><p>Muse Voice Transcribe è addestrato su più di 70 lingue, mentre l’interfaccia di riconoscimento documentata elenca 25 lingue supportate. Fra queste figurano inglese, francese, tedesco, spagnolo, arabo, cinese mandarino, hindi, giapponese, coreano, italiano e portoghese. Riconosce l’alternanza di lingue all’interno delle frasi o fra una frase e l’altra. Un’indicazione sulla lingua può specificare le lingue attese nell’audio, ma orienta il riconoscimento anziché imporre una sola lingua alla trascrizione.</p><p>Le indicazioni sul vocabolario aiutano con termini di prodotto, acronimi, nomi o luoghi importanti in una registrazione. Fornisci le parole effettive e le grafie che ti aspetti di ascoltare. L’elenco di parole chiave orienta il riconoscimento senza garantire una grafia esatta, quindi verifica i termini decisivi confrontandoli con l’audio. Le indicazioni sulla lingua e le parole chiave vengono selezionate all’inizio della trascrizione; mantienile adeguate a quella registrazione anziché cambiarne il significato durante una sessione in corso.</p><p>Il modello supporta la diarizzazione per conversazioni con più di 20 parlanti. Etichette come A e B identificano i parlanti all’interno di una trascrizione. Non sono nomi verificati e non stabiliscono che un’etichetta si riferisca alla stessa persona in un’altra sessione. Per un’attività di analisi di una riunione originale, richiedi turni attribuiti ai parlanti, conserva la registrazione e usa le etichette per organizzare la discussione prima di assegnare eventuali nomi reali dei partecipanti attraverso il flusso di lavoro circostante.</p><p>Le trascrizioni parziali dal vivo possono cambiare con l’arrivo di altro parlato. Nella modalità cumulativa, ogni risultato parziale sostituisce l’ipotesi precedente anziché aggiungerne un’altra copia. Un rilevamento della fine del parlato indica un confine, mentre il risultato del turno completato fornisce il testo finale e può differire dall’ultimo risultato parziale. Mantieni i turni sovrapposti associati ai rispettivi identificatori e acquisisci i risultati completati prima di considerare conclusa una trascrizione. Quando l’input dal vivo termina, segnala la fine dell’input e continua a ricevere finché il produttore non ha finito di inviare i risultati in attesa. Chiudere immediatamente la connessione può far perdere quei risultati; un confine del parlato rilevato conclude un turno, anziché l’intera sessione.</p><p>I riferimenti temporali sono a livello di turno. Questo profilo non fornisce timestamp a livello di parola né punteggi di confidenza, e l’avanzamento dell’elaborazione audio non è un timestamp per una parola specifica. Anche il rilevamento di eventi sonori, il rilevamento delle emozioni e la riformattazione delle trascrizioni sono esterni al profilo di output documentato. Usa gli intervalli dei turni restituiti per una sequenza temporale dei parlanti o una verifica a livello di segmento, e conserva le parole riconosciute se un passaggio di revisione separato crea successivamente note più ordinate.</p><p>Fra gli artefatti utili figurano un passaggio dettato completato, la trascrizione di una domanda vocale, una conversazione attribuita ai parlanti o una sequenza temporale degli enunciati. Confronta nomi, numeri e termini tecnici con la registrazione originale, preserva la modalità e le associazioni temporali e mantieni disponibili i turni completi per la verifica. La trascrizione stabilisce che cosa è stato riconosciuto nell’audio; rispondere a una domanda pronunciata, tradurla o trasformarla in note di riunione spetta a un passaggio successivo dell’applicazione.</p>",
  "aboutText": "Muse Voice Transcribe 1.0 è il modello di percezione audio di Meta per trascrivere il parlato, rilevare i confini degli enunciati e attribuire i turni ai parlanti. Appartiene alla famiglia di modelli Muse Spark e combina riconoscimento, diarizzazione ed endpointing all’interno del modello. Il suo output è il testo riconosciuto, con le informazioni temporali e sul parlante disponibili nella modalità selezionata.\n\nIl modello elabora l’audio in blocchi di 80 millisecondi e decide quando continuare ad ascoltare o emettere testo. Il ritardo adattivo gli consente di attendere ulteriore audio quando una parola è più difficile da riconoscere. Questo produce testo parziale mentre il parlato arriva, seguito dai risultati di trascrizione completati. Considera l’ipotesi parziale e il turno completato come fasi diverse dell’esperienza di ascolto.\n\nScegli fra tre modalità. Push-to-talk è quella predefinita per un singolo enunciato controllato, come una domanda vocale o un breve passaggio dettato. Endpointing consente al modello di rilevare i confini dei turni di parola e restituire una trascrizione completata per ogni segmento rilevato. Diarization attribuisce il parlato riconosciuto a etichette dei parlanti ed è destinata alle registrazioni con più parlanti, anziché alla più rapida alternanza dei turni nei comandi vocali.\n\nPer una clip registrata, il flusso di trascrizione dei file restituisce una trascrizione completa in una sola richiesta. Il risultato predefinito è un JSON che contiene la trascrizione e la durata dell’audio, con un array turns nelle modalità endpointing e diarization. Ogni turno può riportare un identificatore, inizio e fine in millisecondi e il testo riconosciuto. Le etichette dei parlanti sono presenti nella modalità diarization. Push-to-talk produce la trascrizione completa senza turni rilevati in quell’array. L’interfaccia del produttore per i file registrati può inoltre restituire testo semplice o un flusso di eventi di trascrizione. Il testo semplice mantiene i turni rilevati su righe separate e può includere le etichette dei parlanti; un flusso di eventi termina dopo l’evento finale, senza un riepilogo JSON separato. La modalità parziale delta restituisce testo incrementale, mentre l’evento finale di trascrizione contiene il testo completo.\n\nPrepara un file RIFF/WAVE contenente audio mono PCM a interi di 16 bit, a 16 o 24 kHz. La frequenza nativa del modello è 24 kHz e l’interfaccia accetta anche 16 kHz. Converti gli altri contenitori o le altre codifiche nel formato WAV supportato prima di fornire una registrazione. Il profilo di trascrizione dei file consente audio fino a 10 minuti e un corpo totale della richiesta fino a 32 MB. Conserva la registrazione originale e ogni conversione associata alla trascrizione restituita per una successiva verifica tramite ascolto.\n\nIl flusso di audio dal vivo usa PCM grezzo mono con segno a 16 bit little-endian, con audio a 16 o 24 kHz inviato a una cadenza approssimativamente in tempo reale. La finestra di sessione documentata è di 60 minuti. Meta descrive un input audio nativo superiore a un’ora; i limiti documentati per i file e le sessioni dal vivo rimangono confini separati dell’interfaccia. Scegli il flusso per file registrati o quello dal vivo in base al fatto che l’audio sia già completo o ancora in acquisizione, e mantieni i risultati di sessioni diverse associati ai rispettivi segmenti di input.\n\nMuse Voice Transcribe è addestrato su più di 70 lingue, mentre l’interfaccia di riconoscimento documentata elenca 25 lingue supportate. Fra queste figurano inglese, francese, tedesco, spagnolo, arabo, cinese mandarino, hindi, giapponese, coreano, italiano e portoghese. Riconosce l’alternanza di lingue all’interno delle frasi o fra una frase e l’altra. Un’indicazione sulla lingua può specificare le lingue attese nell’audio, ma orienta il riconoscimento anziché imporre una sola lingua alla trascrizione.\n\nLe indicazioni sul vocabolario aiutano con termini di prodotto, acronimi, nomi o luoghi importanti in una registrazione. Fornisci le parole effettive e le grafie che ti aspetti di ascoltare. L’elenco di parole chiave orienta il riconoscimento senza garantire una grafia esatta, quindi verifica i termini decisivi confrontandoli con l’audio. Le indicazioni sulla lingua e le parole chiave vengono selezionate all’inizio della trascrizione; mantienile adeguate a quella registrazione anziché cambiarne il significato durante una sessione in corso.\n\nIl modello supporta la diarizzazione per conversazioni con più di 20 parlanti. Etichette come A e B identificano i parlanti all’interno di una trascrizione. Non sono nomi verificati e non stabiliscono che un’etichetta si riferisca alla stessa persona in un’altra sessione. Per un’attività di analisi di una riunione originale, richiedi turni attribuiti ai parlanti, conserva la registrazione e usa le etichette per organizzare la discussione prima di assegnare eventuali nomi reali dei partecipanti attraverso il flusso di lavoro circostante.\n\nLe trascrizioni parziali dal vivo possono cambiare con l’arrivo di altro parlato. Nella modalità cumulativa, ogni risultato parziale sostituisce l’ipotesi precedente anziché aggiungerne un’altra copia. Un rilevamento della fine del parlato indica un confine, mentre il risultato del turno completato fornisce il testo finale e può differire dall’ultimo risultato parziale. Mantieni i turni sovrapposti associati ai rispettivi identificatori e acquisisci i risultati completati prima di considerare conclusa una trascrizione. Quando l’input dal vivo termina, segnala la fine dell’input e continua a ricevere finché il produttore non ha finito di inviare i risultati in attesa. Chiudere immediatamente la connessione può far perdere quei risultati; un confine del parlato rilevato conclude un turno, anziché l’intera sessione.\n\nI riferimenti temporali sono a livello di turno. Questo profilo non fornisce timestamp a livello di parola né punteggi di confidenza, e l’avanzamento dell’elaborazione audio non è un timestamp per una parola specifica. Anche il rilevamento di eventi sonori, il rilevamento delle emozioni e la riformattazione delle trascrizioni sono esterni al profilo di output documentato. Usa gli intervalli dei turni restituiti per una sequenza temporale dei parlanti o una verifica a livello di segmento, e conserva le parole riconosciute se un passaggio di revisione separato crea successivamente note più ordinate.\n\nFra gli artefatti utili figurano un passaggio dettato completato, la trascrizione di una domanda vocale, una conversazione attribuita ai parlanti o una sequenza temporale degli enunciati. Confronta nomi, numeri e termini tecnici con la registrazione originale, preserva la modalità e le associazioni temporali e mantieni disponibili i turni completi per la verifica. La trascrizione stabilisce che cosa è stato riconosciuto nell’audio; rispondere a una domanda pronunciata, tradurla o trasformarla in note di riunione spetta a un passaggio successivo dell’applicazione.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "a6c2b0fe8f63eed6263e622bd475a7412bc02740bd3dccc74562062d14f0218e",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "it",
  "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=\"Chiudi\">×</button></div><div class=\"idline\"><span>Meta /</span><code>meta/muse-voice-transcribe-1.0</code><button type=\"button\" id=\"copy-id\">Copia ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Sezioni della scheda del modello\"><button type=\"button\" data-card-jump=\"overview\">Introduzione</button><button type=\"button\" data-card-jump=\"methods\">Input e metodi</button><button type=\"button\" data-card-jump=\"pricing\">Tariffe</button><button type=\"button\" data-card-jump=\"examples\">Esempi</button><button type=\"button\" data-card-jump=\"results\">Risultati</button><button type=\"button\" data-card-jump=\"aliases\">Alias</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Metodi 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\">Riconoscimento</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\">Introduzione</h3><p class=\"mdesc-full\">Muse Voice Transcribe 1.0 è il modello di Meta per la conversione da parlato a testo, destinato alla dettatura, al rilevamento dei turni di parola e alle trascrizioni con attribuzione ai parlanti. Supporta indicazioni sulla lingua e sul vocabolario, alternanza di lingue e riferimenti temporali a livello di turno, con flussi di lavoro separati per clip registrate e audio dal vivo.</p><dl class=\"card-io\" data-card-io><div><dt>Input accettati</dt><dd>Audio</dd></div><div><dt>Risultati</dt><dd>Testo</dd></div></dl><details class=\"card-about\"><summary>Informazioni sul modello</summary><p class=\"note-s\" data-model-method-boundary>Questa descrizione illustra le funzionalità del modello. Gli input, gli output e le opzioni disponibili in Ailoot per il metodo selezionato sono elencati di seguito.</p><div class=\"mabout\" id=\"m-about\"><p>Muse Voice Transcribe 1.0 è il modello di percezione audio di Meta per trascrivere il parlato, rilevare i confini degli enunciati e attribuire i turni ai parlanti. Appartiene alla famiglia di modelli Muse Spark e combina riconoscimento, diarizzazione ed endpointing all’interno del modello. Il suo output è il testo riconosciuto, con le informazioni temporali e sul parlante disponibili nella modalità selezionata.</p><p>Il modello elabora l’audio in blocchi di 80 millisecondi e decide quando continuare ad ascoltare o emettere testo. Il ritardo adattivo gli consente di attendere ulteriore audio quando una parola è più difficile da riconoscere. Questo produce testo parziale mentre il parlato arriva, seguito dai risultati di trascrizione completati. Considera l’ipotesi parziale e il turno completato come fasi diverse dell’esperienza di ascolto.</p><p>Scegli fra tre modalità. Push-to-talk è quella predefinita per un singolo enunciato controllato, come una domanda vocale o un breve passaggio dettato. Endpointing consente al modello di rilevare i confini dei turni di parola e restituire una trascrizione completata per ogni segmento rilevato. Diarization attribuisce il parlato riconosciuto a etichette dei parlanti ed è destinata alle registrazioni con più parlanti, anziché alla più rapida alternanza dei turni nei comandi vocali.</p><p>Per una clip registrata, il flusso di trascrizione dei file restituisce una trascrizione completa in una sola richiesta. Il risultato predefinito è un JSON che contiene la trascrizione e la durata dell’audio, con un array turns nelle modalità endpointing e diarization. Ogni turno può riportare un identificatore, inizio e fine in millisecondi e il testo riconosciuto. Le etichette dei parlanti sono presenti nella modalità diarization. Push-to-talk produce la trascrizione completa senza turni rilevati in quell’array. L’interfaccia del produttore per i file registrati può inoltre restituire testo semplice o un flusso di eventi di trascrizione. Il testo semplice mantiene i turni rilevati su righe separate e può includere le etichette dei parlanti; un flusso di eventi termina dopo l’evento finale, senza un riepilogo JSON separato. La modalità parziale delta restituisce testo incrementale, mentre l’evento finale di trascrizione contiene il testo completo.</p><p>Prepara un file RIFF/WAVE contenente audio mono PCM a interi di 16 bit, a 16 o 24 kHz. La frequenza nativa del modello è 24 kHz e l’interfaccia accetta anche 16 kHz. Converti gli altri contenitori o le altre codifiche nel formato WAV supportato prima di fornire una registrazione. Il profilo di trascrizione dei file consente audio fino a 10 minuti e un corpo totale della richiesta fino a 32 MB. Conserva la registrazione originale e ogni conversione associata alla trascrizione restituita per una successiva verifica tramite ascolto.</p><p>Il flusso di audio dal vivo usa PCM grezzo mono con segno a 16 bit little-endian, con audio a 16 o 24 kHz inviato a una cadenza approssimativamente in tempo reale. La finestra di sessione documentata è di 60 minuti. Meta descrive un input audio nativo superiore a un’ora; i limiti documentati per i file e le sessioni dal vivo rimangono confini separati dell’interfaccia. Scegli il flusso per file registrati o quello dal vivo in base al fatto che l’audio sia già completo o ancora in acquisizione, e mantieni i risultati di sessioni diverse associati ai rispettivi segmenti di input.</p><p>Muse Voice Transcribe è addestrato su più di 70 lingue, mentre l’interfaccia di riconoscimento documentata elenca 25 lingue supportate. Fra queste figurano inglese, francese, tedesco, spagnolo, arabo, cinese mandarino, hindi, giapponese, coreano, italiano e portoghese. Riconosce l’alternanza di lingue all’interno delle frasi o fra una frase e l’altra. Un’indicazione sulla lingua può specificare le lingue attese nell’audio, ma orienta il riconoscimento anziché imporre una sola lingua alla trascrizione.</p><p>Le indicazioni sul vocabolario aiutano con termini di prodotto, acronimi, nomi o luoghi importanti in una registrazione. Fornisci le parole effettive e le grafie che ti aspetti di ascoltare. L’elenco di parole chiave orienta il riconoscimento senza garantire una grafia esatta, quindi verifica i termini decisivi confrontandoli con l’audio. Le indicazioni sulla lingua e le parole chiave vengono selezionate all’inizio della trascrizione; mantienile adeguate a quella registrazione anziché cambiarne il significato durante una sessione in corso.</p><p>Il modello supporta la diarizzazione per conversazioni con più di 20 parlanti. Etichette come A e B identificano i parlanti all’interno di una trascrizione. Non sono nomi verificati e non stabiliscono che un’etichetta si riferisca alla stessa persona in un’altra sessione. Per un’attività di analisi di una riunione originale, richiedi turni attribuiti ai parlanti, conserva la registrazione e usa le etichette per organizzare la discussione prima di assegnare eventuali nomi reali dei partecipanti attraverso il flusso di lavoro circostante.</p><p>Le trascrizioni parziali dal vivo possono cambiare con l’arrivo di altro parlato. Nella modalità cumulativa, ogni risultato parziale sostituisce l’ipotesi precedente anziché aggiungerne un’altra copia. Un rilevamento della fine del parlato indica un confine, mentre il risultato del turno completato fornisce il testo finale e può differire dall’ultimo risultato parziale. Mantieni i turni sovrapposti associati ai rispettivi identificatori e acquisisci i risultati completati prima di considerare conclusa una trascrizione. Quando l’input dal vivo termina, segnala la fine dell’input e continua a ricevere finché il produttore non ha finito di inviare i risultati in attesa. Chiudere immediatamente la connessione può far perdere quei risultati; un confine del parlato rilevato conclude un turno, anziché l’intera sessione.</p><p>I riferimenti temporali sono a livello di turno. Questo profilo non fornisce timestamp a livello di parola né punteggi di confidenza, e l’avanzamento dell’elaborazione audio non è un timestamp per una parola specifica. Anche il rilevamento di eventi sonori, il rilevamento delle emozioni e la riformattazione delle trascrizioni sono esterni al profilo di output documentato. Usa gli intervalli dei turni restituiti per una sequenza temporale dei parlanti o una verifica a livello di segmento, e conserva le parole riconosciute se un passaggio di revisione separato crea successivamente note più ordinate.</p><p>Fra gli artefatti utili figurano un passaggio dettato completato, la trascrizione di una domanda vocale, una conversazione attribuita ai parlanti o una sequenza temporale degli enunciati. Confronta nomi, numeri e termini tecnici con la registrazione originale, preserva la modalità e le associazioni temporali e mantieni disponibili i turni completi per la verifica. La trascrizione stabilisce che cosa è stato riconosciuto nell’audio; rispondere a una domanda pronunciata, tradurla o trasformarla in note di riunione spetta a un passaggio successivo dell’applicazione.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Disponibile in Ailoot · input e metodi</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Trascrizione</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>Tipi di input</dt><dd><code>audio</code></dd></div><div><dt>Tipi di output</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Campo</th><th>Tipo</th><th>Requisito</th><th>Valori e limiti</th><th>Predefinito</th></tr></thead><tbody><tr><th data-cell-label=\"Campo\" scope=\"row\"><span class=\"card-cell-label\">Campo</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Tipo\" data-field-type><span class=\"card-cell-label\">Tipo</span><code>string</code></td><td data-cell-label=\"Requisito\"><span class=\"card-cell-label\">Requisito</span>Obbligatorio</td><td data-cell-label=\"Valori e limiti\"><span class=\"card-cell-label\">Valori e limiti</span><div>meta/muse-voice-transcribe-1.0</div></td><td data-cell-label=\"Predefinito\" data-default=\"unspecified\"><span class=\"card-cell-label\">Predefinito</span>—</td></tr><tr><th data-cell-label=\"Campo\" scope=\"row\"><span class=\"card-cell-label\">Campo</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"Tipo\" data-field-type><span class=\"card-cell-label\">Tipo</span><code>object</code></td><td data-cell-label=\"Requisito\"><span class=\"card-cell-label\">Requisito</span>Obbligatorio</td><td data-cell-label=\"Valori e limiti\"><span class=\"card-cell-label\">Valori e limiti</span></td><td data-cell-label=\"Predefinito\" data-default=\"unspecified\"><span class=\"card-cell-label\">Predefinito</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Parametri e ciclo di vita del metodo</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parametro</th><th>Contratto</th></tr></thead><tbody><tr><th data-cell-label=\"Parametro\" scope=\"row\"><span class=\"card-cell-label\">Parametro</span><code>content_type</code></th><td data-cell-label=\"Contratto\"><span class=\"card-cell-label\">Contratto</span>application/json</td></tr><tr><th data-cell-label=\"Parametro\" scope=\"row\"><span class=\"card-cell-label\">Parametro</span><code>required</code></th><td data-cell-label=\"Contratto\"><span class=\"card-cell-label\">Contratto</span>model, input_audio</td></tr><tr><th data-cell-label=\"Parametro\" scope=\"row\"><span class=\"card-cell-label\">Parametro</span><code>material_types</code></th><td data-cell-label=\"Contratto\"><span class=\"card-cell-label\">Contratto</span>audio</td></tr><tr><th data-cell-label=\"Parametro\" scope=\"row\"><span class=\"card-cell-label\">Parametro</span><code>material_conditions</code></th><td data-cell-label=\"Contratto\"><span class=\"card-cell-label\">Contratto</span>L&#39;esempio legge il tuo file PCM WAV reale e non vuoto, codifica tutti i byte del file in base64 e invia input_audio.format con valore wav.</td></tr></tbody></table></div><p>Ciclo di vita: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · task_id esatto di un record multimediale esistente di tua proprietà</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\">Tariffe</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Le tariffe non aggiungono opzioni alla richiesta. I parametri supportati sono elencati nel metodo selezionato.</p><dl data-price-conditions><dt>Modalità rapida</dt><dd>Non specificato <span class=\"note-s\">Quando è selezionata la modalità rapida</span></dd><dt>Modalità flex</dt><dd>Non specificato <span class=\"note-s\">Quando è selezionata la modalità flex</span></dd><dt>Sforzo massimo di ragionamento</dt><dd>Non specificato <span class=\"note-s\">Quando lo sforzo massimo di ragionamento usa l&#39;adeguamento predefinito (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Tariffe Ailoot</h4><h4>Prezzi per configurazione</h4><p class=\"note-s\">Associa ogni costo alle condizioni indicate. Usa una sola tariffa per ogni insieme di configurazioni alternative.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Configurazione</th><th>Listino delle tariffe</th><th>Unità di fatturazione</th><th>Costo</th></tr></thead><tbody><tr><th data-cell-label=\"Configurazione\" scope=\"row\"><span class=\"card-cell-label\">Configurazione</span>Tariffe base dei token</th><td data-cell-label=\"Listino delle tariffe\"><span class=\"card-cell-label\">Listino delle tariffe</span>Tariffa base</td><td data-cell-label=\"Unità di fatturazione\"><span class=\"card-cell-label\">Unità di fatturazione</span>—</td><td data-cell-label=\"Costo\"><span class=\"card-cell-label\">Costo</span><div><span>Input · Token in input</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Output · Token in output</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Input · Lettura dalla cache</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Input · Scrittura nella cache</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Input · Scrittura nella cache, 1 ora</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div></td></tr><tr><th data-cell-label=\"Configurazione\" scope=\"row\"><span class=\"card-cell-label\">Configurazione</span>secondo audio in ingresso</th><td data-cell-label=\"Listino delle tariffe\"><span class=\"card-cell-label\">Listino delle tariffe</span>—</td><td data-cell-label=\"Unità di fatturazione\"><span class=\"card-cell-label\">Unità di fatturazione</span>per secondo di audio in input</td><td data-cell-label=\"Costo\"><span class=\"card-cell-label\">Costo</span><div><span>Input · secondo audio in ingresso</span> <b>$0.0001</b> <span class=\"price-unit\">per secondo di audio in input</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot prenota un importo stimato prima di una richiesta. Dopo il risultato, addebita il costo finale in base all’utilizzo misurato. Per lo streaming, l’addebito usa il record finale di utilizzo. <a href=\"/docs/it/billing/reserve/\">Come funzionano la prenotazione e l’addebito finale →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Esempi di richieste</h3><h4>Ailoot Ultra · Trascrizione</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Varianti di codice\"><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 · file WAV effettivo e risultato originale completo</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Copia il codice\"><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\">Ricevi e salva i risultati</h3><h4>Ailoot Ultra · Trascrizione</h4><p class=\"note-s\">Corpo completo della risposta originale, stato e intestazioni inoltrate. Questo gestore non aggiunge alcuna struttura JSON universale, campo di testo o struttura contenitore dell&#39;attività.</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>Conserva tutti i risultati completati</h5><p class=\"note-s\">Conserva ogni risposta, file e parte di contenuto restituiti per intero.</p><p class=\"note-s\">Conserva la risposta completa e gli header, ogni output effettivo, gli identificatori originali restituiti e tutti i campi di utilizzo. Recupera l&#39;operazione originale senza inviare nuovamente la richiesta di creazione.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Se occorre verificare la risposta originale</h5><p class=\"note-s\">Conserva l&#39;X-Client-Request-ID effettivo e la risposta completa. Consulta le risorse originali di tua proprietà e i relativi URL firmati esatti del contenuto; non inviare mai nuovamente una creazione dall&#39;esito incerto.</p></div><details class=\"card-about\" data-output-fields><summary>Campi della risposta</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Campo</th><th>Tipo</th></tr></thead><tbody><tr><th data-cell-label=\"Campo\" scope=\"row\"><span class=\"card-cell-label\">Campo</span><code class=\"card-field-name\">text (when present)</code></th><td data-cell-label=\"Tipo\" data-field-type><span class=\"card-cell-label\">Tipo</span></td></tr><tr><th data-cell-label=\"Campo\" scope=\"row\"><span class=\"card-cell-label\">Campo</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"Tipo\" data-field-type><span class=\"card-cell-label\">Tipo</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Errori e passaggi successivi</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Risposta</th><th>Condizione</th><th>Passaggio successivo</th></tr></thead><tbody><tr><th data-cell-label=\"Risposta\" scope=\"row\"><span class=\"card-cell-label\">Risposta</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Condizione\"><span class=\"card-cell-label\">Condizione</span>Il corpo JSON o l&#39;ID canonico esplicito del modello non è valido.</td><td data-cell-label=\"Passaggio successivo\"><span class=\"card-cell-label\">Passaggio successivo</span>Conserva la risposta e correggi il campo della richiesta indicato.</td></tr><tr><th data-cell-label=\"Risposta\" scope=\"row\"><span class=\"card-cell-label\">Risposta</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Condizione\"><span class=\"card-cell-label\">Condizione</span>La chiave API Ailoot non è valida.</td><td data-cell-label=\"Passaggio successivo\"><span class=\"card-cell-label\">Passaggio successivo</span>Usa la tua chiave API Ailoot autorizzata.</td></tr><tr><th data-cell-label=\"Risposta\" scope=\"row\"><span class=\"card-cell-label\">Risposta</span>403 · <code>permission_error</code></th><td data-cell-label=\"Condizione\"><span class=\"card-cell-label\">Condizione</span>Il gruppo della chiave non è autorizzato a utilizzare questo metodo.</td><td data-cell-label=\"Passaggio successivo\"><span class=\"card-cell-label\">Passaggio successivo</span>Conserva i dettagli dell&#39;errore restituiti.</td></tr><tr><th data-cell-label=\"Risposta\" scope=\"row\"><span class=\"card-cell-label\">Risposta</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Condizione\"><span class=\"card-cell-label\">Condizione</span>Il metodo selezionato non dispone di una rotta autorizzata all&#39;utilizzo.</td><td data-cell-label=\"Passaggio successivo\"><span class=\"card-cell-label\">Passaggio successivo</span>Conserva i dettagli dell&#39;errore restituiti.</td></tr><tr><th data-cell-label=\"Risposta\" scope=\"row\"><span class=\"card-cell-label\">Risposta</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Condizione\"><span class=\"card-cell-label\">Condizione</span>La tariffa accettata non può ottenere la quantità in ingresso o il limite richiesto.</td><td data-cell-label=\"Passaggio successivo\"><span class=\"card-cell-label\">Passaggio successivo</span>Conserva la risposta; usa la rappresentazione dell&#39;input richiesta dalla tariffa accettata.</td></tr><tr><th data-cell-label=\"Risposta\" scope=\"row\"><span class=\"card-cell-label\">Risposta</span>503 · <code></code></th><td data-cell-label=\"Condizione\"><span class=\"card-cell-label\">Condizione</span>L&#39;archiviazione richiesta, la rotta, il prezzo del metodo o la riserva dell&#39;importo non sono disponibili.</td><td data-cell-label=\"Passaggio successivo\"><span class=\"card-cell-label\">Passaggio successivo</span>Conserva l&#39;intera risposta originale. Una riserva dell&#39;importo dall&#39;esito incerto non autorizza un nuovo invio.</td></tr><tr><th data-cell-label=\"Risposta\" scope=\"row\"><span class=\"card-cell-label\">Risposta</span>502 · <code>server_error</code></th><td data-cell-label=\"Condizione\"><span class=\"card-cell-label\">Condizione</span>Il risultato originale, i dati di utilizzo o il conguaglio dell&#39;addebito richiedono una verifica.</td><td data-cell-label=\"Passaggio successivo\"><span class=\"card-cell-label\">Passaggio successivo</span>Conserva l&#39;ID effettivo della richiesta e la risposta originale. Consulta il record esistente di tua proprietà; non inviare nuovamente la richiesta di creazione.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Alias</h3><h4>Alias del modello</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 dei percorsi dei metodi</h4><p class=\"note-s\">Usa i percorsi dei metodi indicati sopra.</p><h4>ID di chiamata correlati</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": "Il corpo JSON o l'ID canonico esplicito del modello non è valido.",
                "http_status": 400,
                "recovery": "Conserva la risposta e correggi il campo della richiesta indicato.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "La chiave API Ailoot non è valida.",
                "http_status": 401,
                "recovery": "Usa la tua chiave API Ailoot autorizzata.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Il gruppo della chiave non è autorizzato a utilizzare questo metodo.",
                "http_status": 403,
                "recovery": "Conserva i dettagli dell'errore restituiti.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Il metodo selezionato non dispone di una rotta autorizzata all'utilizzo.",
                "http_status": 404,
                "recovery": "Conserva i dettagli dell'errore restituiti.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "La tariffa accettata non può ottenere la quantità in ingresso o il limite richiesto.",
                "http_status": 422,
                "recovery": "Conserva la risposta; usa la rappresentazione dell'input richiesta dalla tariffa accettata.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "L'archiviazione richiesta, la rotta, il prezzo del metodo o la riserva dell'importo non sono disponibili.",
                "http_status": 503,
                "recovery": "Conserva l'intera risposta originale. Una riserva dell'importo dall'esito incerto non autorizza un nuovo invio.",
                "type": null
              },
              {
                "code": null,
                "condition": "Il risultato originale, i dati di utilizzo o il conguaglio dell'addebito richiedono una verifica.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Conserva l'ID effettivo della richiesta e la risposta originale. Consulta il record esistente di tua proprietà; non inviare nuovamente la richiesta di creazione.",
                "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": "Conserva l'X-Client-Request-ID effettivo e la risposta completa. Consulta le risorse originali di tua proprietà e i relativi URL firmati esatti del contenuto; non inviare mai nuovamente una creazione dall'esito incerto."
            },
            "outputs": {
              "all_results": "Conserva la risposta completa e gli header, ogni output effettivo, gli identificatori originali restituiti e tutti i campi di utilizzo. Recupera l'operazione originale senza inviare nuovamente la richiesta di creazione.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Corpo completo della risposta originale, stato e intestazioni inoltrate. Questo gestore non aggiunge alcuna struttura JSON universale, campo di testo o struttura contenitore dell'attività."
            },
            "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": [
              "L'esempio legge il tuo file PCM WAV reale e non vuoto, codifica tutti i byte del file in base64 e invia input_audio.format con valore 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 esatto di un record multimediale esistente di tua proprietà",
                "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": "Trascrizione",
        "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": "f7d9fc8e684be1bf19854fbc35e668af3f8b0f2fe7739b27e4bfb15a5b25542c",
    "input_html_sha256": "353cdd50d76700e68b7421f0a6d85123bffa52ea8dd7811d9af28ffa58bdc422",
    "private_audit_sha256": "34559afc228e7e9da961070e42ee2922d83fd26f723b5b83863ce6a2cfae51f8",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/it/meta-muse-voice-transcribe-1-0/",
    "description": "Muse Voice Transcribe 1.0 è il modello di Meta per la conversione da parlato a testo, destinato alla dettatura, al rilevamento dei turni di parola e alle trascrizioni con attribuzione ai parlanti. Supporta indicazioni sulla lingua e sul vocabolario, alternanza di lingue e riferimenti temporali a livello di turno, con flussi di lavoro separati per clip registrate e audio dal vivo.",
    "locale": "it",
    "md_url": "https://ailoot.ai/models/it/meta-muse-voice-transcribe-1-0/index.md",
    "title": "Meta: Muse Voice Transcribe 1.0 — Ailoot",
    "url": "https://ailoot.ai/models/it/meta-muse-voice-transcribe-1-0/"
  },
  "rawModel": {
    "about": "Muse Voice Transcribe 1.0 è il modello di percezione audio di Meta per trascrivere il parlato, rilevare i confini degli enunciati e attribuire i turni ai parlanti. Appartiene alla famiglia di modelli Muse Spark e combina riconoscimento, diarizzazione ed endpointing all’interno del modello. Il suo output è il testo riconosciuto, con le informazioni temporali e sul parlante disponibili nella modalità selezionata.\n\nIl modello elabora l’audio in blocchi di 80 millisecondi e decide quando continuare ad ascoltare o emettere testo. Il ritardo adattivo gli consente di attendere ulteriore audio quando una parola è più difficile da riconoscere. Questo produce testo parziale mentre il parlato arriva, seguito dai risultati di trascrizione completati. Considera l’ipotesi parziale e il turno completato come fasi diverse dell’esperienza di ascolto.\n\nScegli fra tre modalità. Push-to-talk è quella predefinita per un singolo enunciato controllato, come una domanda vocale o un breve passaggio dettato. Endpointing consente al modello di rilevare i confini dei turni di parola e restituire una trascrizione completata per ogni segmento rilevato. Diarization attribuisce il parlato riconosciuto a etichette dei parlanti ed è destinata alle registrazioni con più parlanti, anziché alla più rapida alternanza dei turni nei comandi vocali.\n\nPer una clip registrata, il flusso di trascrizione dei file restituisce una trascrizione completa in una sola richiesta. Il risultato predefinito è un JSON che contiene la trascrizione e la durata dell’audio, con un array turns nelle modalità endpointing e diarization. Ogni turno può riportare un identificatore, inizio e fine in millisecondi e il testo riconosciuto. Le etichette dei parlanti sono presenti nella modalità diarization. Push-to-talk produce la trascrizione completa senza turni rilevati in quell’array. L’interfaccia del produttore per i file registrati può inoltre restituire testo semplice o un flusso di eventi di trascrizione. Il testo semplice mantiene i turni rilevati su righe separate e può includere le etichette dei parlanti; un flusso di eventi termina dopo l’evento finale, senza un riepilogo JSON separato. La modalità parziale delta restituisce testo incrementale, mentre l’evento finale di trascrizione contiene il testo completo.\n\nPrepara un file RIFF/WAVE contenente audio mono PCM a interi di 16 bit, a 16 o 24 kHz. La frequenza nativa del modello è 24 kHz e l’interfaccia accetta anche 16 kHz. Converti gli altri contenitori o le altre codifiche nel formato WAV supportato prima di fornire una registrazione. Il profilo di trascrizione dei file consente audio fino a 10 minuti e un corpo totale della richiesta fino a 32 MB. Conserva la registrazione originale e ogni conversione associata alla trascrizione restituita per una successiva verifica tramite ascolto.\n\nIl flusso di audio dal vivo usa PCM grezzo mono con segno a 16 bit little-endian, con audio a 16 o 24 kHz inviato a una cadenza approssimativamente in tempo reale. La finestra di sessione documentata è di 60 minuti. Meta descrive un input audio nativo superiore a un’ora; i limiti documentati per i file e le sessioni dal vivo rimangono confini separati dell’interfaccia. Scegli il flusso per file registrati o quello dal vivo in base al fatto che l’audio sia già completo o ancora in acquisizione, e mantieni i risultati di sessioni diverse associati ai rispettivi segmenti di input.\n\nMuse Voice Transcribe è addestrato su più di 70 lingue, mentre l’interfaccia di riconoscimento documentata elenca 25 lingue supportate. Fra queste figurano inglese, francese, tedesco, spagnolo, arabo, cinese mandarino, hindi, giapponese, coreano, italiano e portoghese. Riconosce l’alternanza di lingue all’interno delle frasi o fra una frase e l’altra. Un’indicazione sulla lingua può specificare le lingue attese nell’audio, ma orienta il riconoscimento anziché imporre una sola lingua alla trascrizione.\n\nLe indicazioni sul vocabolario aiutano con termini di prodotto, acronimi, nomi o luoghi importanti in una registrazione. Fornisci le parole effettive e le grafie che ti aspetti di ascoltare. L’elenco di parole chiave orienta il riconoscimento senza garantire una grafia esatta, quindi verifica i termini decisivi confrontandoli con l’audio. Le indicazioni sulla lingua e le parole chiave vengono selezionate all’inizio della trascrizione; mantienile adeguate a quella registrazione anziché cambiarne il significato durante una sessione in corso.\n\nIl modello supporta la diarizzazione per conversazioni con più di 20 parlanti. Etichette come A e B identificano i parlanti all’interno di una trascrizione. Non sono nomi verificati e non stabiliscono che un’etichetta si riferisca alla stessa persona in un’altra sessione. Per un’attività di analisi di una riunione originale, richiedi turni attribuiti ai parlanti, conserva la registrazione e usa le etichette per organizzare la discussione prima di assegnare eventuali nomi reali dei partecipanti attraverso il flusso di lavoro circostante.\n\nLe trascrizioni parziali dal vivo possono cambiare con l’arrivo di altro parlato. Nella modalità cumulativa, ogni risultato parziale sostituisce l’ipotesi precedente anziché aggiungerne un’altra copia. Un rilevamento della fine del parlato indica un confine, mentre il risultato del turno completato fornisce il testo finale e può differire dall’ultimo risultato parziale. Mantieni i turni sovrapposti associati ai rispettivi identificatori e acquisisci i risultati completati prima di considerare conclusa una trascrizione. Quando l’input dal vivo termina, segnala la fine dell’input e continua a ricevere finché il produttore non ha finito di inviare i risultati in attesa. Chiudere immediatamente la connessione può far perdere quei risultati; un confine del parlato rilevato conclude un turno, anziché l’intera sessione.\n\nI riferimenti temporali sono a livello di turno. Questo profilo non fornisce timestamp a livello di parola né punteggi di confidenza, e l’avanzamento dell’elaborazione audio non è un timestamp per una parola specifica. Anche il rilevamento di eventi sonori, il rilevamento delle emozioni e la riformattazione delle trascrizioni sono esterni al profilo di output documentato. Usa gli intervalli dei turni restituiti per una sequenza temporale dei parlanti o una verifica a livello di segmento, e conserva le parole riconosciute se un passaggio di revisione separato crea successivamente note più ordinate.\n\nFra gli artefatti utili figurano un passaggio dettato completato, la trascrizione di una domanda vocale, una conversazione attribuita ai parlanti o una sequenza temporale degli enunciati. Confronta nomi, numeri e termini tecnici con la registrazione originale, preserva la modalità e le associazioni temporali e mantieni disponibili i turni completi per la verifica. La trascrizione stabilisce che cosa è stato riconosciuto nell’audio; rispondere a una domanda pronunciata, tradurla o trasformarla in note di riunione spetta a un passaggio successivo dell’applicazione.",
    "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": "Tutte le tariffe della configurazione sono riportate nei dettagli."
      }
    ],
    "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": "Il corpo JSON o l'ID canonico esplicito del modello non è valido.",
                "http_status": 400,
                "recovery": "Conserva la risposta e correggi il campo della richiesta indicato.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "La chiave API Ailoot non è valida.",
                "http_status": 401,
                "recovery": "Usa la tua chiave API Ailoot autorizzata.",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "Il gruppo della chiave non è autorizzato a utilizzare questo metodo.",
                "http_status": 403,
                "recovery": "Conserva i dettagli dell'errore restituiti.",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "Il metodo selezionato non dispone di una rotta autorizzata all'utilizzo.",
                "http_status": 404,
                "recovery": "Conserva i dettagli dell'errore restituiti.",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "La tariffa accettata non può ottenere la quantità in ingresso o il limite richiesto.",
                "http_status": 422,
                "recovery": "Conserva la risposta; usa la rappresentazione dell'input richiesta dalla tariffa accettata.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "L'archiviazione richiesta, la rotta, il prezzo del metodo o la riserva dell'importo non sono disponibili.",
                "http_status": 503,
                "recovery": "Conserva l'intera risposta originale. Una riserva dell'importo dall'esito incerto non autorizza un nuovo invio.",
                "type": null
              },
              {
                "code": null,
                "condition": "Il risultato originale, i dati di utilizzo o il conguaglio dell'addebito richiedono una verifica.",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "Conserva l'ID effettivo della richiesta e la risposta originale. Consulta il record esistente di tua proprietà; non inviare nuovamente la richiesta di creazione.",
                "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": "Conserva l'X-Client-Request-ID effettivo e la risposta completa. Consulta le risorse originali di tua proprietà e i relativi URL firmati esatti del contenuto; non inviare mai nuovamente una creazione dall'esito incerto."
            },
            "outputs": {
              "all_results": "Conserva la risposta completa e gli header, ogni output effettivo, gli identificatori originali restituiti e tutti i campi di utilizzo. Recupera l'operazione originale senza inviare nuovamente la richiesta di creazione.",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "Corpo completo della risposta originale, stato e intestazioni inoltrate. Questo gestore non aggiunge alcuna struttura JSON universale, campo di testo o struttura contenitore dell'attività."
            },
            "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": [
              "L'esempio legge il tuo file PCM WAV reale e non vuoto, codifica tutti i byte del file in base64 e invia input_audio.format con valore 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 esatto di un record multimediale esistente di tua proprietà",
                "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": "Trascrizione",
        "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 è il modello di Meta per la conversione da parlato a testo, destinato alla dettatura, al rilevamento dei turni di parola e alle trascrizioni con attribuzione ai parlanti. Supporta indicazioni sulla lingua e sul vocabolario, alternanza di lingue e riferimenti temporali a livello di turno, con flussi di lavoro separati per clip registrate e audio dal vivo."
  },
  "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 è il modello di Meta per la conversione da parlato a testo, destinato alla dettatura, al rilevamento dei turni di parola e alle trascrizioni con attribuzione ai parlanti. Supporta indicazioni sulla lingua e sul vocabolario, alternanza di lingue e riferimenti temporali a livello di turno, con flussi di lavoro separati per clip registrate e audio dal vivo.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "bc403c5109e3b939c0416155dda7378954d6b1d6138b64d5c3e85f345a5a695f",
    "renderer_sha256": "3be1a96012c3c76b38a7b9bea6a57c0def38c56103737bee6a5e77aaa75e488a"
  },
  "sourceRevision": "24e1e03671a8e5219232342f51aa8b449d07d923e046a02cdf543bfdfa3d91c4"
}
