Etiqueta como si escribieras descripciones de herramientas
Como las etiquetas de los bordes se convierten literalmente en descripciones de herramientas para el LLM, escríbelas como condiciones desde la perspectiva de quien llama:- ✅
caller confirms they are an existing customer - ✅
caller wants to cancel or reschedule - ❌
yes,path A,continue
Mantén los agentes pequeños y con un solo propósito
Un agente = una tarea (calificar, responder preguntas de facturación, reservar). Las instrucciones breves y enfocadas por agente superan a un mega-agente con un muro de texto. Los traspasos son baratos: úsalos.Valida los datos con nodos collect, no con prompts
Los correos electrónicos y números de teléfono transcritos a partir de voz son ruidosos. Los nodos collect confirman y validan (“¿Eso fue m-e-y-e-r?”) y solo continúan si tienen éxito. Nombra siempre la variable con claridad (callback_phone, no var1): esos nombres aparecen en los webhooks y en los detalles de la llamada.
Diseña las rutas de fallo
- Dale a los nodos
collectun bordefailedque lleve a algo sensato (una transferencia a una persona o una despedida cortés). - Configura el
fallbackde la transferencia cálida de forma deliberada:continuepara traspasos opcionales,cold_transfercuando quien llama debe comunicarse con alguien. - Termina cada rama con un nodo
endcon una despedida adecuada.
Prueba con llamadas web y observa los eventos
Ejecuta llamadas de prueba desde el navegador después de cada cambio. En la vista de detalle de la llamada, el registro de eventos muestra las transiciones de nodos, las llamadas a herramientas, los resultados de recopilación y los resultados de las transferencias: léelo como un stack trace cuando el flow se comporte mal.Usa herramientas asíncronas para todo lo que tarde más de ~2 segundos
Las llamadas a herramientas síncronas congelan la conversación. Marca los webhooks lentos comoasync y configura frases de relleno; el asistente se mantiene receptivo mientras se ejecuta la solicitud. Consulta el nodo de herramienta.