GSP928

Descripción general
Conversational Agents proporciona un enfoque simple y visual para el diseño de agentes conversacionales. Los diseñadores de bots ahora tienen una imagen mucho más clara del proceso general de creación de bots y varios diseñadores pueden colaborar fácilmente en la misma creación de agentes. Conversational Agents admiten muchos idiomas que tu agente puede usar y comprender, pero en este lab solo se usará inglés.
En este lab, crearás un agente conversacional usando Conversational Agents.
Requisitos previos
Debes estar familiarizado con los conceptos básicos de la IA conversacional. Revisa estas transcripciones de ejemplo para tener una idea de cómo podrían ser las transcripciones de los clientes. A menudo, el primer paso para crear un agente es revisar las transcripciones de los clientes o los datos contextuales para comprender el caso de uso y los requisitos empresariales específicos.
Configuración
Antes de hacer clic en el botón Comenzar lab
Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
- Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
- Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.
Cómo iniciar tu lab y acceder a la consola de Google Cloud
-
Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá un diálogo para que selecciones la forma de pago.
A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
- El botón para abrir la consola de Google Cloud
- El tiempo restante
- Las credenciales temporales que debes usar para el lab
- Otra información para completar el lab, si es necesaria
-
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.
Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
-
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
{{{user_0.username | "Username"}}}
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
-
Haz clic en Siguiente.
-
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
{{{user_0.password | "Password"}}}
También puedes encontrar la contraseña en el panel Detalles del lab.
-
Haz clic en Siguiente.
Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud.
Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
-
Haz clic para avanzar por las páginas siguientes:
- Acepta los Términos y Condiciones.
- No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
- No te registres para obtener pruebas gratuitas.
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Nota: Para acceder a los productos y servicios de Google Cloud, haz clic en el menú de navegación o escribe el nombre del servicio o producto en el campo Buscar.
Habilita la API de Dialogflow
- En el campo de búsqueda de la consola, escribe “API de Dialogflow”.
- Selecciona la tarjeta de la API de Dialogflow.
- Haz clic en el botón Habilitar.
Tarea 1: Crea tu agente
-
Visita la consola de Conversational Agents y, luego, selecciona tu proyecto de Cloud llamado .
Haz clic en Revisar mi progreso para verificar el objetivo.
Habilita la API
`
-
Haz clic en Create agent > Build your own. Si no ves esta página, actualiza el navegador.
-
Asigna el nombre Flight booker a tu agente.
-
Elige global en el menú desplegable Location.
-
Haz clic en Create.
-
Después de crear el agente, ve a Settings > (Agent)Settings > General > Logging settings y marca las casillas junto a las opciones Enable Cloud Logging y Enable conversation history. Esto generará registros para este agente.
-
Haz clic en Save.
Haz clic en Revisar mi progreso para verificar el objetivo.
Crea un agente
Verificación de conocimientos
Tarea 2: Intents
Los intents son las razones por las que un usuario final interactúa con el agente, por ejemplo, para pedirle algo. Puedes crear un intent para cada tema por el que quieran navegar.
Las intents se pueden reutilizar en Pages y Flows. Cada intent se define con frases de entrenamiento que los usuarios finales suelen formular. Estas se pueden anotar o "etiquetar" para recopilar parámetros específicos, como la ciudad de llegada o fecha de partida.
Conversational Agents sugerirán anotaciones a medida que incluyas frases de entrenamiento para el intent. También se pueden anotar de forma manual para recopilar los valores de parámetros que quieres extraer de la interacción del usuario final con tu agente.
Recomendación: Para reutilizar intents y facilitar el mantenimiento, asígnales nombres claros y explícitos a tus intents.
Formato del intent: category.some_description
Ejemplo de formato:
- Intents principales:
main.book_a_flight
- Intención común, pero no principal:
supplemental.flight_emissions
- Intents reutilizables:
confirmation.yes, confirmation_no, redirect.live_agent.
Crea tu primer intent
-
En el panel de navegación izquierdo, haz clic en Flows.
-
Haz clic en Manage > Intents > + Create :
-
Nombre visible: main.book_a_flight
-
En el encabezado Training Phrases, agrega cada una de las siguientes frases a Conversational Agents y haz clic en Intro después de cada frase:
- Reserva un vuelo
- ¿Puedes reservarme un vuelo a San Francisco para el próximo mes?
- Quiero usar mis puntos de recompensa para reservar un vuelo desde Milán en octubre
- Mi familia me visitará la semana que viene y necesitamos reservar 6 pasajes de ida y vuelta
- Cuatro pasajes en clase ejecutiva de Taiwán a Dubái del 2 al 30 de junio
- Necesito un vuelo el sábado de LAX a San José
- Reserva un vuelo de solo ida de SFO a MIA el 10 de agosto
- Ayúdame a reservar un pasaje del 10/4 al 15/4 desde Ciudad de México a Medellín, Colombia
- Estoy reservando un viaje sorpresa para mi madre, ¿puedes ayudarme a organizarlo del 10 al 25 de mayo a Costa Rica?
- ¿Tienes vuelos baratos a Nueva York para este fin de semana?
- Quiero que mi primo viaje desde Montreal el 8 de agosto
- Quiero encontrar dos asientos para Ciudad de Panamá el 4 de julio
- Para nuestro aniversario de bodas, queremos ir a Seattle en Navidad
Nota: Para obtener una mayor exactitud del modelo, se recomienda usar entre 20 y 50 frases de entrenamiento con opciones de respuesta cortas y largas.
-
Haz clic en Save.
Nota: También puedes agregar frases de entrenamiento de forma masiva creando un archivo CSV con frases de entrenamiento y subiéndolo a Conversational Agents.
Tarea 3: Flujos y páginas
Los Flows (flujos) se usan para definir temas y las rutas de conversación relacionadas. Cada agente tiene un flujo llamado Default Start Flow. Este flujo único puede ser todo lo que necesitas para un agente simple.
Los agentes más complejos pueden requerir flujos adicionales, y los diferentes miembros del equipo de desarrollo pueden ser responsables de compilar y mantener estos flujos.
Cada flujo comienza con una Page (Página) y, a partir de ahí, se compone de una o varias páginas adicionales para manejar la conversación dentro de un flujo en particular. La página actual en la que se encuentra un usuario final se considera como la "página activa". Cada página se puede configurar para que recopile cualquier información requerida del usuario final.
Crea a partir de tu Default Start Flow
La página desde la que comienza tu agente se llama Default Start Flow. Las páginas almacenan la lógica de enrutamiento, las respuestas (conocidas como Fulfillment), las acciones específicas que se deben realizar si no se puede encontrar una coincidencia para un intent (conocidas como no-match) o si no se recibe ninguna entrada (no-input, que es cuando el agente no recibe una respuesta a tiempo).
-
Haz clic en Build.
-
Haz clic en Start Page para abrir la página.
-
En las opciones desplegadas de la página Start, selecciona el ícono + que está junto a Routes.
-
Selecciona el intent main.book_a_flight en el menú desplegable y, luego, haz clic en Save.
-
Luego, en la sección Routes, haz clic en la ruta main.book_a_flight. 
-
Desplázate hacia abajo hasta Transition y elige + new Page en el menú desplegable.
-
Asígnale el nombre Ticket information a la página y haz clic en Save.
-
Sal de las ventanas para volver a la pantalla principal de los flujos y ver tu nueva página Ticket information conectada a la página Start.
El inicio del flujo ahora incluye un saludo y, luego, avanzará a la página Ticket information cuando se encuentre una coincidencia del intent main.book_a_flight. En la página de Ticket Information, recopilarás parámetros del usuario final para que pueda reservar su vuelo.
Tarea 4: Entidades y parámetros
-
Las Entities (entidades) definen el tipo de información que deseas extraer de un usuario final, por ejemplo, la ciudad a la que quieres viajar. Usa las "entidades del sistema" integradas de Conversational Agents para hacer coincidir fechas, horas, colores, direcciones de correo electrónico, etcétera.
-
Las entidades del sistema también se pueden “extender” para que incluyan valores que no forman parte de los valores predeterminados del sistema. Si necesitas crear una entidad totalmente personalizada, puedes hacerlo creando un tipo de Custom Entity para hacer coincidir datos específicos de tu negocio que no se encuentran como una entidad de sistema.
-
Los Parameters (parámetros) son la información que proporciona el usuario final durante una sesión, como la fecha, la hora y la ciudad de destino. Cada parámetro tiene un nombre y un tipo de entidad. Se escriben en snake_case (minúsculas con guiones bajos entre palabras).
Crea tu primer conjunto de parámetros
Luego, usarás una entidad para extraer un parámetro obligatorio del usuario final.
-
Haz clic en la página Ticket Information y, luego, en el signo + que está junto a Parameters para recopilar datos de vuelos.
-
Ingresa departure_city en el campo Display name.
-
Elige @sys.geo-city en el menú desplegable Entity type.
-
Desplázate hacia abajo hasta Initial prompt fulfillment > Agent responses > + Add dialogue response > Agent dialogue y agrega ¿Desde qué ciudad quieres que salga el vuelo?
-
Haz clic en Save.
-
Sal de esta ventana para crear otro parámetro.
-
Haz clic nuevamente en el ícono + junto a Parameters para crear 4 parámetros adicionales, uno por uno, con el siguiente nombre, tipo de entidad y forma en que el agente le pedirá información al usuario final:
| Nombre visible |
Tipo de entidad |
Diálogo del agente |
| departure_date |
@sys.date |
¿Cuál es el mes y el día de la salida? |
| destination_city |
@sys.geo-city |
¿Cuál es la ciudad de destino? |
| return_date |
@sys.date |
¿Cuál es el mes y el día del vuelo de regreso? |
| passenger_name |
@sys.any |
¿Cuál es el nombre del pasajero? |
Cuando termines, verás lo siguiente:

Nota: El orden en que se enumeran los parámetros afecta el orden en que el agente de reservas de vuelos los solicitará. Puedes cambiar el orden fácilmente arrastrando los parámetros hacia arriba o hacia abajo.
Verificación de conocimientos
Tarea 5: Condiciones
Una vez que el agente recopile los 5 parámetros necesarios para la reserva de vuelos, dirige al usuario final a otra página mediante una condición de enrutamiento, que crearás a continuación.
-
Vuelve a salir de la ventana de parámetros para volver a la página Ticket information.
-
Desplázate hacia abajo hasta localizar Routes y haz clic en el signo + que aparece al lado.
-
Desplázate hacia abajo hasta Condition > Condition rules y selecciona "Match AT LEAST ONE rule (OR)".
-
En el campo Parameter ingresa $page.params.status.
-
Elige el signo = en el menú desplegable Operand.
-
En el campo Value, ingresa "FINAL" (asegúrate de incluir las comillas dobles).
-
Haz clic en Save.
Verificación de conocimientos
Tarea 6: Entrega
Ahora, agrega una respuesta que se le mostrará al usuario final cuando se hayan recopilado sus 5 parámetros de reserva. Estas respuestas se denominan Fulfillment.
-
En la condición que acabas de crear, desplázate un poco hacia abajo y localiza la sección llamada Fulfillment.
-
En Agent responses, haz clic en Add dialogue response, selecciona Agent dialogue y, luego, escribe Gracias por la información. Permíteme verificar la disponibilidad de tu pasaje. Haz clic en Add
-
y después en Save.
(Ahora, permanece en esta página mientras lees el siguiente paso de confirmación de la información).
Tarea 7: Confirmación de la información
Después de ofrecer una respuesta (o entrega), debes crear una transición a una nueva página para confirmar con el usuario final que la información de viaje recopilada (parámetros) es correcta.
-
Sigue desplazándote hacia abajo (más allá de la entrega que acabas de crear) hasta llegar a Transition.
-
En el campo Page, selecciona el menú desplegable para elegir + new Page.
-
Escribe Confirmar viaje en el campo llamado Page name.
-
Haz clic en Save.
-
Sal de la ventana.
-
Revisa el flujo de tus 3 páginas.
Confirma los parámetros recopilados de los usuarios finales
Los parámetros de sesión guardan la información recopilada previamente del usuario final y siguen activos durante toda la sesión. Además, te ayudan a confirmar la información con la persona.
Por ejemplo, podemos hacer que el agente confirme el nombre de un pasajero: "Gracias por proporcionar esta información, $session.params.passenger_name." Esto se muestra al usuario final como "Gracias por proporcionar esta información, Juan Pérez".
Los parámetros tienen el siguiente formato:
-
Prefijo: $session.params.
-
Nombre de la entidad: passenger_name
Así, la referencia a la ciudad de partida se vería de esta manera: $session.params.departure_city
-
Desde la vista Build, haz clic en la página Confirm Trip > Entry fulfillment > campo Edit fulfillment.
-
Como usaste 5 parámetros, puedes confirmarlos con el usuario utilizando los parámetros de sesión que aparecen a continuación. Pega el siguiente texto en la sección Agent dialogue y haz clic en Add:
Confirmemos que $session.params.passenger_name viajará
De: $session.params.departure_city
A: $session.params.destination_city
Saliendo el: $session.params.departure_date
Regresando: $session.params.return_date
¿Es correcto?
-
Haz clic en Save.
-
Esto es lo que verá el usuario final cuando el agente conversacional confirme los parámetros de sesión recopilados:
Ruta de confirmación positiva
-
Sal de la ventana para volver a la página Confirm Trip. Haz clic en + junto a Routes.
-
Haz clic en el menú desplegable Intents y, luego, en + new Intent.
-
En Display name, escribe confirmation.yes.
-
En Training phrases, ingresa sí y, luego, presiona Intro (puedes agregar más frases como “correcto”, “sí”, etcétera, para mejorar la coincidencia de CLN de este intent).
-
Haz clic en Save.
-
Después de guardar, desplázate hacia abajo hasta la sección Fulfillment y, en Agent responses, haz clic en Add dialogue response, selecciona Agent dialogue y, luego, escribe lo siguiente: ¡Listo! Tu vuelo está reservado. Haz clic en Add.
-
Luego, haz clic en Save.
-
Haz clic en la flecha hacia atrás, junto a Route.
Ruta de confirmación negativa
Ahora, agrega la lógica para redirigir al usuario final y volver a recopilar sus parámetros de vuelo cuando indique que la información es incorrecta.
-
En la sección Routes, selecciona Add route.
-
En el menú desplegable Intents, elige + new Intent.
-
En el campo Display name, asigna el nombre confirmation.no al intent.
-
Desplázate hacia abajo hasta la sección Training phrases, escribe no y haz clic en Enter.
-
Haz clic en Save.
-
A continuación, desplázate hacia abajo hasta la sección Transition > Page y elige Ticket information en el menú desplegable.
Nota: Esto sirve para volver a solicitarle al usuario su información de vuelo.
-
Desplázate hacia arriba hasta Parameter presets y haz clic en Add parameter . Ingresa los siguientes 5 valores y asígnales el valor null sin las comillas.
Nota: Debes borrar las comillas en la columna de valores y escribir null. Esto sirve para borrar los parámetros recopilados del usuario final.
| Parámetro |
Valor |
departure_city |
null |
destination_city |
null |
departure_date |
null |
return_date |
null |
passenger_name |
null |
El propósito de esto es eliminar el valor que se recopiló previamente del usuario final para permitirle ingresar uno nuevo. Si omites este paso, tu bot podría quedar atrapado en un bucle infinito.
-
Haz clic en Save.
-
Cierra la ventana para volver a la vista Build. Ahora verás cómo fluyen las 3 páginas. Ten en cuenta que la última página tiene dos flechas entre Confirm trip y Ticket information, porque el intent confirmation.no no devuelve al usuario a la página anterior.
Verificación de conocimientos
Tarea 8: Prueba
-
Para probar que tu agente funcione como se espera, haz clic en Toggle Simulator en la esquina superior derecha de la pantalla.
-
En el menú desplegable Start resource, selecciona Default Start Flow.
-
Interactúa con el agente como si fueras el usuario final. A medida que avanzas por el flujo principal, observa las páginas, los intents y las transiciones que creaste.
Según cómo hayas organizado la recopilación de parámetros, puedes probar escribiendo el siguiente diálogo de ejemplo:
- Me gustaría reservar un vuelo
- Austin
- Mañana
- Boston
- Próximo viernes
- Mickey Mouse
- Sí
Esto debería dar como resultado una transacción exitosa a través de tu agente, lo que comúnmente se conoce como el “camino ideal”.
Aquí tienes un ejemplo de la prueba del agente anterior en la consola de Test Agent:

Haz clic en Revisar mi progreso para verificar el objetivo.
Prueba el agente
Tarea 9: Exporta tu agente
Cuando creas un agente para un proyecto, puedes exportarlo para usarlo en otro proyecto. Puedes exportar tu agente y guardarlo para usarlo en labs futuros o para seguir desarrollándolo en tu propio proyecto personal.
-
En el menú desplegable Agent en la parte superior de la consola de Conversational Agents, haz clic en View all agents.
-
En la pantalla Agent list, haz clic en el menú contextual junto a tu agente y, luego, en Export.
-
En la pantalla Export Agent, elige Download en un archivo local y, luego, haz clic en Export.
¡Felicitaciones!
Creaste un agente conversacional y te familiarizaste con los conceptos fundamentales.
Próximos pasos/Más información
Última actualización del manual: 28 de febrero de 2025
Prueba más reciente del lab: 28 de febrero de 2025
Copyright 2025 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.