- Introducción
- Primeros pasos
- Crear con Maestro BPMN
- Comprender el modelado de Maestro BPMN
- Abrir el lienzo de modelado
- Modelar tu proceso
- Alinear y conectar elementos BPMN
- Patterns library
- Autopilot para Maestro (vista previa)
- Repositorio de procesos
- Implementar un proceso BPMN simple
- Implementar un proceso BPMN complejo
- Depuración
- Simular
- Evaluaciones (vista previa)
- Escenarios de implementación comunes
- Crear con Maestro Case
- Introducción a Maestro Case
- Maestro BPMN frente a Maestro Case: cuándo utilizar la gestión de casos
- El ciclo de vida de Maestro Case: del desencadenador de eventos a la experiencia de la aplicación
- Crea tu primer caso con Maestro Case
- Crear un Maestro Case con un agente de codificación (vista previa)
- Definir claves de caso (de sistema o externo)
- Establecer contratos de entrada/salida y de escritura diferida de tareas
- Reglas de salida y terminación temprana de etapas
- Modelar las etapas principal y secundaria
- Iniciar un caso desde Data Fabric
- Implementar perfiles y permisos a nivel de etapa
- Establecer SLA y reglas de escalado automatizadas
- Configurar un bucle de reprocesamiento (reingreso)
- Configurar y probar el agente de Case Manager (vista previa)
- Contrato de entrada y salida del gestor de casos
- Diccionario de componentes de Maestro Case
- Crear con Maestro Flow
- Nodos del conector
- Maestro Automate
- Integraciones
- En funcionamiento
- Supervisión
- Optimizando
- Información de referencia
Agente de voz
Un agente de voz que se adjunta a una llamada en vivo y habla con la persona que llama.
Lo que hace
Adjunta un agente a una llamada telefónica en vivo y habla con la persona que llama. El audio se transmite directamente a un modelo de voz en tiempo real, que permite a la persona que llama interrumpir al agente en mitad de la conversación. Configura el modelo, el perfil, la solicitud, las herramientas, los índices de contextualización y las escaladas directamente en el nodo.
Ambas direcciones de llamada utilizan la misma forma de tres pasos:
| Dirección | Secuencia de nodos |
|---|---|
| Entrante | Llamada entrante → Agente de voz → Finalizar llamada |
| Saliente | Crear llamada saliente → Agente de voz → Finalizar llamada |
El nodo está etiquetado como Agente de voz en la categoría Agente de la paleta del nodo.
Referencia de configuración
| Campo | Descripción |
|---|---|
| Modelo | El modelo de voz en tiempo real. |
| Persona | La voz para el modelo seleccionado. |
| Solicitud del sistema | El rol del agente, sus instrucciones permanentes y cómo debe cerrar la conversación. |
| Temperatura | Creatividad de respuesta de 0 a 1. |
| Máximo de tokens | Token máximo para una conversación. |
| Contexto de la llamada | La llamada a la que se adjunta este agente. Vincúlalo a un callContext anterior, por ejemplo, $vars.createOutgoingCall1.output.callContext. |
Variables de salida
Opcionalmente, puedes configurar variables de salida estructuradas en la sección Salidas del panel de propiedades. Son útiles para establecer variables orientadas a objetivos o de enrutamiento para utilizar en nodos posteriores dentro del flujo.
Cada variable de salida que declaras se convierte en un campo en el objeto de salida del agente, al que se hace referencia como $vars.<agentName>.output.<name>. Dale a cada uno un nombre y un tipo, luego indica al agente en el campo de descripción de la variable cómo rellenarla. La generación de salida está impulsada por una combinación de la solicitud del sistema del agente y las descripciones de las variables de salida.
El agente los rellena cuando finaliza su sesión de voz.
Los dos usos más comunes son los resúmenes de llamadas y los traspasos. Para un resumen, declara una salida como call_summary y utiliza su descripción para decirle al agente que resuma la llamada. El agente lo escribe cuando finaliza su sesión, y los nodos posteriores lo leen como $vars.voiceAgent1.output.call_summary.
Herramientas
Conecta herramientas al identificador de herramientas para dar al agente capacidades que puede llamar mientras razona. El agente decide durante su bucle si llamar a cada herramienta conectada y cuándo hacerlo. Cada herramienta lleva una descripción que le dice al agente para qué sirve, así que escribe descripciones claras cuando una herramienta exponga una.
Al diseñar herramientas para agentes de voz:
- La persona que llama espera a través de cada llamada de herramienta, por lo que el trabajo de cada herramienta debe ser pequeño y rápido.
- Las herramientas a las que llama el agente en la misma ronda vuelven juntas: la más lenta establece cuánto tiempo la persona que llama oye silencio.
- Después de un tiempo de espera, el agente puede informar de un error e intentarlo de nuevo, así que haz que las herramientas sean idempotentes. Se agotará el tiempo de espera de una llamada de herramienta que no se haya devuelto en 180 segundos.
Disponibilidad de herramientas
| Categoría de herramienta | Disponibilidad |
|---|---|
| Procesos RPA | Disponible |
| Flujos de trabajo de API | Disponible |
| Actividades | Disponible |
| Otros flujos (Maestro) | Disponible |
| Orquestación de procesos | Disponible |
| Funciones codificadas | Disponible |
| Agente (invoca un agente independiente publicado) | Disponible |
| Conectores de Integration Service | Disponible |
| Índices de contextualización | Disponible |
| Herramientas integradas (Analizar archivos, RAG profundo, Transformación por lotes) | No disponible |
| Escaladas | No disponible |
| Herramientas del protocolo de contexto del modelo (MCP) | No disponible |
| A2A (agente a agente) | No disponible |
| Extracción y Procesamiento Inteligentes (IXP) (extracción de documentos) | No disponible |
Herramientas de voz integradas
Cada agente de voz tiene acceso a dos herramientas integradas. Estos se incluyen pero no se muestran en el lienzo Flujo:
- Herramienta multifrecuencia de tono dual (DTMF): se utiliza para pulsar dígitos en el teclado del teléfono, que se puede utilizar para navegar por árboles de teléfonos externos
- Finalizar sesión: se utiliza para salir de la conversación sin finalizar la llamada. Útil para transferencias de agentes de voz.
Barreras de seguridad de la herramienta
Las barreras de seguridad en el nivel de herramienta están disponibles en las herramientas conectadas al nodo del agente de voz. Puedes filtrar o bloquear los parámetros de entrada de una herramienta. Configura la barrera de seguridad en la herramienta adjunta al identificador de herramientas del agente de voz. Consulta barreras de seguridad de herramientas.
Transferencias
Finalizar una sesión de voz no es lo mismo que finalizar la llamada. Cuando un agente finaliza su sesión, sale de la llamada pero deja la línea abierta: el agente rellena sus variables de salida y el flujo se mueve al siguiente nodo. Solo el nodo Finalizar llamada y la persona que llama pueden colgar la llamada.
Eso es lo que hace posibles los traspasos. Encadene los nodos de agente de voz y vincúlelos todos al mismo contexto de llamada. Cada agente finaliza su propia sesión cuando termina, y solo la última ruta llega a Finalizar llamada, por lo que la persona que llama permanece en línea en todo momento.
Un traspaso tiene dos partes:
- Dirija al agente correcto. Dale al primer agente una variable de salida, por ejemplo,
handoff, y utiliza su descripción para decirle al agente qué valor establecer. Ramifica ese valor con un nodo Switch para que cada caso lleve al agente que lo gestiona. - Lleva el contexto. Un agente receptor no sabe nada sobre lo que ya se ha dicho. Haz referencia a una salida de resumen de llamada del primer agente en su solicitud del sistema (
$vars.voiceAgent1.output.call_summary), o añade un nodo Obtener contexto de conversación en la rama y haz referencia a la transcripción en su lugar. Consulta Transcripción de llamadas.
No se admite transferir una llamada a una persona. No hay transferencia de llamadas en vivo.
Transcripción de la llamada
Para leer una transcripción después de una llamada, abre el seguimiento de ejecución de depuración o los seguimientos de trabajo de Orchestrator. Consulta Observabilidad.
Para utilizar la transcripción dentro del Flujo:
- Añade un nodo Obtener contexto de conversación .
- Pasar
$vars.<incomingOrOutgoingCallNodeId>.output.callContext.conversationId. Por ejemplo,<incomingOrOutgoingCallNodeId>puede sercreateOutgoingCall1. - Haz referencia a la transcripción como
$vars.<getConversationContextNodeId>.output.conversationContext.messages. Por ejemplo,getConversationContextNodeIdpuede sergetConversationContext1.
Por ejemplo, puedes pasar la transcripción a un agente autónomo para su procesamiento:
Problemas comunes
El agente habla normalmente, pero nunca ejecuta una herramienta. La carpeta de Orchestrator no tiene un robot desatendido o predeterminado con una máquina sin servidor asignada, por lo que cada llamada de herramienta se vuelve como un error y el agente permanece conversacional. Añade un robot a la carpeta y vuelve a llamar. Consulta Requisitos de la carpeta de Orchestrator.
La llamada finaliza antes de que finalice la conversación, pero no hay errores. El agente finalizó su propia sesión en mitad de la conversación y el flujo pasó a Finalizar llamada. Es probable que se trate de un problema de solicitud en el que el agente de voz pensó que había terminado de ayudar a la persona que llamaba y decidió finalizar la sesión.
El agente se detiene o produce cadenas de dígitos de lectura estáticas. Con Gemini Live at Temperatura 0, las cadenas de dígitos largos pueden detenerse o sonar distorsionadas. Aumente ligeramente la temperatura . Si el problema persiste, pruebe el otro modelo.
El agente no se puede adjuntar con un error de esquema de herramienta. El modelo Gemini acepta un subconjunto de esquema estrecho. Aplana el esquema de entrada de la herramienta, o envuelve la herramienta en un flujo de trabajo de API con un esquema de entrada plano y utiliza el flujo de trabajo como herramienta en su lugar.
La llamada se conecta, nadie habla y se corta después de unos 25 segundos. Una llamada que nunca adjunta un agente finaliza después de unos 25 segundos de tiempo muerto. Vincula el contexto de llamada al callContext desde el desencadenador de llamada entrante o el nodo Crear llamada saliente .
Páginas relacionadas
- Llamada entrante
- Crear llamada saliente
- Finalizar llamada
- Implementación : conectar un número y vincularlo a un flujo.