Inteligencia artificial
UI Integration
AI essentials / GenAI - CCAI / Improve Agent Productivity using LLMs / Integrate Agent Assist with Telephony and Chatbot Systems
Contexto: arquitectura de referencia del curso. Los campos y requisitos del proveedor deben cotejarse con la versión concreta.
La UI tiene que mostrar sugerencias a tiempo y permitir al agente entenderlas. Si roba atención o pierde el estado de la conversación, la integración puede funcionar técnicamente y estorbar en el trabajo. (◠‿◠)
Índice
Integración de la UI de Agent Assist en el Dashboard del Agente Integración Backend - Pub/Sub Configuración de Pub/Sub para Integración de Agent Assist Despliegue de la Integración de Agent Assist en Google Cloud
Integración de la UI de Agent Assist en el Dashboard del Agente
La integración de la UI de Agent Assist en el dashboard del agente es crucial para mejorar la eficiencia y la calidad del servicio. Al mostrar las sugerencias directamente en el escritorio del agente, se elimina la necesidad de buscar información manualmente y se brinda contexto inmediato para resolver las consultas del cliente.
Opciones y Arquitectura de Integración
Agent Assist ofrece dos enfoques predefinidos para la integración de la UI: UI Components (para integraciones más simples) y Custom Pub/Sub Based Integration (para soluciones más personalizadas). Los módulos proporcionan piezas reutilizables; una integración personalizada debe implementar transporte, autenticación y renderizado que no cubra el componente.
El flujo de datos funciona de la siguiente manera:
- Escucha y Transcripción: Agent Assist "escucha" la conversación en vivo, la transcribe en tiempo real y analiza el texto.
- Análisis y Emparejamiento: El módulo de procesamiento de lenguaje natural (
NLU) de Agent Assist empareja el texto conintentsy bases de conocimiento. - Sugerencias: Las sugerencias se envían al escritorio del agente a través de una API.
- Feedback: El agente proporciona
feedbacksobre la utilidad de las sugerencias, lo que aporta datos de evaluación; no implica reentrenamiento continuo automático.
Enfoques de Integración de la UI
Se pueden elegir dos enfoques principales para integrar la UI de Agent Assist, dependiendo del nivel de personalización y el tipo de aplicación que se use.
Managed Container(Contenedor Gestionado):- Este es el enfoque recomendado para la mayoría de las integraciones.
- Es un componente único que renderiza todas las funcionalidades de Agent Assist en un panel unificado.
- Maneja de forma automática la mayoría de las tareas y es ideal para integrarse en plataformas de terceros como
LivePersonoGenesys Cloud. - Se implementa simplemente agregando una etiqueta
<script>en el HTML y utilizando el componente principal<agent-assist-ui-modules-container>con parámetros de configuración.
Individual Components(Componentes Individuales):- Este enfoque ofrece la máxima flexibilidad y es ideal para aplicaciones personalizadas.
- Permite importar cada componente y conector de forma independiente, lo que significa que puedes mostrar cada funcionalidad de Agent Assist en diferentes partes de la página.
- Requiere un mayor esfuerzo de desarrollo, ya que cada módulo debe importarse y configurarse manualmente.
Ambos enfoques ofrecen snippets de código de ejemplo en la documentación de "Recursos adicionales" para facilitar la integración con un conversation profile. La elección entre ellos dependerá de la arquitectura del escritorio del agente y del nivel de control que se necesite sobre la UI.
Integración Backend - Pub/Sub
Componentes Clave
- Cloud Pub/Sub: Es un servicio de publicación/suscripción que recibe notificaciones de Agent Assist y las transfiere al servicio
Cloud PubSub Interceptor. - Cloud PubSub Interceptor: Un microservicio que recibe mensajes de Pub/Sub y los escribe en una caché de Redis.
- Memorystore Redis: Una caché en memoria que actúa como un sistema de sincronización temporal de eventos. Utiliza su propia funcionalidad de pub/sub para notificar al conector de interfaz de usuario (
UI Connector) sobre nuevos eventos. - UI Connector Service: Es el backend de la interfaz de usuario de Agent Assist. Mantiene conexiones WebSockets con el frontend del agente para enviar eventos en tiempo real. También actúa como proxy para las solicitudes que van del escritorio del agente a los servidores de Agent Assist.
- Agent Assist UI Service: Proporciona las páginas HTML que se integran en el desktop del agente a través de un
iFrame. - Secret Manager: Almacena de forma segura las credenciales y claves utilizadas por los servicios.
- Cloud Run & Load Balancer: Gestionan la escalabilidad automática de los servicios.
Flujos de Trabajo Principales
1. Autenticación (Registro de JWT)
El escritorio del agente envía un token personalizado (por ejemplo, de Salesforce) al UI Connector. Este valida el token y, si es correcto, genera y devuelve un JWT temporal que se usa para autenticar todas las solicitudes y conexiones posteriores.
2. Manejo de Eventos (Event Handling)
- Cuando Agent Assist genera una nueva sugerencia, publica un evento en un topic de Pub/Sub.
- El
PubSub Interceptorlo recibe y lo escribe en un canal de Memorystore Redis. - El
UI Connector, que está suscrito a ese canal, recibe el evento. - Finalmente, el
UI Connectorenvía la sugerencia al frontend del agente a través de la conexión WebSockets.
3. Procesamiento de Solicitudes (Proxy)
El UI Connector también actúa como un proxy. El agente envía solicitudes (como feedback sobre una sugerencia) al UI Connector usando el JWT temporal. El conector valida el JWT y luego reenvía la solicitud a los servidores de Agent Assist.

