Method: speech.recognize

Esegue il riconoscimento vocale sincrono: ricevi i risultati dopo che tutto l'audio è stato inviato ed elaborato.

Richiesta HTTP

POST https://speech.googleapis.com/v1p1beta1/speech:recognize

L'URL utilizza la sintassi di transcodifica gRPC.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "config": {
    object (RecognitionConfig)
  },
  "audio": {
    object (RecognitionAudio)
  }
}
Campi
config

object (RecognitionConfig)

Obbligatorio. Fornisce informazioni al sistema di riconoscimento che specificano come elaborare la richiesta.

audio

object (RecognitionAudio)

Obbligatorio. I dati audio da riconoscere.

Corpo della risposta

L'unico messaggio restituito al client dal metodo speech.recognize. Contiene il risultato come zero o più messaggi SpeechRecognitionResult sequenziali.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "results": [
    {
      object (SpeechRecognitionResult)
    }
  ],
  "totalBilledTime": string,
  "speechAdaptationInfo": {
    object (SpeechAdaptationInfo)
  },
  "requestId": string,
  "usingLegacyModels": boolean
}
Campi
results[]

object (SpeechRecognitionResult)

Elenco sequenziale dei risultati della trascrizione corrispondenti alle porzioni sequenziali dell'audio.

totalBilledTime

string (Duration format)

Se disponibili, i secondi di audio fatturati per la richiesta corrispondente.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

speechAdaptationInfo

object (SpeechAdaptationInfo)

Fornisce informazioni sul comportamento di adattamento nella risposta

requestId

string (int64 format)

L'ID associato alla richiesta. Si tratta di un ID univoco specifico solo per la richiesta indicata.

usingLegacyModels

boolean

Indica se la richiesta utilizzava modelli ASR legacy (non è stata eseguita la migrazione automatica per utilizzare i modelli conformer).

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta Authentication Overview.

SpeechRecognitionResult

Un risultato del riconoscimento vocale corrispondente a una parte dell'audio.

Rappresentazione JSON
{
  "alternatives": [
    {
      object (SpeechRecognitionAlternative)
    }
  ],
  "channelTag": integer,
  "resultEndTime": string,
  "languageCode": string
}
Campi
alternatives[]

object (SpeechRecognitionAlternative)

Può contenere una o più ipotesi di riconoscimento (fino al massimo specificato in maxAlternatives). Queste alternative sono ordinate in termini di accuratezza, con l'alternativa principale (la prima) che è la più probabile, in base alla classificazione del sistema di riconoscimento.

channelTag

integer

Per l'audio multicanale, questo è il numero del canale corrispondente al risultato riconosciuto per l'audio di quel canale. Per audioChannelCount = N, i valori di output possono variare da "1" a "N".

resultEndTime

string (Duration format)

Offset temporale della fine di questo risultato rispetto all'inizio dell'audio.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

languageCode

string

Solo output. Il tag lingua BCP-47 della lingua in questo risultato. È stato rilevato che questo codice di lingua è quello con la maggiore probabilità di essere parlato nell'audio.

SpeechRecognitionAlternative

Ipotesi alternative (ovvero elenco n-best).

Rappresentazione JSON
{
  "transcript": string,
  "confidence": number,
  "words": [
    {
      object (WordInfo)
    }
  ]
}
Campi
transcript

string

Testo della trascrizione che rappresenta le parole pronunciate dall'utente. Nelle lingue che utilizzano gli spazi per separare le parole, la trascrizione potrebbe avere uno spazio iniziale se non è il primo risultato. Puoi concatenare ogni risultato per ottenere la trascrizione completa senza utilizzare un separatore.

confidence

number

La stima di confidenza compresa tra 0,0 e 1,0. Un numero più alto indica una maggiore probabilità stimata che le parole riconosciute siano corrette. Questo campo è impostato solo per l'alternativa migliore di un risultato non di streaming o di un risultato di streaming in cui isFinal=true. Non è garantita l'accuratezza di questo campo e gli utenti non devono fare affidamento sulla sua disponibilità. Il valore predefinito 0.0 è un valore sentinella che indica che confidence non è stato impostato.

words[]

object (WordInfo)

Un elenco di informazioni specifiche per ogni parola riconosciuta. Nota: quando enableSpeakerDiarization è vero, vedrai tutte le parole dall'inizio dell'audio.

WordInfo

Informazioni specifiche per le parole riconosciute.

Rappresentazione JSON
{
  "startTime": string,
  "endTime": string,
  "word": string,
  "confidence": number,
  "speakerTag": integer,
  "speakerLabel": string
}
Campi
startTime

string (Duration format)

Offset temporale relativo all'inizio dell'audio e corrispondente all'inizio della parola pronunciata. Questo campo viene impostato solo se enableWordTimeOffsets=true e solo nell'ipotesi principale. Si tratta di una funzionalità sperimentale e l'accuratezza dell'offset temporale può variare.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

endTime

string (Duration format)

Offset temporale relativo all'inizio dell'audio e corrispondente alla fine della parola pronunciata. Questo campo viene impostato solo se enableWordTimeOffsets=true e solo nell'ipotesi principale. Si tratta di una funzionalità sperimentale e l'accuratezza dell'offset temporale può variare.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

word

string

La parola corrispondente a questo insieme di informazioni.

confidence

number

La stima di confidenza compresa tra 0,0 e 1,0. Un numero più alto indica una maggiore probabilità stimata che le parole riconosciute siano corrette. Questo campo è impostato solo per l'alternativa migliore di un risultato non di streaming o di un risultato di streaming in cui isFinal=true. Non è garantita l'accuratezza di questo campo e gli utenti non devono fare affidamento sulla sua disponibilità. Il valore predefinito 0.0 è un valore sentinella che indica che confidence non è stato impostato.

speakerTag
(deprecated)

integer

Solo output. A ogni oratore all'interno dell'audio viene assegnato un valore intero distinto. Questo campo specifica quale di questi oratori è stato rilevato mentre pronunciava questa parola. L'intervallo di valori va da "1" a diarizationSpeakerCount. speakerTag viene impostato se enableSpeakerDiarization = "true" e solo per l'alternativa migliore. Nota: utilizza invece speakerLabel.

speakerLabel

string

Solo output. Un valore di etichetta assegnato a ogni oratore unico all'interno dell'audio. Questo campo specifica quale oratore è stato rilevato mentre pronunciava questa parola. Per alcuni modelli, come medical_conversation, può trattarsi del ruolo effettivo dell'oratore, ad esempio "paziente" o "fornitore", ma in genere si tratta di un numero che identifica un oratore. Questo campo viene impostato solo se enableSpeakerDiarization = "true" e solo per l'alternativa migliore.

SpeechAdaptationInfo

Informazioni sull'utilizzo dell'adattamento vocale nei risultati

Rappresentazione JSON
{
  "adaptationTimeout": boolean,
  "timeoutMessage": string
}
Campi
adaptationTimeout

boolean

Indica se si è verificato un timeout durante l'applicazione dell'adattamento vocale. Se è vero, l'adattamento non ha avuto alcun effetto nella trascrizione della risposta.

timeoutMessage

string

Se impostato, restituisce un messaggio che specifica la parte della richiesta di adattamento del discorso per cui è stato raggiunto il timeout.