Ir al contenido principal

Asistentes de flujo de trabajo

Los asistentes de flujo de trabajo son una forma avanzada de asistentes de IA en AI-School. En lugar de una conversación libre sin estructura fija, el usuario recorre una serie de pasos definidos —controlados por la IA. Esto permite automatizar procesos complejos y de múltiples pasos, como una lección completa de principio a fin.

¿Qué es un asistente de flujo de trabajo?

Un asistente de flujo de trabajo consta de un flujo de trabajo visual formado por nodos (nodes) conectados por flechas (edges). Cada nodo realiza una tarea específica, como:

  • Inicio / Fin — el punto de inicio y fin del flujo
  • Evaluar — analiza el contexto y almacena información estructurada en la memoria
  • Condición — evalúa una expresión y dirige el flujo en la dirección correcta
  • LLM — invoca un modelo de lenguaje para una tarea específica (opcional: espera entrada del usuario)
  • Aprobación — plantea una pregunta de sí/no y dirige el flujo según la respuesta
  • Subagente - ejecuta la misma tarea en paralelo para múltiples elementos, por ejemplo un alumno por ronda de corrección

El flujo de trabajo guarda su estado automáticamente tras cada paso. Cuando el usuario aporta entrada, el flujo de trabajo continúa exactamente donde se quedó.

Crear asistente de flujo de trabajo

Ve a AsistentesNuevo asistente y elige el tipo Asistente de flujo de trabajo. Puedes elegir entre un lienzo en blanco o uno de los presets preconfigurados.

Ajustes generales

Al crear o editar un flujo de trabajo, configura los ajustes generales a través del panel de configuración. Estos ajustes se aplican a todo el flujo de trabajo:

  • Modelo: El modelo de IA que se utiliza en todos los pasos. Elige un modelo para todo el flujo.
  • Herramientas: Qué herramientas están disponibles en el flujo (p. ej., Registro, búsqueda SLO, Búsqueda en Internet). Las herramientas habilitadas están disponibles para todos los pasos LLM, a menos que las desactives por paso.
  • Servidores MCP: Conexiones externas disponibles en el flujo.
  • Documentos: Archivos a consultar por los pasos LLM.
  • Imágenes: Imágenes que pueden usar los pasos LLM.

También puedes configurar si el usuario puede añadir archivos o imágenes durante el chat.

Archivos en formularios de flujo de trabajo

Un flujo de trabajo puede pedir al usuario que proporcione archivos, por ejemplo un examen, un modelo de corrección o trabajos de alumnos entregados. En una pregunta de archivo, el usuario puede:

  • subir un nuevo archivo
  • elegir un archivo existente desde Gestión de Archivos
  • definir, por pregunta, qué archivo pertenece a qué parte

Los archivos nuevos primero se procesan. El flujo no puede avanzar de forma fiable hasta que el procesamiento termine. Si una pregunta obligatoria de archivo está en curso o falla, el usuario debe esperar o volver a elegir/subir el archivo.

Los archivos añadidos a través del formulario de flujo de trabajo están disponibles como archivos de asistente para ese chat. No se seleccionan automáticamente como archivos de chat normales.

Ajustes por paso

En cada paso LLM puedes desactivar para esa opción específica las herramientas, archivos e imágenes que estén habilitados globalmente. Esto te da control preciso sobre qué herramientas están disponibles en cada paso. No puedes añadir nada en un paso que no esté ya habilitado globalmente.

El editor de flujo muestra un diagrama de flujo visual con nodos y conexiones

Usar preset

Para la mayoría de usuarios, un preset es el mejor punto de partida. Después puedes adaptar el preset a tus necesidades.

Ejemplo: el Asistente de Lección

El Asistente de Lección es un preset listo para usar, especialmente diseñado para la educación. Guía al usuario de principio a fin a través de una lección completa: desde determinar el tema y nivel, pasando por objetivos de aprendizaje y explicación, hasta ejercicios y un resumen final.

