Questo documento contiene consigli su come fornire dati vocali all'API Cloud Speech-to-Text. Queste linee guida sono pensate per garantire maggiore efficienza e precisione, nonché tempi di risposta ragionevoli da parte del servizio. L'utilizzo dell'API Cloud Speech-to-Text funziona meglio quando i dati inviati al servizio rientrano nei parametri descritti in questo documento.
Se segui queste linee guida e non ottieni i risultati che ti aspetti 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 è comunemente di 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 l'accuratezza. Se l'audio è già in una codifica non supportata dall'API, esegui la transcodifica in FLAC o LINEAR16 lossless. 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 questo ordine di preferenza. |
| Il sistema di riconoscimento è progettato per ignorare le voci e i rumori di fondo 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 echi eccessivi possono ridurre la precisione, soprattutto se viene utilizzato anche un codec con perdita. |
| Se acquisisci l'audio di più persone e ognuna 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 originale 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. È consigliabile 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 l'audio con rumore.
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 alcuni esempi audio. Deve essere chiaro, senza distorsioni o rumori imprevisti.
Richiedi configurazione
Assicurati di descrivere con precisione i dati audio inviati con la richiesta all'API Cloud Speech-to-Text. Se la
RecognitionConfig
della tua richiesta descrive correttamente sampleRateHertz, encoding e
languageCode, la trascrizione e la fatturazione della tua richiesta saranno più accurate.