Actualizar estado
Permite que tu agente actualice variables dinámicas durante la conversación mediante expresiones.
Resumen
La herramienta Actualizar estado permite a tu agente establecer una o varias variables dinámicas mientras hay una conversación en curso. Como otras herramientas del sistema, solo cambia el estado interno de la conversación; nunca llama a una API externa ni a una función del lado del cliente.
Úsala para registrar información a medida que se desarrolla una llamada; por ejemplo, para indicar que una conversación debe escalarse, almacenar un valor proporcionado por el usuario o calcular un valor derivado de otras variables dinámicas.
Para aplicar actualizaciones de estado en un punto fijo de un workflow, en lugar de cuando el LLM llama a una herramienta, usa un nodo de actualización de estado. Acepta las mismas actualizaciones de estado.
Funcionalidad
- Varias actualizaciones por llamada: Una sola llamada a la herramienta puede asignar hasta 50 variables dinámicas a la vez.
- Valores basados en expresiones: Cada valor es el resultado de una expresión, que puede combinar constantes, variables dinámicas existentes, valores que el LLM extrae de la conversación y operadores.
- Extracción del LLM solo cuando es necesaria: La herramienta solo pide al LLM que extraiga parámetros para las actualizaciones que lo requieren. Las actualizaciones creadas completamente a partir de constantes o variables dinámicas existentes no añaden parámetros a la llamada de función.
- Disponibilidad inmediata: Una vez que se ejecuta la herramienta, las variables dinámicas actualizadas están disponibles para el resto de la conversación: prompts posteriores, otras llamadas a herramientas y overrides pueden hacer referencia a ellas, igual que a cualquier otra variable dinámica.
Cómo funciona
Cada actualización de estado asigna el resultado de una expresión a una variable dinámica:
Una expresión puede ser de uno de los siguientes tipos, y las expresiones pueden anidarse entre sí para crear lógica más compleja:
Por ejemplo, la siguiente actualización de estado establece should_escalate en true si el LLM considera que el usuario está frustrado o si una variable dinámica retry_count ya es mayor que 3:
Si una actualización de estado no se puede evaluar —por ejemplo, por una división entre cero—, la llamada a la herramienta devuelve un error y no se aplica ninguna de las actualizaciones de esa llamada.
Configuración
Paso 1: Añade la herramienta
Ve a la página de configuración de tu agente. En la sección Herramientas, haz clic en Añadir herramienta y elige Actualizar estado.
Paso 2: Define las actualizaciones de estado
Para cada actualización de estado, indica:
- Nombre de variable: La variable dinámica que asignar.
- Expresión: El valor que asignar, creado a partir de los tipos de valores y operadores descritos anteriormente. Los valores pueden anidarse para crear expresiones más complejas.
- Obligatorio: Cuando está desactivado, el LLM puede omitir los valores de los que depende esta actualización. Entonces, se omite la actualización y la variable conserva su valor actual.
Puedes definir hasta 50 actualizaciones de estado para una sola herramienta.
Casos de uso
- Indicadores de escalado: Establece una variable dinámica (por ejemplo,
should_escalate) que un sistema posterior o una regla de negocio compruebe, como se muestra en la guía de integración de Genesys. - Registro de información extraída: Almacena como variable dinámica un valor proporcionado por el usuario —un número de pedido, una preferencia o un departamento elegido— para usarlo más adelante en la conversación.
- Valores derivados: Calcula un valor a partir de otras variables dinámicas, como incrementar un contador o combinar dos variables en una.
Objetivo: Permitir que el agente actualice una o varias variables dinámicas según la conversación, sin llamar a una API externa.
Condiciones de activación: El LLM debe llamar a esta herramienta cuando:
- La conversación proporcione información que deba registrarse (por ejemplo, una marca de escalado, una opción elegida o un valor proporcionado por el usuario)
- Una actualización de estado configurada dependa de un valor que el LLM deba evaluar o extraer de la conversación
Parámetros:
Los parámetros de la función dependen de cómo esté configurada la herramienta. Cada actualización de estado configurada que use un valor extraído por un LLM añade una propiedad al esquema, con el nombre de la variable dinámica de esa actualización y el tipo string, number o boolean. Las actualizaciones de estado creadas solo con constantes u otras variables dinámicas no añaden ningún parámetro.
Formato de llamada de función:
Implementación: El agente evalúa cada expresión configurada usando los parámetros extraídos y las variables dinámicas actuales de la conversación, y después asigna los resultados a las variables dinámicas correspondientes. No se realiza ninguna solicitud externa.
Preguntas frecuentes
¿Esta herramienta realiza llamadas externas?
No. Como todas las herramientas del sistema, Actualizar estado solo modifica el estado interno de la conversación. No llama a una API externa ni a una función del lado del cliente.
¿Llamar a esta herramienta siempre requiere que el LLM extraiga parámetros?
No. La herramienta solo pide al LLM que extraiga un parámetro para las actualizaciones de estado cuya expresión incluye un valor extraído por el LLM. Si todas las actualizaciones configuradas se crean a partir de constantes o variables dinámicas existentes, la llamada de función no recibe parámetros.
¿Dónde puedo usar las variables dinámicas que establece esta herramienta?
En cualquier lugar donde puedas usar una variable dinámica: prompts del sistema, primeros mensajes, parámetros y cabeceras de herramientas, y overrides. Consulta Variables dinámicas para obtener más información.
¿Puedo configurar esta herramienta mediante la API?
Actualmente puedes configurar Actualizar estado desde el panel del agente. La compatibilidad con API y SDK aún no está disponible.