Cambiare la lingua del riconoscimento
Riavvia i server con il language pack per la lingua scelta.
Log
Il programma binario di Speech-to-Text ha quattro modalità di logging:
debug
: log dettagliati che possono essere utili per il debug del programma binario. Ad esempio, le risposte del server vengono registrate in questa modalità.prod
: l'impostazione di produzione consigliata. I log contengono informazioni su versione binaria/build, avvii sessione, fine sessione, avvisi ed errori.warning
: i log conterranno solo avvisi o errori.error
: i log conterranno solo errori.
Il logging può essere controllato con il flag --min_log_level
e tutti i log sono scritti in stdout
.
In caso di problemi, esegui il server Speech-to-Text con il logging di debug:
./speech_to_text_server --host_ip=${STT_IP?} --port=${STT_PORT?}\
--language_pack=${LANGUAGE_PACK?} --min_log_level="debug" \
--api_key=${API_KEY?}
All'avvio, i log binari
build ID
un ID che associa il programma binario a una build.Language Pack ID
un ID del Language Pack caricato dal server.
Durante la trascrizione: il server registra il client fornito request ID
. Al termine di una sessione, il server registra uno stato della sessione.
Il logging dovrebbe essere sufficiente per risolvere i problemi causati da un utilizzo non corretto. Può anche aiutarti a comprendere il comportamento del server. Ad esempio, il server non invierà risposte se non riconosce qualcosa nell'audio. Se l'audio è solo silenzioso o incomprensibile, non verrà inviata alcuna risposta.
Stato della sessione
Una sessione riuscita termina con lo stato OK.
... Closing StreamingRecognize ($request_id) with status OK
Una sessione non riuscita termina con uno stato non OK. Ad esempio, se inviamo una nuova richiesta di configurazione dopo quella iniziale.
... Closing StreamingRecognize ($request_id) with status INVALID_ARGUMENT: Malordered data received. Expected audio but received config. Send exactly one config, followed by audio data.
Registrazioni
Il server ASR supporta la registrazione delle proprie interazioni per aiutare Google nel debug.
Esempio di utilizzo
Crea la directory per archiviare le registrazioni:
mkdir $PWD/recordings
Avvia il server con il flag --recordings
:
./speech_to_text_server --host_ip=${STT_IP?} --port=${STT_PORT?} \
--language_pack=${LANGUAGE_PACK?} --min_log_level="debug" \
--recordings=$PWD/recordings --api_key=${API_KEY?}
Avvia il client con:
./speech_to_text_client --server_ip=${STT_IP?} --port=${STT_PORT?} \
--audio=samples/*.wav
Dovrebbero generare i file nel formato
$PWD/recordings/{filename}_{timestamp}_requests.riegeli (1)
$PWD/recordings/{filename}_{timestamp}_responses.riegeli (2)
{filename} è il nome del file .wav
registrato. speech_to_text_client
utilizza filename
come {request_id}. Il primo esempio sopra riportato riguarda un file Riegeli contenente una sequenza StreamingRecognizeRequest
, il secondo un file Riegeli contenente una sequenza StreamingRecognizeResponse
.
Formato file
Le registrazioni sono file riegeli che contengono le richieste e le risposte inviate al server. La richiesta e le risposte vengono inviate in streaming al disco nell'ordine in cui vengono inviate da e verso il server.
Assistenza aggiuntiva
Per risolvere i problemi che richiedono assistenza, ad esempio se sono necessarie modifiche al codice, fornisci (se applicabile)
- registrazioni
- log
- file audio di esempio
e una descrizione del problema.