Method: speech.recognize

Realiza o reconhecimento de voz síncrono: recebe resultados depois de todo o áudio ter sido enviado e processado.

Pedido HTTP

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

O URL usa a sintaxe de transcodificação de gRPC.

Corpo do pedido

O corpo do pedido contém dados com a seguinte estrutura:

Representação JSON
{
  "config": {
    object (RecognitionConfig)
  },
  "audio": {
    object (RecognitionAudio)
  }
}
Campos
config

object (RecognitionConfig)

Obrigatório. Fornece informações ao reconhecedor que especificam como processar o pedido.

audio

object (RecognitionAudio)

Obrigatório. Os dados de áudio a serem reconhecidos.

Corpo da resposta

A única mensagem devolvida ao cliente pelo método speech.recognize. Contém o resultado como zero ou mais mensagens SpeechRecognitionResult sequenciais.

Se for bem-sucedido, o corpo da resposta contém dados com a seguinte estrutura:

Representação JSON
{
  "results": [
    {
      object (SpeechRecognitionResult)
    }
  ],
  "totalBilledTime": string,
  "speechAdaptationInfo": {
    object (SpeechAdaptationInfo)
  },
  "requestId": string,
  "usingLegacyModels": boolean
}
Campos
results[]

object (SpeechRecognitionResult)

Lista sequencial de resultados da transcrição correspondentes a partes sequenciais do áudio.

totalBilledTime

string (Duration format)

Quando disponíveis, segundos de áudio faturados para o pedido correspondente.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

speechAdaptationInfo

object (SpeechAdaptationInfo)

Fornece informações sobre o comportamento de adaptação na resposta

requestId

string (int64 format)

O ID associado ao pedido. Este é um ID exclusivo específico apenas do pedido em questão.

usingLegacyModels

boolean

Indica se o pedido usou modelos de RFA antigos (não foi migrado automaticamente para usar modelos de conformidade).

Âmbitos de autorização

Requer o seguinte âmbito do OAuth:

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

Para mais informações, consulte o Authentication Overview.

SpeechRecognitionResult

Um resultado de reconhecimento de voz correspondente a uma parte do áudio.

Representação JSON
{
  "alternatives": [
    {
      object (SpeechRecognitionAlternative)
    }
  ],
  "channelTag": integer,
  "resultEndTime": string,
  "languageCode": string
}
Campos
alternatives[]

object (SpeechRecognitionAlternative)

Pode conter uma ou mais hipóteses de reconhecimento (até ao máximo especificado em maxAlternatives). Estas alternativas são ordenadas em termos de precisão, sendo a alternativa superior (primeira) a mais provável, conforme a classificação do reconhecedor.

channelTag

integer

Para áudio multicanal, este é o número do canal correspondente ao resultado reconhecido para o áudio desse canal. Para audioChannelCount = N, os respetivos valores de saída podem variar de "1" a "N".

resultEndTime

string (Duration format)

Desvio de tempo do fim deste resultado relativamente ao início do áudio.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

languageCode

string

Apenas saída. A etiqueta de idioma BCP-47 do idioma neste resultado. Este código de idioma foi detetado como o mais provável de ser falado no áudio.

SpeechRecognitionAlternative

Hipóteses alternativas (também conhecidas como lista n-best).

Representação JSON
{
  "transcript": string,
  "confidence": number,
  "words": [
    {
      object (WordInfo)
    }
  ]
}
Campos
transcript

string

Texto da transcrição que representa as palavras que o utilizador disse. Em idiomas que usam espaços para separar palavras, a transcrição pode ter um espaço inicial se não for o primeiro resultado. Pode concatenar cada resultado para obter a transcrição completa sem usar um separador.

confidence

number

A estimativa de confiança entre 0,0 e 1,0. Um número mais elevado indica uma probabilidade estimada maior de que as palavras reconhecidas estejam corretas. Este campo só é definido para a alternativa principal de um resultado não de streaming ou de um resultado de streaming onde isFinal=true. Não é garantido que este campo seja preciso e os utilizadores não devem confiar que é sempre fornecido. O valor predefinido de 0,0 é um valor de controlo que indica que confidence não foi definido.

words[]

object (WordInfo)

Uma lista de informações específicas de palavras para cada palavra reconhecida. Nota: quando enableSpeakerDiarization é verdadeiro, vê todas as palavras desde o início do áudio.

WordInfo

Informações específicas de palavras para palavras reconhecidas.

Representação JSON
{
  "startTime": string,
  "endTime": string,
  "word": string,
  "confidence": number,
  "speakerTag": integer,
  "speakerLabel": string
}
Campos
startTime

string (Duration format)

Desvio de tempo relativo ao início do áudio e correspondente ao início da palavra falada. Este campo só é definido se enableWordTimeOffsets=true e apenas na hipótese principal. Esta é uma funcionalidade experimental e a precisão da diferença de tempo pode variar.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

endTime

string (Duration format)

Desvio de tempo relativo ao início do áudio e correspondente ao fim da palavra falada. Este campo só é definido se enableWordTimeOffsets=true e apenas na hipótese principal. Esta é uma funcionalidade experimental e a precisão da diferença de tempo pode variar.

Uma duração em segundos com até nove dígitos fracionários, que termina com "s". Exemplo: "3.5s".

word

string

A palavra correspondente a este conjunto de informações.

confidence

number

A estimativa de confiança entre 0,0 e 1,0. Um número mais elevado indica uma probabilidade estimada maior de que as palavras reconhecidas estejam corretas. Este campo só é definido para a alternativa principal de um resultado não de streaming ou de um resultado de streaming onde isFinal=true. Não é garantido que este campo seja preciso e os utilizadores não devem confiar que é sempre fornecido. O valor predefinido de 0,0 é um valor de controlo que indica que confidence não foi definido.

speakerTag
(deprecated)

integer

Apenas saída. É atribuído um valor inteiro distinto a cada orador no áudio. Este campo especifica qual dos oradores foi detetado a ter dito esta palavra. O valor varia de "1" a diarizationSpeakerCount. speakerTag é definido se enableSpeakerDiarization = "true" e apenas para a alternativa principal. Nota: use speakerLabel em alternativa.

speakerLabel

string

Apenas saída. Um valor de etiqueta atribuído a cada orador único no áudio. Este campo especifica que orador foi detetado a dizer esta palavra. Para alguns modelos, como medical_conversation, este pode ser o papel real do orador, por exemplo, "paciente" ou "fornecedor", mas, geralmente, seria um número que identifica um orador. Este campo só é definido se enableSpeakerDiarization = "true" e apenas para a alternativa principal.

SpeechAdaptationInfo

Informações sobre a utilização da adaptação da voz nos resultados

Representação JSON
{
  "adaptationTimeout": boolean,
  "timeoutMessage": string
}
Campos
adaptationTimeout

boolean

Se houve um limite de tempo ao aplicar a adaptação da voz. Se for verdadeiro, a adaptação não teve efeito na transcrição da resposta.

timeoutMessage

string

Se estiver definido, devolve uma mensagem a especificar que parte do pedido de adaptação de voz excedeu o tempo limite.