Visión general del flujo de trabajo

El Asistente de Lección consta de los siguientes pasos (nodos), en orden:

Paso a paso explicado

1. Inicio

El flujo comienza cuando el usuario abre el chat y envía su primer mensaje.


2. Triage: Tema de la Lección (nodo de evaluación)

¿Qué hace?
La IA analiza el mensaje del usuario y trata de determinar:

  • Tema — ¿sobre qué trata la lección? (por ejemplo, "palanca")
  • Nivel — ¿básico, intermedio o avanzado?
  • ¿Suficiente info? — ¿hay suficiente contexto para establecer objetivos de aprendizaje de inmediato?

Este resultado se guarda en la memoria del flujo de trabajo.


3. ¿Suficiente info? (nodo de condición)

Si hay suficiente información (suficiente_info = true), el flujo pasa directamente a Establecer objetivos de aprendizaje.

Si falta información, el flujo va a Recopilar información.


4. Recopilar información (nodo LLM, espera entrada)

¿Qué hace?
La IA formula preguntas dirigidas al usuario para identificar el tema y el nivel deseado. Una vez que el usuario responde, el flujo regresa a Triage: Tema de la Lección para reevaluar.

Ejemplo de conversación:

🤖 "¡Qué bien verte! Para poder ayudarte, unas cuantas preguntas rápidas: 1. ¿Sobre qué tema quieres una lección? 2. ¿En qué nivel estás? (básico / intermedio / avanzado)"

👤 "hnd 3 física, palanca"

Después de la respuesta, la triage se evalúa de nuevo y se determina: suficiente_info = true.


5. Establecer objetivos de aprendizaje (nodo LLM)

¿Qué hace?
La IA genera una lista numerada de 4 a 5 objetivos de aprendizaje concretos y medibles para el tema y nivel dados.

Ejemplo de salida:

Objetivos de aprendizaje para Palanca – 3º de ESO (intermedio):

  1. Puedes formular la palanca y explicar la fórmula F₁ × r₁ = F₂ × r₂.
  2. Puedes realizar cálculos para determinar fuerzas o longitudes de brazo desconocidas.
  3. Puedes aplicar la palanca a ejemplos prácticos (tijeras, carretilla, balancín).
  4. Puedes explicar la diferencia entre palancas de primer, segundo y tercer tipo.

6. Aprobación de los objetivos (nodo de aprobación)

¿Qué hace?
La IA pregunta al usuario si los objetivos de aprendizaje propuestos están bien y si la lección puede empezar.

  • → continuar a la lección
  • No → volver a Establecer objetivos de aprendizaje para reformularlos

El usuario puede ver los objetivos mediante el menú desplegable en el chat.


7. Triage: Objetivos de aprendizaje (nodo de evaluación)

¿Qué hace?
Después de cada ciclo de lección, la IA verifica si el usuario domina todos los objetivos de aprendizaje. Es una evaluación estricta: el usuario debe comprender demostrar cada objetivo.


8. ¿Todos los objetivos aprendidos? (nodo de condición)

  • → continuar a Agente de ejercicios
  • No → continuar a Agente de lección para el siguiente objetivo

9. Agente de lección (nodo LLM, espera entrada)

¿Qué hace?
La IA imparte la lección sobre el tema, paso a paso, guiándose por los objetivos de aprendizaje establecidos. Después de cada parte, la IA plantea una pregunta de comprensión. Solo cuando el usuario demuestra comprender el objetivo, la lección continúa.

Después de la entrada del usuario, el flujo regresa a Triage: Objetivos de aprendizaje para evaluar el progreso.

Ejemplo:

🤖 "Comenzamos con el objetivo de aprendizaje 1: la palanca. Una palanca es una barra rígida que gira alrededor de un punto de apoyo. La fuerza que necesitas depende de la distancia al punto de apoyo. La fórmula es:

