Agentes IA con Flowise

0 de 22 lecciones completas (0%)

3. Flujos de Agentes

3.10- Human In The Loop (Intervención Humana)

¡Hola! En esta lección vamos a explorar una funcionalidad llamada «Human in the Loop» (Humano en el Bucle), que nos da un control mucho más preciso sobre cómo avanzan nuestros flujos de trabajo, permitiéndonos supervisar y aprobar pasos críticos.

¿Qué es «Human in the Loop» (HITL)?

En pocas palabras, es una forma de pausar nuestro flujo de trabajo y pedirle a un humano que dé su visto bueno (o lo rechace) antes de continuar. Es fundamental para:

  • Tener control sobre acciones costosas (en dinero o recursos).
  • Añadir una capa de seguridad antes de ejecutar tareas delicadas.
  • Supervisar las decisiones de un agente.

En Flowise, podemos implementar la intervención humana de dos formas principales, y veremos un ejemplo para cada una.


Método 1: Confirmación en el Uso de una Herramienta

Este método nos permite controlar si un agente puede usar o no una herramienta específica.

Cuándo usarlo: Ideal para cuando quieres controlar el acceso a herramientas concretas, como una búsqueda en internet, el acceso a una base de datos o una herramienta personalizada que realiza una acción importante.

Proyecto de Ejemplo: El Escritor de Blogs Supervisado

  1. La Configuración:Imagina que tenemos un agente «Escritor de Blogs». Dentro de su configuración, le hemos añadido dos herramientas: Current Date & Time y Google Custom Search.
  2. Activando la Intervención:Al lado de la herramienta Google Custom Search, verás un interruptor o una opción llamada «Require Human Input» (Requerir Intervención Humana). Lo activamos. Esto significa que, cada vez que el agente intente usar la búsqueda de Google, el flujo se detendrá y nos pedirá permiso.
  3. La Puesta en Marcha:
    • Iniciamos el chat y le pedimos: «Escribe un artículo sobre el último modelo de Anthropic».
    • El agente, para cumplir la tarea, intentará usar la búsqueda de Google. En ese momento, la ejecución se pausa y aparece una ventana de confirmación.
    • Esta ventana nos dice: «Intentando usar la herramienta Google Custom Search con la siguiente entrada: [último modelo de Anthropic]».
    • Tenemos dos botones: Proceed (Proceder) o Reject (Rechazar).
    Si hacemos clic en «Proceed», el agente usará la herramienta y generará el artículo. Si hacemos clic en «Reject», la herramienta no se usará.

Método 2: El Nodo «Human in the Loop»

Este método utiliza un nodo específico que podemos colocar en cualquier punto de nuestro flujo para crear un punto de control.

Cuándo usarlo: Perfecto para puntos de decisión críticos en el flujo, después de que un agente ha tomado una decisión y antes de ejecutar el siguiente gran paso.

Proyecto de Ejemplo: Sistema de Recepción de Hotel Inteligente

Este proyecto es más complejo y usa un nuevo tipo de agente.

  1. Introducción al Agente Condicional:Este flujo empieza con un Agente Condicional (Conditional Agent). Este agente es como un «router» o un «clasificador». Analiza la petición del usuario y, basándose en escenarios que nosotros definimos, redirige el flujo por diferentes caminos.
    • Configuración: Le damos dos escenarios:
      1. El usuario está pidiendo una tarea de recepción.
      2. El usuario está pidiendo una tarea de conserjería.
  2. Añadir el Nodo de Intervención Humana:
    • Si el agente clasifica la tarea como «conserjería» (ej: pedir un taxi), en lugar de ir directo a otro agente, lo conectamos a un nodo Human Input.
    • Este nodo es nuestro punto de control.
  3. Configuración del Nodo Human Input:
    • Descripción Dinámica: Una de sus características más potentes es que su descripción (el mensaje que ve el usuario) puede ser generada dinámicamente por un LLM. Le damos un prompt como: "Resume la conversación entre el usuario y el asistente. Reitera el último mensaje del asistente y pregunta si al usuario le gustaría proceder o si tiene algún comentario." Así, el mensaje de confirmación es inteligente y contextual.
    • Salidas: El nodo tiene dos salidas: una si el usuario hace clic en «Proceed» y otra si hace clic en «Reject».
  4. La Puesta en Marcha:
    • Iniciamos el chat: «Resérvame un taxi, por favor».
    • El Agente Condicional lo clasifica como «conserjería» y el flujo llega al nodo Human Input.
    • Aparece la ventana de confirmación con el resumen: «El asistente está a punto de reservar un taxi para usted. ¿Desea proceder?».
    • Si elegimos «Proceed», el flujo continúa hacia el «Agente de Conserjería», que se encargaría de la reserva.
    • Si elegimos «Reject», el flujo va por la otra ruta, que podría ser un nodo final con un mensaje como: «De acuerdo, la petición ha sido cancelada.»

Conclusión: ¿Qué Método Usar?

Ambos métodos son increíblemente útiles, y la elección depende de lo que necesites controlar:

  • Confirmación en Herramienta: Úsalo para un micro-control a nivel de una acción específica de un agente (ej: ¿puede buscar en la web?).
  • Nodo «Human in the Loop»: Úsalo para un macro-control en puntos de decisión del flujo, después de que una tarea ya ha sido procesada y antes de empezar la siguiente (ej: ¿confirmas que quieres ejecutar este plan de acción?).

Dominar estas herramientas te dará un control total sobre la seguridad y el comportamiento de tus agentes. ¡Nos vemos en la siguiente lección!