Análisis de Frameworks Principales de Agentes de IA
1.1 Agente = Razonamiento + Acción
Un agente de inteligencia artificial es un sistema de software que utiliza IA para alcanzar objetivos y completar tareas en nombre del usuario. Estas entidades demuestran capacidades de razonamiento, planificación y memoria, junto con cierto grado de autonomía que les permite aprender, adaptarse y tomar decisiones de forma independiente.
En términos funcionales, un agente se compone principalmente de dos componentes esenciales:
- Razonamiento: Depende de modelos de lenguaje grandes (LLM), con el pensamiento en cadena (CoT) como concepto central
- Ejecución: Se refiere a la ejecución de herramientas externas, dependiendo específicamente del entorno de ejecución del sistema host y del escenario de aplicación
1.2 Comparación de Frameworks de Agentes de IA
Los frameworks principales actuales incluyen:
- LangChain - Uno de los frameworks más maduros y populares, ofrece una cadena de herramientas completa e integraciones, ideal para construir aplicaicones de IA complejas rápidamente
- LlamaIndex - Se especializa en indexación y recuperación de datos, particularmente eficaz en escenarios de RAG (Generación Aumentada por Recuperación)
- AutoGPT/AutoGen - Framework de colaboración multiagente desarrollado por Microsoft, soporta conversación y cooperación entre múltiples agentes
- CrewAI - Framework de colaboración centrrado en agentes con roles definidos, cada agente tiene un rol y objetivo claros
- LangGraph - Framework de gráficos de estado desarrollado por el equipo de LangChain, proporciona control de flujo más granular
- Semantic Kernel - Framework ligero de Microsoft, se integra bien con servicios de Azure y soporta múltiples lenguajes de programación
Componentes Esenciales de un Framework de Agentes de IA
2.1 Tres Componentes Principales
Desde una perspectiva de ingeniería, la implementación de un agente consta principalmente de tres partes:
- Llamada LLM: Esta parte pertenece al ámbito de la gestión de APIs, principalmente trabajando en la compatibilidad con los detalles de implementación de APIs de varios proveedores de LLM
- Uso de Herramientas: Se centra en cómo los LLM utilizan herramientas externas, desde Function Call inicial hasta MCP y componentes de Skill actuales
- Ingeniería de Contexto: La ingeniería de contexto en sentido estricto se refiere específicamente a la implementación de ingeniería de prompts
2.2 Bucle del Agente
El núcleo de la ingeniería de contexto es el motor de ejecución conocido como Bucle del Agente.
El Bucle del Agente es esencialmente un bucle while donde cada iteración consiste en un razonamiento LLM junto con llamadas a herramientas y procesamiento de contexto. Todo el comportamiento del agente ocurre dentro de este bucle while hasta que se completa la tarea.
El flujo de trabajo típico se puede representar como:
Contexto inicial (prompt del sistema + solicitud del usuario)
↓
[inicio del bucle del agente]
↓
agente lee contexto → piensa → decide acción
↓
ejecuta herramienta/acción → obtiene resultado
↓
resultado se añade al contexto
↓
[continúa el bucle o termina]
Desglosado en cada iteración (turno) del bucle while:
Inicializar contexto (solicitud del usuario)
↓
┌─────────────────────────────────┐
│ Bucle del Agente │
│ │
│ ┌─────────────────────┐ │
│ │ Turno 1 │ │
│ │ Llamada LLM razonamiento #1 │
│ │ → Analizar respuesta LLM │
│ │ → Ejecutar herramienta 1 │
│ │ → Retornar resultado, │
│ │ actualizar contexto │
│ └─────────────────────┘ │
│ ↓ │
│ ┌─────────────────────┐ │
│ │ Turno 2 │ │
│ │ Llamada LLM razonamiento #2 │
│ │ → Ejecutar herramienta 2 │
│ │ → Retornar resultado, │
│ │ actualizar contexto │
│ └─────────────────────┘ │
│ .... │
└─────────────────────────────────┘
↓
Completado (cuando un turno ya no ejecuta herramientas)
El Bucle del Agente completa tareas leyendo, utilizando y actualizando el contexto en cada iteración; la ingeniería de contexto diseña cómo organizar, gestionar y optimizar esta información contextual para mejorar la calidad y eficiencia de las decisiones del agente.