F₁ × r₁ = F₂ × r₂

¿Puedes explicar qué significan r₁ y r₂ en esta fórmula?"


10. Agente de ejercicios (nodo LLM, espera entrada)

¿Qué hace?
La IA propone al menos una pregunta de práctica por cada objetivo de aprendizaje. El usuario responde, y el flujo continúa hacia Agente de retroalimentación.


11. Agente de retroalimentación (nodo LLM, espera entrada)

¿Qué hace?
La IA ofrece retroalimentación detallada y personal sobre los ejercicios realizados. Por objetivo de aprendizaje se comenta qué salió bien y qué puede mejorar. El tono es directo pero alentador.


12. ¿Concluir? (nodo de aprobación)

La IA pregunta si el usuario quiere concluir o seguir practicando.

  • → ir a Resumen
  • No → volver a Agente de ejercicios para una nueva ronda

13. Resumen (nodo LLM)

¿Qué hace?
La IA ofrece un resumen claro de todo el contenido cubierto y, a continuación, una retroalimentación personal y motivadora sobre el desempeño.


14. Fin

El flujo de trabajo se cierra con un mensaje de cierre alentador.

"¡Buen trabajo durante esta lección y hasta la próxima!"


Conversación de ejemplo completa

A continuación, una versión corta de la conversación de ejemplo con el Asistente de Lección sobre la palanca, 3º de ESO:

QuiénMensaje
👤 Usuariohola
🤖 Asistente de Lección¡Qué bueno verte! ¿Sobre qué tema quieres una lección, y en qué nivel?
👤 Usuario3º de ESO física, palanca
🤖 Asistente de Lección¡Perfecto! He establecido 4 objetivos de aprendizaje. ¿Quieres empezar la lección con estos objetivos?
👤 Usuario
🤖 Asistente de LecciónComenzaremos con el objetivo de aprendizaje 1: la palanca. (explicación + pregunta de comprensión)
👤 Usuario(respuesta a la pregunta)
🤖 Asistente de Lección(continuación de la lección para los objetivos 2, 3, 4 ...)
🤖 Asistente de Lección¡Has cubierto todos los objetivos de aprendizaje! Es hora de los ejercicios...
👤 Usuario(respuestas a las preguntas de práctica)
🤖 Asistente de Lección(retroalimentación personal) ¿Quieres concluir o practicar más?
👤 Usuarioconcluir
🤖 Asistente de Lección(resumen + cierre motivador)

Ver progreso

Cuando mantienes una conversación con un asistente de flujo de trabajo, puedes ver el progreso mediante el botón de Workflow a la derecha de la entrada del chat. Hacer clic en este botón abre un panel con:

  • Todos los pasos del flujo de trabajo (los nodos de condición y de notas no se muestran)
  • El estado de cada paso:
    • Esperando: Aún no alcanzado
    • 🔄 Activo: En curso
    • Listo: Completado con éxito
    • ⏸️ Esperando entrada: Esperando una respuesta del usuario
    • ⏭️ Omitido: No ejecutado (p. ej., por una condición)
    • Error: Ocurrió un error

Crear un nodo de triage

Un nodo de evaluación (nodo de triage) extrae información de la conversación y la guarda en la memoria del flujo de trabajo. Los nodos de condición pueden leer esos valores para dirigir el flujo en la dirección correcta.

Configurar

  1. Añade un nodo Evaluar al flujo de trabajo.
  2. Escribe un prompt de sistema que describa qué debe analizar la IA y qué conclusiones debe extraer.
  3. Define el esquema de salida con campos:
    • Nombre del campo: La clave para consultar el valor más tarde (p. ej., suficiente_info, nivel, ruta).
    • Tipo: string (texto), number (número), boolean (sí/no), o enum (elige entre valores fijos). Para enum especifica los valores permitidos separados por comas.
  4. Establece el máximo de iteraciones para evitar que la node se ejecute indefinidamente.

