Índice
EmbeddedAssistant
(interfaz)AudioInConfig
(mensaje)AudioInConfig.Encoding
(enumeración)AudioOut
(mensaje)AudioOutConfig
(mensaje)AudioOutConfig.Encoding
(enumeración)ConverseConfig
(mensaje)ConverseRequest
(mensaje)ConverseResponse
(mensaje)ConverseResponse.EventType
(enumeración)ConverseResult
(mensaje)ConverseResult.MicrophoneMode
(enumeración)ConverseState
(mensaje)
EmbeddedAssistant
Servicio que implementa la API de Asistente de Google
Converse | |
---|---|
Inicia o continúa una conversación con el servicio de asistente incorporado. Cada llamada realiza un recorrido de ida y vuelta; envía una solicitud de audio al servicio y recibe la respuesta de audio. Usa una transmisión bidireccional para recibir resultados, como el evento Una conversación es una o más conexiones gRPC, cada una de las cuales consta de varias solicitudes y respuestas transmitidas. Por ejemplo, el usuario dice Agregar a mi lista de compras y el Asistente responde ¿Qué quieres agregar?. La secuencia de solicitudes y respuestas transmitidas en el primer mensaje de gRPC podría ser la siguiente:
Luego, el usuario dice bagels y el asistente responde "De acuerdo, agregué bagels" a tu lista de compras. Esto se envía como otra llamada de conexión de gRPC al método
Aunque no se garantiza el orden preciso de las respuestas, los mensajes secuenciales de ConverseResponse.audio_out siempre contendrán porciones secuenciales de audio.
|
AudioInConfig
Especifica cómo procesar los datos de audio_in
que se proporcionarán en solicitudes posteriores. Si deseas obtener la configuración recomendada, consulta las prácticas recomendadas de la API de gRPC del Asistente de Google.
Campos | |
---|---|
encoding |
Obligatorio: Es la codificación de los datos de audio enviados en todos los mensajes |
sample_rate_hertz |
Obligatorio: Es la tasa de muestreo (en hercios) de los datos de audio enviados en todos los mensajes de |
Codificación
Es la codificación de audio de los datos enviados en el mensaje de audio. El audio debe ser de un canal (mono). El único idioma admitido es "en-US".
Enumeradores | |
---|---|
ENCODING_UNSPECIFIED |
No se especifica. Se mostrará el resultado google.rpc.Code.INVALID_ARGUMENT . |
LINEAR16 |
Son las muestras de little-endian de 16 bits firmadas y sin comprimir (PCM lineal). Esta codificación no incluye encabezado, solo los bytes de audio sin procesar. |
FLAC |
FLAC (códec de audio sin pérdida gratuito) es la codificación recomendada porque no tiene pérdidas (por lo tanto, el reconocimiento no se ve comprometido) y requiere solo la mitad del ancho de banda de LINEAR16 . Esta codificación incluye el encabezado de la transmisión FLAC seguido de los datos de audio. Admite muestras de 16 y 24 bits. Sin embargo, no todos los campos de STREAMINFO son compatibles. |
AudioOut
Es el audio que contiene la respuesta del Asistente a la consulta. Se reciben fragmentos secuenciales de datos de audio en mensajes ConverseResponse
secuenciales.
Campos | |
---|---|
audio_data |
Solo salida: Los datos de audio que contienen la respuesta del Asistente a la consulta. Se reciben fragmentos secuenciales de datos de audio en mensajes |
AudioOutConfig
Especifica el formato que debe usar el servidor cuando muestre mensajes audio_out
.
Campos | |
---|---|
encoding |
Obligatorio La codificación de los datos de audio que se mostrará en todos los mensajes |
sample_rate_hertz |
Obligatorio: Es la tasa de muestreo en hercios de los datos de audio que se muestran en los mensajes |
volume_percentage |
Obligatorio: Es la configuración del volumen actual de la salida de audio del dispositivo. Los valores válidos van del 1 al 100 (corresponde al 1% al 100%). |
Codificación
Es la codificación de audio de los datos mostrados en el mensaje de audio. Todas las codificaciones son bytes de audio sin procesar y sin encabezado, excepto como se indica a continuación.
Enumeradores | |
---|---|
ENCODING_UNSPECIFIED |
No se especifica. Se mostrará el resultado google.rpc.Code.INVALID_ARGUMENT . |
LINEAR16 |
Son las muestras de little-endian de 16 bits firmadas y sin comprimir (PCM lineal). |
MP3 |
con codificación de audio MP3. La tasa de muestreo está codificada en la carga útil. |
OPUS_IN_OGG |
Audio codificado en Opus que se une a un contenedor ogg. El resultado será un archivo que se puede reproducir de forma nativa en Android y en algunos navegadores (como Chrome). La calidad de la codificación es considerablemente mayor que la de MP3, pero con la misma tasa de bits. La tasa de muestreo está codificada en la carga útil. |
ConverseConfig
Especifica cómo procesar los mensajes ConverseRequest
.
Campos | |
---|---|
audio_in_config |
Obligatorio: Especifica cómo procesar el audio entrante posterior. |
audio_out_config |
Obligatorio: Especifica cómo dar formato al audio que se mostrará. |
converse_state |
Obligatorio Representa el estado actual del diálogo. |
ConverseRequest
El mensaje de nivel superior que envía el cliente. Los clientes deben enviar, al menos, dos mensajes de ConverseRequest
, aunque suelen ser varios. El primer mensaje debe contener un mensaje config
y no debe contener datos audio_in
. Todos los mensajes posteriores deben contener datos audio_in
y no deben contener un mensaje config
.
Campos | ||
---|---|---|
Campo de unión converse_request . Se debe especificar exactamente uno de estos campos en cada ConverseRequest . converse_request puede ser solo uno de los siguientes: |
||
config |
El mensaje |
|
audio_in |
Los datos de audio que se reconocerán. Los fragmentos secuenciales de datos de audio se envían en mensajes |
ConverseResponse
El mensaje de nivel superior que recibe el cliente. Se transmite una serie de uno o más mensajes ConverseResponse
al cliente.
Campos | ||
---|---|---|
Campo de unión converse_response . Exactamente uno de estos campos se propagará en cada ConverseResponse . converse_response puede ser solo uno de los siguientes: |
||
error |
Solo salida Si se configura, muestra un mensaje |
|
event_type |
Solo salida indica el tipo de evento. |
|
audio_out |
Solo salida: Es el audio que contiene la respuesta del Asistente a la consulta. |
|
result |
Solo salida: Es el resultado semántico de la consulta por voz del usuario. |
EventType
Indica el tipo de evento.
Enumeradores | |
---|---|
EVENT_TYPE_UNSPECIFIED |
No se especificó ningún evento. |
END_OF_UTTERANCE |
Este evento indica que el servidor detectó el final del enunciado de voz del usuario y que no espera que siga hablando. Por lo tanto, el servidor no procesará audio adicional (aunque puede que muestre resultados adicionales de forma posterior). El cliente debe dejar de enviar datos de audio adicionales, cerrar de forma parcial la conexión de gRPC y esperar cualquier resultado adicional hasta que el servidor también la cierre. |
ConverseResult
Es el resultado semántico de la consulta por voz del usuario.
Campos | |
---|---|
spoken_request_text |
Solo salida: La transcripción reconocida de lo que dijo el usuario. |
spoken_response_text |
Solo salida: Es el texto de la respuesta por voz del asistente. Solo se muestra para una acción IFTTT. |
conversation_state |
Información de estado solo de salida para los |
microphone_mode |
Solo salida: Especifica el modo del micrófono después de que se procese esta RPC de |
volume_percentage |
Solo salida: Se actualizó el nivel del volumen. El valor será 0 o se omitirá (lo que indica que no habrá cambios), a menos que se reconozca un comando por voz como "Sube el volumen" o "Establece el volumen en el nivel 4", en cuyo caso el valor será entre 1 y 100 (correspondiente al nuevo nivel de volumen de 1% a 100%). Por lo general, el cliente debe usar este nivel de volumen cuando reproduce los datos de |
MicrophoneMode
Estados posibles del micrófono después de que se completa una RPC Converse
.
Enumeradores | |
---|---|
MICROPHONE_MODE_UNSPECIFIED |
No se especificó ningún modo. |
CLOSE_MICROPHONE |
El servicio no espera una pregunta de seguimiento del usuario. El micrófono debe permanecer apagado hasta que el usuario lo reactive. |
DIALOG_FOLLOW_ON |
El servicio espera una pregunta de seguimiento del usuario. El micrófono se debe volver a abrir cuando se complete la reproducción de AudioOut (iniciando una nueva llamada RPC de Converse para enviar el audio nuevo). |
ConverseState
Proporciona información sobre el estado del diálogo actual.
Campos | |
---|---|
conversation_state |
Obligatorio: Es el valor |