La asistencia de conocimiento generativo proporciona respuestas a las preguntas de tu agente según la información de los documentos que proporcionas. Puedes especificar tu nombre de dominio o subir documentos para que un agente de almacén de datos los indexe. La asistencia de conocimiento generativo sintetiza esa información con la conversación en curso y los metadatos de clientes disponibles para brindarle a tu agente una respuesta más relevante y oportuna.
El Knowledge Assist proactivo y generativo sigue la conversación en curso entre tu agente y el cliente. Proporciona sugerencias de búsqueda de forma proactiva en función del contexto de la conversación actual y la respuesta.
Crea un agente de almacén de datos
A menos que seas el propietario del proyecto, necesitas estos roles para crear un agente de almacén de datos:
- Administrador de la API de Dialogflow
- Administrador de Discovery Engine
Activa la API de Vertex AI Agent Builder en la consola de Vertex AI.
Para crear el agente, sigue los pasos que se indican en Agentes de almacén de datos.
Responde las preguntas de tus agentes humanos
El agente del almacén de datos puede responder las preguntas de tus agentes humanos según los documentos que proporcionaste.
Paso 1: Crea un perfil de conversación
Crea un perfil de conversación con la consola de Agent Assist o la API.
Cómo crear desde la consola
- Debes habilitar el tipo de sugerencia de asistencia del conocimiento generativo y vincularlo al agente del almacén de datos del paso anterior.
- Opcional: Usa la casilla de verificación Inhabilitar el registro de consultas de búsqueda del agente para indicar si deseas que Google recopile y almacene consultas de búsqueda ocultas para mejorar la calidad.
- Puedes usar la casilla de verificación Habilitar la consulta de conversación enriquecida para indicar si deseas tener en cuenta el contexto de la conversación entre el agente humano y el usuario cuando se genera la respuesta para la búsqueda.
Cómo crear desde la API
En los siguientes pasos, se muestra cómo crear un ConversationProfile con un objeto HumanAgentAssistantConfig. También puedes realizar estas acciones con la consola de Agent Assist.
Para crear un perfil de conversación, llama al método create en el recurso ConversationProfile.
Antes de usar cualquiera de los datos de solicitud, realiza los siguientes reemplazos:- PROJECT_ID: El ID de tu proyecto
- LOCATION_ID: Es el ID de tu ubicación.
- AGENT_ID: El ID del agente del almacén de datos del paso anterior
{ "displayName": "my-conversation-profile-display-name", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [ { "suggestionFeature": { "type": "KNOWLEDGE_SEARCH" }, "queryConfig": { "dialogflowQuerySource": { "humanAgentSideConfig": { "agent": "projects/PROJECT_ID/locations/LOCATION_ID/agents/AGENT_ID" } } }, "disableAgentQueryLogging": false, "enableConversationAugmentedQuery": false, } ] } } }
Cuando creas un perfil de conversación en la consola de Agent Assist, este habilita automáticamente la asistencia generativa de conocimiento y la asistencia generativa de conocimiento proactiva. Para inhabilitar la asistencia de conocimiento generativo proactivo, debes crear tu perfil de conversación con la API.
Paso 2: Usa un agente de almacén de datos
De manera opcional, usa la API de SearchKnowledge
para obtener las respuestas del agente del almacén de datos. También puedes usar las siguientes configuraciones como parte de tu solicitud de SearchKnowledge
:
querySource
: Establece este campo para indicar si un agente escribió la consulta o si la asistencia de conocimiento generativo proactivo la sugirió automáticamente.exactSearch
: Establece este campo para indicar si se debe buscar la consulta de entrada exacta sin reescritura de consultas.endUserMetadata
: Establece este campo para incluir información adicional sobre el usuario final que mejore la respuesta generada. Para obtener más detalles, consulta la página de personalización del rendimiento del agente de almacén de datos.searchConfig
: Establece este campo para obtener un control adicional y mejorar y filtrar los documentos de conocimiento. Para obtener más detalles, consulta la página de configuración de búsqueda de rendimiento del agente de Data Store.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: El ID de tu proyecto
- LOCATION_ID: Es el ID de tu ubicación.
- CONVERSATION_PROFILE_ID: Es el ID de tu perfil de conversación del paso anterior.
- SESSION_ID: Es el ID de tu sesión de búsqueda. El historial de búsqueda de la misma sesión puede afectar el resultado de la búsqueda. Puedes usar el ID de conversación que aparece a continuación para el ID de sesión.
- CONVERSATION_ID: Es la conversación (entre el agente humano y el usuario final) en la que se activa la solicitud de búsqueda.
- MESSAGE_ID: Es el mensaje de conversación más reciente cuando se activa la solicitud de búsqueda.
Este es un ejemplo de solicitud JSON:
{ "parent": "projects/PROJECT_ID/locations/LOCATION_ID" "query": { "text": "What is the return policy?" } "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID" "sessionId": "SESSION_ID "conversation": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID" "latestMessage": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID "querySource": AGENT_QUERY "exactSearch": false "searchConfig": { "filterSpecs": { "filter": "category: ANY(\"persona_B\")" } } "endUserMetadata": { "deviceOwned": "Google Pixel 7" } }
De manera opcional, proporciona los nombres de los recursos conversation
y latest_message
si la búsqueda del agente se realiza durante una conversación con un usuario. Estos dos campos son obligatorios si habilitas la opción enable_conversation_augmented_query
y prefieres mejorar la experiencia de respuesta de la consulta con el contexto de conversación entre tu agente y el usuario.
Simulador
Prueba el agente de tu almacén de datos en el simulador de Agent Assist.
En el ejemplo anterior, el agente del almacén de datos responde la consulta del usuario What is the refund
processing time?
con la siguiente información:
- Respuesta generada por IA generativa: Cuando el paquete con la devolución llegue al centro de devoluciones del vendedor, el proceso puede tardar hasta 7 días hábiles adicionales. Verifica el estado del reembolso con el número de seguimiento de la devolución que se encuentra en la página de pedidos.
- El título del documento de conocimiento relevante: Devoluciones y reembolsos.
Sugerir preguntas y respuestas de forma proactiva para tus agentes
El Knowledge Assist proactivo y generativo sigue una conversación en curso y proporciona respuestas y sugerencias de búsqueda de forma proactiva.
Paso 1: Crea un perfil de conversación
Crea un perfil de conversación con la consola de Agent Assist o la API. Te recomendamos que crees un perfil de conversación con la consola de Agent Assist.
Cómo crear desde la consola
- Habilita el tipo de sugerencia Ayuda de conocimiento generativo y vincúlalo al agente del almacén de datos del paso anterior. Esto permite que el agente del almacén de datos proporcione sugerencias de consultas y respuestas de forma proactiva, y responda las búsquedas manuales de tus agentes humanos.
- Opcional: Usa la casilla de verificación Mostrar todas las consultas sugeridas para la conversación para que el agente del almacén de datos muestre todas estas consultas, incluso cuando no se encuentre una respuesta en tus documentos de conocimiento. Esto se diseñó para probar qué consultas se pueden extraer de la conversación en curso.
- Opcional: Usa la casilla de verificación Cargar respuestas proactivas de forma asíncrona para obtener solo sugerencias de búsqueda. Puedes enviar la búsqueda sugerida de forma manual a la API de SearchKnowledge y, también, enviarla automáticamente en el simulador de la consola de Agent Assist y en los módulos de la IU.
Cómo crear desde la API
En los siguientes pasos, se crea un ConversationProfile con un objeto HumanAgentAssistantConfig. También puedes realizar estas acciones con la consola de Agent Assist.
Para crear un perfil de conversación, llama al método create en el recurso ConversationProfile.
Antes de usar cualquiera de los datos de solicitud, realiza los siguientes reemplazos:- PROJECT_ID: El ID de tu proyecto
- LOCATION_ID: Es el ID de tu ubicación.
- AGENT_ID: El ID del agente del almacén de datos del paso anterior
{ "displayName": "my-conversation-profile-display-name", "humanAgentAssistantConfig": { "humanAgentSuggestionConfig": { "featureConfigs": [ { "suggestionFeature": { "type": "KNOWLEDGE_ASSIST" }, "queryConfig": { "dialogflowQuerySource": { "agent": "projects/PROJECT_ID/locations/LOCATION_ID/agents/AGENT_ID" } }, "enableQuerySuggestionWhenNoAnswer": false, } ] } } }
Paso 2: Controla las conversaciones durante el tiempo de ejecución
El Knowledge Assist proactivo y generativo procesa conversaciones durante el tiempo de ejecución para proporcionar sugerencias de búsqueda de forma proactiva en función del contexto de la conversación actual y la respuesta.
Crea una conversación
Primero, debes crear una conversación:
REST
Para crear una conversación, llama al método create
en el recurso Conversation
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: El ID del proyecto de Cloud
- LOCATION_ID: El ID de tu ubicación
- CONVERSATION_PROFILE_ID: El ID que recibiste cuando creaste el perfil de conversación
Método HTTP y URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations
Cuerpo JSON de la solicitud:
{ "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID", "lifecycleState": "IN_PROGRESS", "conversationProfile": "projects/PROJECT_ID/locations/LOCATION_ID/conversationProfiles/CONVERSATION_PROFILE_ID", "startTime": "2018-11-05T21:05:45.622Z" }
El segmento de ruta después de conversations
contiene el nuevo ID de tu conversación.
Python
Para obtener más información, consulta la documentación de referencia de la API de Python del compilador de agentes de Vertex AI.
Para autenticarte en Vertex AI Agent Builder, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Crea un usuario participante
Agrega participantes de usuarios y agentes a la conversación para ver sugerencias. Primero, agrega al usuario participante a la conversación:
REST
Para crear un usuario participante, llama al método create
en el recurso Participant
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: El ID del proyecto de Cloud
- LOCATION_ID: El ID de tu ubicación
- CONVERSATION_ID: El ID de tu conversación
Método HTTP y URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
Cuerpo JSON de la solicitud:
{ "role": "END_USER", }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID", "role": "END_USER" }
El segmento de ruta después de participants
contiene tu nuevo ID de usuario participante.
Python
Para obtener más información, consulta la documentación de referencia de la API de Python del compilador de agentes de Vertex AI.
Para autenticarte en Vertex AI Agent Builder, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Crea un agente participante
Agrega un agente participante a la conversación:
REST
Para crear un agente participante, llama al método create
en el recurso Participant
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: El ID del proyecto de Cloud
- LOCATION_ID: El ID de tu ubicación
- CONVERSATION_ID: El ID de tu conversación
Método HTTP y URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants
Cuerpo JSON de la solicitud:
{ "role": "HUMAN_AGENT", }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID", "role": "HUMAN_AGENT" }
El segmento de ruta después de participants
contiene tu nuevo ID de participante de agente humano.
Python
Para obtener más información, consulta la documentación de referencia de la API de Python del compilador de agentes de Vertex AI.
Para autenticarte en Vertex AI Agent Builder, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Agrega y analiza un mensaje del agente
Cada vez que uno de los participantes escribe un mensaje en la conversación, debes enviarlo a la API para que lo procese. El agente del almacén de datos basa sus sugerencias en el análisis de los mensajes del agente humano y del usuario. En el siguiente ejemplo, el agente humano comienza la conversación preguntando: "¿Cómo puedo ayudarte?".
Aún no se muestran sugerencias en la respuesta.
REST
Para agregar y analizar un mensaje de agente humano en la conversación, llama al método analyzeContent
en el recurso Participant
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: El ID de tu proyecto
- CONVERSATION_ID: El ID de tu conversación
- PARTICIPANT_ID: Es el ID del participante del agente humano.
Método HTTP y URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Cuerpo JSON de la solicitud:
{ "textInput": { "text": "How may I help you?", "languageCode": "en-US" } }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "message": { "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID", "content": "How may I help you?", "languageCode": "en-US", "participant": "PARTICIPANT_ID", "participantRole": "HUMAN_AGENT", "createTime": "2020-02-13T00:01:30.683Z" } }
Python
Para obtener más información, consulta la documentación de referencia de la API de Python del compilador de agentes de Vertex AI.
Para autenticarte en Vertex AI Agent Builder, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Agrega un mensaje del usuario para obtener sugerencias
En respuesta al agente, el usuario dice: "¿Cuándo puedo obtener el reembolso de la devolución?". Esta vez, la respuesta de la API contiene una consulta sugerida y la respuesta de la IA generativa basada en los documentos de conocimiento.
REST
Para agregar y analizar un mensaje del usuario para la conversación, llama al método analyzeContent
en el recurso Participant
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: El ID de tu proyecto
- CONVERSATION_ID: El ID de tu conversación
- PARTICIPANT_ID: Es el ID de participante del usuario final.
Método HTTP y URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID/participants/PARTICIPANT_ID:analyzeContent
Cuerpo JSON de la solicitud:
{ "textInput": { "text": "When can I get my return refund?", "languageCode": "en-US" } }
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "message": { "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID/messages/MESSAGE_ID", "content": "When can I get my return refund?", "languageCode": "en-US", "participant": "PARTICIPANT_ID", "participantRole": "END_USER", "createTime": "2020-02-13T00:07:35.925Z" }, "humanAgentSuggestionResults": [ { "suggestKnowledgeAssistResponse": { "knowledgeAssistAnswer": { "suggestedQuery": { "queryText": "Refund processing time" }, "suggestedQueryAnswer": { "answerText": "After your return is processed, you receive your refund in 7 days. The refund amount should be for the full value of the items returned, but doesn't include shipping & service fees.", "generativeSource": { "snippets": [ { "title": "Returns & refunds - Help", "uri": "https://example.com/", "text": "When the package with your return arrives at the seller's return center, it may take up to 7 additional business days to process. Check the status of your refund with the return tracking number found on your orders page." } ] }, }, "answerRecord": "projects/PROJECT_ID/answerRecords/ANSWER_RECORD_ID" }, } } ] }
Python
Para obtener más información, consulta la documentación de referencia de la API de Python del compilador de agentes de Vertex AI.
Para autenticarte en Vertex AI Agent Builder, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Completa la conversación
Cuando finalice la conversación, usa la API para completarla.
REST
Para completar la conversación, llama al método complete
en el recurso conversations
.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_ID: Es el ID del proyecto de GCP.
- CONVERSATION_ID: El ID que recibiste cuando creaste la conversación
Método HTTP y URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/conversations/CONVERSATION_ID:complete
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/PROJECT_ID/conversations/CONVERSATION_ID", "lifecycleState": "COMPLETED", "conversationProfile": "projects/PROJECT_ID/conversationProfiles/CONVERSATION_PROFILE_ID", "startTime": "2018-11-05T21:05:45.622Z", "endTime": "2018-11-06T03:50:26.930Z" }
Python
Para obtener más información, consulta la documentación de referencia de la API de Python del compilador de agentes de Vertex AI.
Para autenticarte en Vertex AI Agent Builder, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Simulador
Puedes probar tu agente de almacén de datos en el simulador de Agent Assist.
En el ejemplo anterior, el agente de almacén de datos proporciona las siguientes sugerencias:
- Consulta sugerida: Tiempo de procesamiento del reembolso.
- Respuesta generada por IA generativa: Después de que se procese la devolución, recibirás el reembolso en 7 días. El importe del reembolso debe ser por el valor total de los artículos devueltos, pero no incluye los cargos de envío y servicio.
- El título del documento de conocimiento relevante: Devoluciones y reembolsos: Ayuda.
Paso 3: Notificaciones de sugerencias de Pub/Sub
Puedes configurar el campo notificationConfig
cuando crees un perfil de conversación para recibir notificaciones de sugerencias. Esta opción usa Pub/Sub para enviar notificaciones de sugerencias a tu aplicación a medida que avanza la conversación y aparecen sugerencias nuevas.
Si realizas la integración a través de la API de AnalyzeContent
, tienes la opción de habilitar la configuración de disable_high_latency_features_sync_delivery
en ConversationProfile
para asegurarte de que la API de AnalyzeContent
responda, sin esperar las sugerencias de asistencia de conocimiento generativo proactivo, y envíe las sugerencias a través de Pub/Sub.
También puedes habilitar esta configuración desde la consola de Agent Assist.
Accede a los datos a través de las estadísticas de conversación
Como alternativa, las consultas y respuestas generadas por tu asistencia generativa proactiva se propagan automáticamente a las estadísticas de conversaciones. Para acceder a estos datos, sigue las instrucciones que se indican en Habilita la integración del entorno de ejecución de Dialogflow.
Enviar comentarios
Para conocer los pasos para enviar comentarios, consulta Cómo enviar comentarios a Agent Assist.
Responde las preguntas del agente
El siguiente es un ejemplo de solicitud JSON para enviar comentarios sobre la respuesta a las preguntas de los agentes.
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/answerRecords/ANSWER_RECORD_ID", "answerFeedback": { "displayed": true "clicked": true "correctnessLevel": "FULLY_CORRECT" "agentAssistantDetailFeedback": { "knowledgeSearchFeedback": { "answerCopied": true "clickedUris": [ "url_1", "url_2", "url_3", ] } } } }
Cómo sugerir preguntas y respuestas de forma proactiva
El siguiente es un ejemplo de solicitud JSON para enviar comentarios sobre sugerencias proactivas.
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/answerRecords/ANSWER_RECORD_ID", "answerFeedback": { "displayed": true "clicked": true "correctnessLevel": "FULLY_CORRECT" "agentAssistantDetailFeedback": { "knowledgeAssistFeedback": { "answerCopied": true "clickedUris": [ "url_1", "url_2", "url_3", ] } } } }
Metadatos
Si configuras metadata para un documento de conocimiento, tanto Knowledge Assist generativo como Knowledge Assist proactivo y generativo mostrarán los metadatos del documento junto con la respuesta.
Por ejemplo, puedes usar metadatos para marcar si el documento de conocimiento es un artículo privado interno o un artículo público externo. En el simulador de la función de asistencia del agente y los módulos de la IU, tanto la asistencia de conocimiento generativo como la asistencia de conocimiento generativo proactivo muestran automáticamente un valor de metadatos de documento para ciertas claves.
gka_source_label
: El valor se muestra directamente en la tarjeta de sugerencia.gka_source_tooltip
: Cuando el valor es del tipostruct
, si colocas el cursor sobre el vínculo de la fuente, se expande y muestra el valor en una información sobre herramientas.
Si tienes los siguientes metadatos para un documento de conocimiento, la tarjeta de sugerencias muestra la fuente como External Doc
y la información sobre herramientas agrega doc_visibility: public doc
.
Metadatos:
None
{
"title": "Public Sample Doc",
"gka_source_label": "External Doc",
"gka_source_tooltip": {
"doc_visibility": "public doc"
}
}
Idiomas admitidos
Consulta la lista completa de idiomas admitidos.