Valores de memoria

Los valores almacenados se acceden vía el prefijo state. en nodos de condición, por ejemplo state.suficiente_info o state.nivel.

Configurar un nodo de condición

Un nodo de condición evalúa expresiones basadas en la memoria del flujo y dirige el flujo hacia la siguiente tarea adecuada.

Ramas

Un nodo de condición tiene una o más ramas:

  • Si (if): la primera condición que se evalúa.
  • Sino si (else-if): condiciones opcionales adicionales.
  • Sino (else): la ruta por defecto si ninguna condición es correcta.

Escribir expresiones

Las expresiones se escriben en CEL (Common Expression Language):

Comportamiento deseadoExpresión
Campo es truestate.suficiente_info == true
Campo tiene un valor fijostate.nivel == "avanzado"
Comparación numéricastate.score > 7
Múltiples condicionesstate.nivel == "basico" && state.score < 5

Establecer conexiones

Dibuja desde el nodo de condición conexiones separadas para cada rama hacia el nodo siguiente correcto. El editor muestra una salida propia por rama en el nodo.

Usar un nodo de subagente

Un nodo de subagente está diseñado para tareas que deben ejecutarse varias veces de la misma manera. El nodo recibe una lista de ítems desde la memoria del flujo y para cada ítem inicia una ejecución independiente con un contexto aislado.

Aplicaciones prácticas:

  • corregir un examen por alumno
  • hacer un análisis por documento
  • hacer un resumen por formulario completado
  • registrar un informe por cada parte

Configurar

  1. Asegúrate de que un nodo de evaluación anterior almacene en la memoria una lista de ítems, por ejemplo alumnos_json.
  2. Añade un nodo Subagente.
  3. Configura la fuente de los ítems.
  4. Opciónally define un campo de etiqueta para que el progreso sea reconocible.
  5. Configura el máximo de ejecuciones paralelas.
  6. Indica bajo qué clave de memoria deben guardarse los resultados.

El contexto del subagente contiene siempre solo el ítem que se procesa en ese momento. Por eso, haz referencia explícita al ítem actual en el prompt y evita que la IA procese varios ítems al mismo tiempo.

Registro en flujos de trabajo

La Herramienta de Registro es especialmente útil en flujos de trabajo. Permite que la IA guarde entreresultados o resultados finales como documentos editables en el panel lateral.

Configurar

  1. Activa la Herramienta de Registro desde los ajustes generales del flujo de trabajo.
  2. En el prompt del sistema de la LLM deseada, añade una instrucción para registrar contenidos específicos. Activa la herramienta para ese paso (o déjala activada globalmente).

Ejemplo

En un paso de objetivos de aprendizaje puedes escribir en el prompt del sistema:

"Redacta los objetivos de aprendizaje para el tema y nivel proporcionados. Luego guarda inmediatamente los objetivos de aprendizaje con la Herramienta de Registro, con el título 'Objetivos de aprendizaje'."

El usuario puede ver los documentos registrados a través del botón de Registro (📄) en la barra de herramientas del chat.

Recuperar conversación

Si estás en mitad de una lección y quieres volver a un punto anterior, puedes hacerlo con el botón de recuperación (el ícono de historial) junto a un mensaje anterior. Esto elimina todos los mensajes posteriores a ese punto y reanuda el flujo de trabajo desde ese momento exacto.

Atención

La recuperación es definitiva: los mensajes eliminados ya no están disponibles.

Editar flujo de trabajo

Como administrador, puedes abrir y modificar un flujo de trabajo existente en el editor de flujo de trabajo. Haz clic en un nodo para cambiar su configuración, añade nuevos nodos desde el menú de clic derecho o arrastra conexiones a otros nodos.

Para un flujo de trabajo completamente nuevo, puedes empezar con un lienzo en blanco o con otro preset.