Flujo de Trabajo Estructurado
Este flujo implementa un Agente de Investigación Autónomo que sigue un riguroso protocolo de cuatro fases (Planificar, Actuar, Procesar, Sintetizar) para responder a consultas complejas.
🧩 Descripción general
El flujo implementa un Agente de Investigación Autónomo que sigue un protocolo de cuatro fases (Planificar, Actuar, Procesar, Sintetizar) para responder a consultas complejas. El flujo recibe la pregunta del usuario, elabora un plan de investigación, realiza búsquedas en la web, procesa los resultados y sintetiza un informe final. Esta arquitectura combina un modelo de lenguaje (OpenAI), varias herramientas especializadas y una gestión de estado de conversación, ofreciendo una solución de IA escalable y controlada.
⚙️ Funcionalidades principales
- Recepción de la consulta: captura la pregunta del usuario y la pasa al agente.
- Planificación estratégica: el agente genera un plan de investigación detallado.
- Búsqueda web: se ejecutan consultas específicas en la web para obtener información actualizada.
- Análisis de datos: el agente procesa y resume los resultados de la búsqueda.
- Síntesis y respuesta: el agente integra toda la información procesada y devuelve un informe final estructurado.
🔄 Pasos del flujo de trabajo
| Nombre del componente | Rol en el flujo | Entradas clave | Salidas clave |
|---|---|---|---|
| Entrada de Chat | Captura la pregunta del usuario. | Mensaje de entrada (texto). | Mensaje estructurado con la consulta. |
| Asistente de Investigación | Orquesta la ejecución del protocolo. | input_value (mensaje), llm (modelo OpenAI), tools (lista de herramientas). | Respuesta final (mensaje). |
| Planner & Optimizer Tool | Genera y optimiza el plan de investigación. | Texto de la pregunta y estado actual. | Herramienta que devuelve el plan en formato Markdown. |
| Think Tool | Analiza y sintetiza los resultados de las búsquedas. | Texto bruto obtenido de la web. | Herramienta que devuelve el análisis estructurado. |
| Web Search | Realiza búsquedas en la web mediante SearXNG. | Consulta de búsqueda específica. | Herramienta que devuelve los datos de búsqueda. |
| OpenAI | Proporciona el modelo de lenguaje responsable de la generación de texto y la construcción del agente. | Texto de entrada, parámetros del modelo. | Mensaje con el texto generado y el modelo construido. |
| Salida de Chat | Muestra la respuesta al usuario en la interfaz. | Mensaje de respuesta (texto). | Mensaje mostrado en el chat. |
Nota: La conexión entre los componentes sigue el orden secuencial: Entrada de Chat → Asistente de Investigación → Salida de Chat.
Los enlaces internos del agente conectan los modelos y las herramientas:
- OpenAI → Asistente de Investigación (modelo de lenguaje).
- Planner & Optimizer Tool, Think Tool, Web Search → Asistente de Investigación (herramientas disponibles).
🧠 Notas
- El agente utiliza un prompt de sistema que define explícitamente el protocolo P.A.P.S. (Planificar, Actuar, Procesar, Sintetizar).
- La lista de herramientas es extensible; el agente la puede actualizar dinámicamente si se añaden nuevas herramientas.
- El flujo depende de SearXNG para la búsqueda web; cualquier interrupción del servicio puede afectar la obtención de datos.
- El modelo OpenAI se configura con un system_message que impide que el agente entregue una respuesta antes de completar todas las fases del protocolo.
- Los resultados intermedios y el estado del agente se mantienen en memoria a través de la funcionalidad de streaming y checkpointer habilitada, lo que permite la reanudación de la conversación en caso de fallos.
- El flujo está diseñado para no exponer identificadores internos; por ello, la documentación evita la referencia a IDs y solo muestra nombres legibles.
- El agente opera en modo sincronizado: cada acción (planificación, búsqueda, análisis, síntesis) se ejecuta en orden y espera la salida de la anterior antes de continuar.
- Limitaciones: no hay acceso a bases de datos externas más allá de la búsqueda web, y el análisis se limita a la información textual disponible en los resultados de búsqueda.
- Dependencias: requiere que el servicio SearXNG esté disponible y que las credenciales de OpenAI sean válidas.