Configuración de Pub/Sub para Integración de Agent Assist
Tipos de Eventos de Pub/Sub
El curso separa tres clases de notificación en topics de ejemplo, configurados en el ConversationProfile:
-
Suggestion Event (
HumanAgentAssistantEvent):- Contiene: Las sugerencias generadas por Agent Assist (ej: respuestas de Smart Reply, artículos de Knowledge Assist, resúmenes).
- Topic:
suggestions
-
New Message Event (
ConversationEvent):- Contiene: Nuevos mensajes o utterances que aparecen en la conversación (transcripciones en tiempo real).
- Topic:
new-messages
-
Lifecycle Event (
ConversationEvent):- Contiene: Eventos del ciclo de vida de la conversación (ej: inicio, fin, transferencia).
- Topic:
lifecycle
Pasos de Configuración
-
Crear los Topics de Cloud Pub/Sub:
- Crear tres topics separados en Google Cloud Pub/Sub para cada tipo de evento (suggestions, new-messages, lifecycle).
- Instrucciones detalladas disponibles en el documento "Additional resources".
-
Configurar el Conversation Profile (Método Recomendado - Consola):
- En la Agent Assist Console, navegar al
Conversation Profileque se desea integrar. - En la sección de configuración de Cloud Pub/Sub, pegar los Topic IDs de los topics creados en el paso anterior en sus secciones designadas:
- Pegar el ID del topic para sugerencias en el campo correspondiente.
- Pegar el ID del topic para nuevos mensajes en su campo.
- Pegar el ID del topic para ciclo de vida en su campo.
- En la Agent Assist Console, navegar al
-
Entender el Formato del Mensaje:
- El contenido del mensaje de Pub/Sub varía según el evento que lo triggereará.
- Es crucial familiarizarse con el formato JSON de los mensajes
HumanAgentAssistantEventyConversationEventpara poder procesarlos correctamente en el backend. - Consultar los ejemplos y schemas en el documento "Additional resources".
-
Configuración Avanzada (Alternativa via API):
- El
ConversationProfiletambién puede configurarse mediante APIs, aunque la consola es el método recomendado.
- El
Flujo de la Integración
- Publicación: Agent Assist publica automáticamente los eventos en los topics de Pub/Sub configurados.
- Recepción: Un servicio backend personalizado (como el
PubSub Interceptorde la arquitectura compleja) se suscribe a estos topics para recibir los mensajes. - Procesamiento: Este servicio procesa los mensajes y los reenvía al Agent Desktop en tiempo real (usando WebSockets o otra tecnología) para mostrárselos al agente.
Conclusión: Esta configuración es el primer paso fundamental para construir una integración backend en tiempo real. Establece la canalización de datos que luego debe ser conectada al frontend del agente desktop mediante servicios personalizados.
Despliegue de la Integración de Agent Assist en Google Cloud
Prerrequisitos
- Google Cloud CLI: Instalar y configurar la línea de comandos de Google Cloud.
- Recursos de Conversational Agents:
- Habilitar la Conversational Agents API en el proyecto de Google Cloud.
- Tener un Conversation Profile creado y configurado con las features deseadas de Agent Assist (usando la consola es lo recomendado).
- Habilitar las notificaciones de Cloud Pub/Sub en ese perfil (configurando los topics para suggestions, new-messages, lifecycle).
Proceso de Despliegue
- Configurar Variables de Entorno: Definir las variables necesarias para el despliegue (ej: PROJECT_ID, región de Cloud Run).
- Ejecutar un Script Bash de Despliegue:
- El repositorio de la solución proporciona un script bash que automatiza el despliegue.
- Este script realiza las siguientes tareas de forma automática:
- Configuración de Google Cloud CLI: Asegura que la CLI esté correctamente configurada.
- Habilitación de Servicios de Google Cloud: Habilita las APIs necesarias (Cloud Run, Pub/Sub, etc.).
- Creación de Recursos y Asignación de Permisos: Crea los recursos necesarios (como una service account) y asigna los permisos correctos (IAM).
- Despliegue en Cloud Run: Despliega los servicios (UI Connector, PubSub Interceptor) en Cloud Run.
Resultado Final
- Tras una ejecución exitosa del script, la aplicación frontend (Agent Assist UI Service) estará desplegada y disponible.
- Esta aplicación estará alojada en una URL de Cloud Run y podrá ser embebida en el agent desktop usando un iFrame.
Navegación del módulo
- Anterior: 03 Integrate Agent Assist with Conversational Agents
- Siguiente: 05 Agent Desktop Integration with Genesys Cloud for chat and voice
Referencias: UI y conectores, módulos backend y autenticación. Redis, Cloud Run y nombres de topics pertenecen a esta arquitectura, no son requisitos del protocolo ni nombres reservados. La validación JWT y los permisos de publicación/suscripción deben configurarse; ejecutar un script no demuestra permisos correctos. Para reproducir esta arquitectura hacen falta los scripts y recursos de la versión del curso utilizada.
+----------------------------------------+
| Floure & |
| Tachibana's guild |
| [Hikari · Nozomi · Iona] |
| SEAL: sha256/12: 3286cc499792 |
| STATUS: LITURGY_IN_PROGRESS |
+----------------------------------------+