Lógica de Flujo
En NappAI, la lógica de flujo combina estructuras clásicas de automatización con razonamiento impulsado por IA a través de agentes inteligentes y cadenas de pensamiento (chains).
Cada flujo no solo ejecuta pasos predefinidos, sino que piensa, decide y adapta su comportamiento según el contexto y los datos que recibe.
Razonamiento Condicional (Equivalente a “IF”)
En NappAI, la lógica condicional (“si pasa esto, haz aquello”) se puede abordar de dos maneras principales: una basada en reglas fijas y otra impulsada por la inteligencia artificial.
1. Condicional Basado en Reglas Fijas (Componente Switch)
Para una lógica de reglas claras y predefinidas, se utiliza el componente Switch. Este es el equivalente directo a una declaración “IF” tradicional.
- Funcionamiento: El componente
Switchevalúa un dato de entrada y, basándose en condiciones que tú defines (ej:si el valor es > 10osi el texto contiene "urgente"), dirige el flujo por una de varias salidas que has configurado.
2. Enrutamiento Basado en Intención (Agente + Switch)
Para una lógica más avanzada y flexible, puedes combinar la inteligencia de un Agente con la estructura de un Switch. En este patrón, el Agente no es el que enruta, sino el que decide a dónde enrutar.
- Funcionamiento:
- Un Agente se configura para actuar como un “clasificador”. Su única tarea es analizar la entrada (ej: el correo de un cliente) y devolver una única palabra o categoría (ej: “Soporte”, “Ventas”, “Urgente”).
- La salida de texto de este Agente se conecta a la entrada de un componente
Switch. - El
Switchluego utiliza esa palabra para dirigir el flujo a la rama correcta (ej: la rama de “Soporte Urgente”), ejecutando la lógica de forma simple y ordenada.
Este enfoque combina el poder de la IA para entender el significado con la estructura robusta del Switch para controlar el flujo.
Iteraciones Inteligentes (Equivalente a “Loop”)
El concepto de bucle (Loop) en NappAI funciona de manera similar a la automatización tradicional, permitiéndote procesar cada elemento de una lista. Un componente de bucle recibirá una lista como entrada y ejecutará una serie de acciones para cada elemento de esa lista.
- Salida
Done: Una característica clave es que el componente de bucle debe tener una salidaDone(o similar). Esta salida se activa una vez que se han procesado todos los elementos de la lista, permitiendo que el resto del flujo continúe de manera ordenada después de que el bucle haya finalizado su trabajo.
Fusión y Síntesis de Datos (Equivalente a “Merge”)
En NappAI, la combinación de datos de diferentes ramas de un flujo puede realizarse de dos maneras principales: a través de componentes de fusión manual o mediante la síntesis inteligente de un Agente.
Fusión Manual con Componentes
Para un control total y explícito sobre cómo se combinan los datos, puedes usar una variedad de componentes diseñados para esta tarea:
PromptoParse Data: Estos componentes son excelentes para fusionar texto. Puedes usar sus plantillas para tomar variables de diferentes entradas y combinarlas en una única cadena de texto con el formato exacto que necesitas.Merge Data: Este componente está diseñado específicamente para fusionar objetos de datos (JSON). Puedes configurar cómo se combinan los campos de dos o más entradas en un único objeto de salida.Combine Text: Similar aParse Data, este componente está optimizado para unir múltiples cadenas de texto, a menudo con un separador definido.
Este método es ideal cuando sabes exactamente cómo quieres que se unan los datos y no se requiere un razonamiento complejo.
Síntesis Cognitiva con Agentes
Cuando necesitas que la fusión sea más que una simple unión de datos, un Agente realiza una síntesis cognitiva. Recibe información de múltiples herramientas y, en lugar de solo juntarla, la entiende, la razona y la reformula en una única respuesta coherente y contextualizada.
- Ejemplo Práctico: Imagina que le pides a un agente: “Hazme un resumen de la empresa NappAI y busca sus noticias más recientes”.
- El Agente recibe la petición.
- Invoca la herramienta
Web Scraperpara extraer la descripción desde la página “Sobre Nosotros” de NappAI. - Paralelamente, invoca la herramienta
Google Searchcon la consulta “noticias sobre NappAI” para obtener los titulares recientes. - Síntesis: El Agente recibe ambos grupos de datos (la descripción de la empresa y la lista de noticias) y, en lugar de mostrarte los datos en crudo, genera una respuesta unificada y fluida
Sub-flujos como Herramientas
La modularidad y la reutilización de la lógica se logran convirtiendo Proyectos completos en herramientas. En NappAI, esto se consigue mediante el componente Sub Project Flow.
- Funcionamiento: Al añadir el componente
Sub Project Flowa tu lienzo, podrás seleccionar un Proyecto que ya hayas guardado. Este componente convierte ese Proyecto entero en una única Tool que puede ser utilizada por un Agente en otro flujo.
El Agente no necesita conocer los detalles internos del sub-proyecto; simplemente lo invoca como una “caja negra” para realizar una tarea compleja, haciendo tus Proyectos principales más limpios y organizados.
Flujo Adaptable (Equivalente a “Orden de Ejecución”)
En los flujos tradicionales, el orden de ejecución es rígido y está definido por las conexiones. Con un Agente de NappAI, el flujo de trabajo es adaptable. El Agente crea un plan de ejecución dinámico basado en la solicitud del usuario. Puede decidir llamar a la Herramienta A y luego a la C, o empezar con la B, dependiendo de lo que sea más lógico para resolver el problema.
Archivos (Binarios y Base64)
Trabajar con archivos es una capacidad clave en NappAI. Es fundamental entender cómo se manejan los datos de los archivos dentro de la plataforma.
El Rol de las Herramientas
Un Agente no maneja archivos directamente, sino que utiliza Herramientas (Tools) para interactuar con ellos. Por ejemplo, puedes conectar un componente como Google Drive File Manager como una herramienta a tu agente.
- El Proceso:
- El Agente recibe una instrucción como “resume el documento ‘reporte-anual.pdf’ que está en mi Drive”.
- El Agente llama a la herramienta
Google Drive File Managercon el nombre del archivo.
El Manejo de Formatos: Base64 y Binario
Aquí es donde ocurre un paso técnico importante:
- Descarga en Base64: Cuando un componente como
Google Drive File Managerdescarga un archivo, lo convierte a formato Base64. Base64 es una forma de codificar datos binarios en texto plano, lo cual facilita su transmisión a través de APIs y dentro del flujo de NappAI. - Procesamiento en Binario: El texto en Base64 se envía al siguiente componente en el flujo (por ejemplo, un
Parse Datao unLoader). Este componente receptor está diseñado para decodificar automáticamente el Base64 y procesar el contenido como datos binarios para extraer el texto o la información relevante.
En resumen, aunque los archivos se transmiten como Base64 entre componentes, los componentes de procesamiento de archivos están construidos para entender y trabajar con el contenido binario original. Como usuario, generalmente no necesitas preocuparte por esta conversión, pero es útil saberlo para depurar problemas o construir flujos personalizados.