Fish Audio: Transcribe 1 Pro
Transcribe 1 Pro trasforma registrazioni fino a 60 minuti in testo con marcatori dei parlanti e temporizzazione facoltativa a livello di parola. Conserva indizi di emozioni inferite ed eventi vocali, rendendo interviste, riunioni e podcast più facili da verificare, cercare o preparare per i sottotitoli.
Informazioni sul modello
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.
Transcribe 1 Pro è il modello di conversione del parlato in testo di Fish Audio per clip brevi, conversazioni con più parlanti e registrazioni lunghe. Riceve audio registrato e restituisce una trascrizione, con temporizzazione facoltativa e turni di parola strutturati. Le caratteristiche distintive sono i cambi di parlante marcati nel testo e gli indizi di emozioni o eventi vocali, che preservano più della struttura conversazionale della registrazione rispetto a una semplice sequenza di parole.
Per un’intervista, una riunione o un podcast, mantieni la conversazione completa in un file, affinché i parlanti che riprendono la parola possano conservare etichette coerenti all’interno della risposta. Un artefatto utile per la verifica è una trascrizione collegata alla registrazione originale, con turni mostrati separatamente e un timestamp disponibile per controllare una citazione. Un riepilogo o un elenco di azioni è un passaggio applicativo successivo: mantienilo separato dalla trascrizione, affinché la fonte parlata rimanga disponibile per il confronto.
Il produttore accetta registrazioni fino a 60 minuti e descrive l’elaborazione di file lunghi con audio compresso come MP3, Opus o AAC. I formati supportati comprendono WAV, MP3, AAC in M4A o MP4, FLAC, Ogg con Opus o Vorbis, WebM/Matroska e MOV. Per un file video, usa la prima traccia audio. AIFF, CAF, WMA, AMR, AC-3 e PCM grezzo senza intestazione non sono supportati. Viene fornito un file audio per richiesta; il risultato arriva dopo la trascrizione dell’intera registrazione e una registrazione lunga può richiedere diversi minuti. Clip più brevi di circa 0,08 secondi vengono rifiutate.
La risposta del produttore contiene il testo completo, la durata della registrazione in secondi e un array segments. Pro marca i cambi di parlante direttamente nel testo con etichette come <|speaker:0|> e <|speaker:1|>; un’etichetta si applica al testo seguente fino al marcatore successivo. Sono identificatori all’interno di una risposta, non nomi o identità verificati che possano essere abbinati tra richieste. Se la trascrizione non ha marcatori di parlante, la guida la tratta come un risultato con un solo parlante. Mantieni qualsiasi testo prima del primo marcatore insieme al primo turno anziché scartarlo.
I timestamp a livello di parola sono facoltativi. Nella richiesta al produttore, ignore_timestamps vale true per impostazione predefinita; impostarlo a false richiede segmenti con testo e tempi di inizio e fine in secondi. Un segmento è generalmente una parola oppure un carattere o pochi caratteri in cinese e giapponese. Il testo dei segmenti omette punteggiatura, marcatori dei parlanti e indizi di eventi e può normalizzare un valore pronunciato diversamente dalla trascrizione completa. Un segmento di parola può avere lo stesso tempo di inizio e fine. Un array segments vuoto può significare che i timestamp non sono stati richiesti, che non è stato rilevato parlato o che la temporizzazione era temporaneamente indisponibile. Usa la trascrizione completa per una formulazione leggibile e i segmenti per l’allineamento, anziché presumere che le due stringhe coincidano carattere per carattere.
L’impostazione diarize vale auto per impostazione predefinita. Quando vengono richiesti timestamp e diarize non è false, Pro restituisce anche speaker_turns. Ogni turno contiene l’etichetta del parlante, il testo e i tempi di inizio e fine, conservando punteggiatura e indizi mantenuti senza il marcatore del parlante incorporato nel testo. Se la temporizzazione delle parole è indisponibile, i tempi dei turni possono essere approssimativi e coprire l’intera registrazione; turni adiacenti non sono necessariamente contigui o privi di sovrapposizione. Disabilitare diarize rimuove l’elenco strutturato dei turni ma lascia i marcatori dei parlanti nel testo completo. Un numero noto di parlanti oppure un minimo e un massimo possono guidare, per quanto possibile, la diarizzazione di registrazioni più lunghe. Il numero esatto non può essere combinato con i limiti di conteggio e le indicazioni sul numero non possono essere usate quando diarize è disabilitato.
Gli indizi di emozioni ed eventi vocali compaiono come testo tra parentesi quadre, per esempio [laughter], insieme al parlato riconosciuto. Sono inferenze dall’audio, non parole che un utente deve aggiungere prima della trascrizione. L’impostazione tag_audio_events di Pro vale true per impostazione predefinita; disabilitarla rimuove questi indizi dalla trascrizione e dal testo dei turni senza cambiare la temporizzazione. Non esiste un campo separato per l’emozione né un’enumerazione fissa di emozioni. Conserva la trascrizione annotata quando conta il modo in cui una frase suona e usa una versione priva di indizi quando l’artefatto a valle richiede soltanto le parole pronunciate.
La lingua viene rilevata automaticamente. Un’indicazione facoltativa ISO 639-1 in minuscolo non forza la traduzione e non modifica la trascrizione di Pro. Se la lingua non può essere determinata, il codice linguistico restituito può riflettere l’indicazione senza verificarla rispetto all’audio. Il produttore riporta una lingua anziché un inventario di ogni lingua in una registrazione multilingue. Mantieni insieme formulazione originale e metadati linguistici quando prepari un archivio ricercabile, soprattutto quando diverse parti della conversazione cambiano lingua.
Per i sottotitoli, raggruppa parole temporizzate consecutive in blocchi SRT o WebVTT leggibili anziché produrre un sottotitolo per parola. Separa i blocchi attorno alle pause e scegli lunghezza e tempo di visualizzazione adatti al lettore e al pubblico. I confini dei turni di parola possono mantenere parlanti diversi in blocchi separati. Controlla un risultato di temporizzazione vuoto e i blocchi la cui fine deve essere successiva all’inizio. Formattazione dei sottotitoli, nomi per le etichette anonime dei parlanti e qualsiasi riepilogo successivo sono artefatti applicativi costruiti dal risultato di trascrizione.
Per un flusso concreto di registrazioni, decidi prima della trascrizione se ti serve una trascrizione semplicemente leggibile, turni di conversazione annotati o sottotitoli temporizzati. Mantieni l’identificatore audio insieme al risultato, conserva il testo completo restituito quando contano punteggiatura e indizi e usa i campi strutturati di temporizzazione per la navigazione. Le capacità di Pro per registrazioni lunghe e più parlanti sono distinte dal modello generale Transcribe 1 per registrazioni brevi; limiti e controlli non devono essere trattati come intercambiabili.
Ailoot Ultra · Riconoscimento vocale POST /v1/audio/transcriptions fish-audio/transcribe-1-pro
fish-audio/transcribe-1-proIntroduzione
Transcribe 1 Pro trasforma registrazioni fino a 60 minuti in testo con marcatori dei parlanti e temporizzazione facoltativa a livello di parola. Conserva indizi di emozioni inferite ed eventi vocali, rendendo interviste, riunioni e podcast più facili da verificare, cercare o preparare per i sottotitoli.
- Input accettati
- Audio
- Risultati
- Testo
Disponibile in Ailoot · input e metodi
Ailoot Ultra · Riconoscimento vocale POST /v1/audio/transcriptions
- Tipi di input
audio- Tipi di output
text- Formato di output
- json
| Campo | Tipo | Requisito | Valori e limiti | Predefinito |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObbligatorio | Valori e limiti fish-audio/transcribe-1-pro | Predefinito— |
Campoinput_audio | Tipoobject | RequisitoObbligatorio | Valori e limiti Chiavi esatte: data, format | Predefinito— |
Campoinput_audio.data | Tipobase64_string | RequisitoObbligatorio | Valori e limiti Numero massimo di byte decodificati: 26.214.400 Base64 rigoroso: Sì | Predefinito— |
Campoinput_audio.format | Tipostring | RequisitoObbligatorio | Valori e limiti Condizioni: Deve coincidere con il formato rilevato dal file reale | Predefinito— |
Camporesponse_format | Tipostring | RequisitoFacoltativo | Valori e limiti json | Predefinito— |
Combinazioni di materiali in input
speech_to_text · Obbligatorio: input_audio.data, input_audio.format
Parametri e ciclo di vita del metodo
| Parametro | Contratto |
|---|---|
Parametrocontent_type | Contrattoapplication/json |
Parametrorequired | Contrattomodel, input_audio |
Parametroadditional_properties | Contrattofalse |
Parametroparameters | Contratto{"name":"model","type":"string","required":true,"enum":["fish-audio/transcribe-1-pro"]}, {"name":"input_audio","type":"object","required":true,"exact_keys":["data","format"],"data":"base64 rigoroso dei byte audio reali supportati","format":"formato esatto rilevato dal file; deve corrispondere ai byte reali"}, {"name":"response_format","type":"string","required":false,"enum":["json"]} |
Parametromax_audio_bytes | Contratto26214400 |
Parametromultipart_for_this_profile | Contrattofalse |
Parametromaterial_types | Contrattoaudio |
Ciclo di vita: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · task_id effettivamente restituito o record della libreria multimediale
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Conserva la risposta completa e gli ID originali restituiti.
Non inviare mai nuovamente una creazione dall'esito sconosciuto.
Tariffe
Le tariffe non aggiungono opzioni alla richiesta. I parametri supportati sono elencati nel metodo selezionato.
- Modalità rapida
- Non specificato Quando è selezionata la modalità rapida
- Modalità flex
- Non specificato Quando è selezionata la modalità flex
- Sforzo massimo di ragionamento
- Non specificato Quando lo sforzo massimo di ragionamento usa l'adeguamento predefinito (default)
Tariffe Ailoot
Prezzi per configurazione
Associa ogni costo alle condizioni indicate. Usa una sola tariffa per ogni insieme di configurazioni alternative.
| Configurazione | Listino delle tariffe | Unità di fatturazione | Costo |
|---|---|---|---|
| ConfigurazioneTariffe base dei token | Listino delle tariffeTariffa base | Unità di fatturazione— | Costo Input · Token in input — / 1K token Output · Token in output — / 1K token Input · Lettura dalla cache — / 1K token Input · Scrittura nella cache — / 1K token Input · Scrittura nella cache, 1 ora — / 1K token |
| Configurazionesecondo audio in ingresso | Listino delle tariffe— | Unità di fatturazioneper secondo di audio in input | Costo Input · secondo audio in ingresso $0.0002 per secondo di audio in input |
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. Come funzionano la prenotazione e l’addebito finale →
Dettagli della tariffa di riferimento
I listini di riferimento del modello non modificano la selezione del metodo, i preventivi o gli addebiti. Gli addebiti attivi usano le tariffe del metodo Ailoot selezionato.
Fish Audio: Transcribe 1 Pro
Prezzi per configurazione
| Configurazione | Condizioni di fatturazione | Costo |
|---|---|---|
| ConfigurazioneFish Audio: Transcribe 1 Pro · Configurazione predefinita | Condizioni di fatturazioneConfigurazione predefinita | Costo Input · Secondi audio in ingresso 0,0002 USD per secondo di audio in input |
Esempi di richieste
Ailoot Ultra · Riconoscimento vocale
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_AUDIO_FILE:?Set your actual audio file}"
: "${AILOOT_AUDIO_FORMAT:?Set its actual probed file format}"
export AILOOT_AUDIO_FILE AILOOT_AUDIO_FORMAT
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "fish-audio/transcribe-1-pro", "response_format": "json"}')
import base64
f=Path(os.environ['AILOOT_AUDIO_FILE'])
raw=f.read_bytes()
if not raw or len(raw)>26214400:raise SystemExit('Use actual audio bytes within 25 MiB')
fmt=os.environ['AILOOT_AUDIO_FORMAT'].strip()
if not fmt:raise SystemExit('Use the actual probed format; the server checks it against the bytes')
p['input_audio']={'data':base64.b64encode(raw).decode(),'format':fmt}
Path('request.json').write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
Ricevi e salva i risultati
Ailoot Ultra · Riconoscimento vocale
json
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Conserva tutti i risultati completati
Conserva ogni risposta, file e parte di contenuto restituiti per intero.
Conserva il JSON completo, le intestazioni della risposta, il testo e ogni campo effettivo di utilizzo restituito. Usa le identità reali delle attività e delle risorse dalla risposta o dalla libreria di tua proprietà; operation_id non è task_id.
Se occorre verificare la risposta originale
Conserva operation_id/X-Client-Request-ID originale per la riconciliazione senza reinvio; non esiste una rotta dedicata al polling audio.
Campi della risposta
| Campo | Tipo | Significato |
|---|---|---|
Campotext | Tipostring | SignificatoTesto trascritto. |
Campousage | Tipoobject | SignificatoUtilizzo audio. |
Campousage.seconds | Tiponumber | SignificatoDurata dell'audio in secondi. |
Campoduration | Tiponumber | SignificatoDurata dell'audio in secondi. |
Campotask_id | Tipostring | SignificatoID dell'attività di trascrizione; restituito insieme ad asset_url quando una trascrizione non vuota viene memorizzata, pubblicata e associata a un URL firmato del contenuto. |
Campoasset_url | Tipostring | SignificatoURL firmato del contenuto della trascrizione; restituito insieme a task_id quando una trascrizione non vuota viene memorizzata, pubblicata e associata a un URL firmato del contenuto. |
Errori e passaggi successivi
| Risposta | Condizione | Passaggio successivo |
|---|---|---|
Risposta400 · invalid_request_error | CondizioneCampi obbligatori, rappresentazione del materiale o valore del parametro non validi | Passaggio successivoCorreggi i campi indicati prima di una nuova richiesta di creazione. |
Rispostaserver_error | CondizioneLa risposta restituita indica che l'operazione o il risultato richiede una verifica | Passaggio successivoConserva l'ID originale di operazione/task restituito, gli header della richiesta e la risposta; continua a leggere l'operazione originale tramite le modalità supportate. Non reinviare la richiesta di creazione. |
Alias
Alias del modello
Ailoot Ultra fish-audio/transcribe-1-pro
Alias dei percorsi dei metodi
Usa i percorsi dei metodi indicati sopra.
ID di chiamata correlati
FAQ · Fish Audio: Transcribe 1 Pro
- Quali input e risultati sono disponibili?
POST /v1/audio/transcriptions·fish-audio/transcribe-1-pro:audio→text- Quali campi usa la richiesta?
POST /v1/audio/transcriptions·fish-audio/transcribe-1-pro:model,input_audio,response_format