Questo documento contiene suggerimenti su come fornire dati vocali all'API Speech-to-Text. Queste linee guida sono pensate per garantire maggiore efficienza e accuratezza, nonché tempi di risposta ragionevoli da parte del servizio. L'utilizzo dell'API Speech-to-Text funziona al meglio quando i dati inviati al servizio rientrano nei parametri descritti in questo documento.
Se segui queste linee guida e non ottieni i risultati previsti dall'API, consulta Risoluzione dei problemi e assistenza.
Per risultati ottimali… | Se possibile, evita di... |
---|---|
Acquisire audio con una frequenza di campionamento pari o superiore a 16.000 Hz. | Tassi di campionamento più bassi possono ridurre la precisione. Tuttavia, evita il ricampionamento. Ad esempio, in telefonia la frequenza nativa è comunemente 8000 Hz, che è la frequenza che deve essere inviata al servizio. |
Utilizza un codec lossless per registrare e trasmettere l'audio. È consigliabile utilizzare FLAC o LINEAR16 . |
L'utilizzo di codec mp3, mp4, m4a, mu-law, a-law o altri codec con perdita durante la registrazione o la trasmissione può ridurre la precisione. Se l'audio è già in una codifica non supportata dall'API, esegui la transcodifica in FLAC o LINEAR16 senza perdita di dati. Se la tua applicazione deve utilizzare un codec con perdita per risparmiare larghezza di banda, ti consigliamo i codec AMR_WB , OGG_OPUS o SPEEX_WITH_HEADER_BYTE , in quest'ordine di preferenza. |
Il sistema di riconoscimento è progettato per ignorare le voci e i rumori di sottofondo senza ulteriore cancellazione del rumore. Tuttavia, per risultati ottimali, posiziona il microfono il più vicino possibile all'utente, soprattutto in presenza di rumore di fondo. | Rumore di fondo ed eco eccessivi possono ridurre la precisione, soprattutto se viene utilizzato anche un codec con perdita. |
Se acquisisci l'audio di più persone e ciascuna persona viene registrata su un canale separato, invia ogni canale separatamente per ottenere i migliori risultati di riconoscimento. Tuttavia, se tutti gli oratori sono mixati in una singola registrazione del canale, invia la registrazione così com'è. | Più persone che parlano contemporaneamente o a volumi diversi potrebbero essere interpretate come rumore di fondo e ignorate. |
Utilizza suggerimenti di parole e frasi per aggiungere nomi e termini al vocabolario e per aumentare l'accuratezza di parole e frasi specifiche. | Il sistema di riconoscimento ha un vocabolario molto ampio, ma i termini e i nomi propri che non fanno parte del vocabolario non verranno riconosciuti. |
Per query o comandi brevi, utilizza StreamingRecognize con single_utterance impostato su true. In questo modo, l'ottimizzazione del riconoscimento per le espressioni brevi viene eseguita riducendo al minimo la latenza. |
Utilizzo di Recognize o LongRunningRecognize per query brevi o comandi. |
Frequenza di campionamento
Se possibile, imposta la frequenza di campionamento della sorgente audio su 16000 Hz. In caso contrario, imposta sample_rate_hertz in modo che corrisponda alla frequenza di campionamento nativa della sorgente audio (anziché ricampionare).
Dimensioni del telaio
Il riconoscimento dello streaming riconosce l'audio live mentre viene acquisito da un microfono
o da un'altra sorgente audio. Il flusso audio viene suddiviso in frame e inviato in
messaggi StreamingRecognizeRequest
consecutivi. È accettata qualsiasi dimensione del frame.
I frame più grandi sono più efficienti, ma aggiungono latenza. Si consiglia una dimensione del frame di 100 millisecondi
come buon compromesso tra latenza ed efficienza.
Pre-elaborazione audio
È consigliabile fornire un audio il più pulito possibile utilizzando un microfono di buona qualità e ben posizionato. Tuttavia, l'applicazione dell'elaborazione del segnale di riduzione del rumore all'audio prima dell'invio al servizio in genere riduce l'accuratezza del riconoscimento. Il servizio è progettato per gestire audio rumorosi.
Per ottenere risultati ottimali:
- Posiziona il microfono il più vicino possibile alla persona che sta parlando, soprattutto in presenza di rumore di fondo.
- Evita il clipping audio.
- Non utilizzare il controllo automatico del guadagno (AGC).
- Tutta l'elaborazione della riduzione del rumore deve essere disattivata.
- Ascolta un esempio audio. Deve essere chiaro, senza distorsioni o rumore imprevisto.
Richiedi configurazione
Assicurati di descrivere con precisione i dati audio inviati con la richiesta
all'API Speech-to-Text. Se RecognitionConfig della tua
richiesta descrive correttamente sampleRateHertz
, encoding
e languageCode
, otterrai la trascrizione e la fatturazione più accurate per la tua richiesta.