Clase 2 — Introducción a los Sistemas Multiagente — Conceptos Fundamentales
Resumen Ejecutivo
La sesión introdujo los conceptos fundamentales de la Programación Orientada a Agentes (AOP), cubriendo la anatomía de un agente (prompt, tools, knowledge base, memoria), los protocolos de comunicación (MCP, A2A), y las arquitecturas de sistemas multiagente (reactivas, deliberativas, híbridas). Se enfatizó repetidamente la importancia crítica del prompt como elemento determinante del rendimiento del agente, y se presentaron los patrones de orquestación vs. comunicación directa entre agentes.
Conceptos Clave
- Agente: Componente software autónomo que recibe una entrada, la procesa mediante un LLM y tools, y genera una salida. Se caracteriza por autonomía, proactividad y capacidad comunicativa.
- Prompt (Instrucciones): Define el qué debe hacer el agente. Es el elemento más crítico de la configuración. ⚠️ EXAMEN
- Know How: Define el cómo debe comportarse el agente ante las instrucciones. Actúa como guardrail. ⚠️ EXAMEN
- Knowledge Base: Capa de conocimiento pre-procesado que permite al agente acceder a información de forma eficiente en tiempo de ejecución. ⚠️ EXAMEN
- Tools: Herramientas/conectores que se habilitan al agente para realizar acciones. El agente solo puede usar las que se le permitan explícitamente.
- MCP (Model Context Protocol): Protocolo (basado en HTTP/JSON-RPC) que facilita la conexión entre agentes y sus tools de forma estandarizada. ⚠️ EXAMEN
- A2A (Agent to Agent): Protocolo que permite la comunicación directa entre agentes. ⚠️ EXAMEN
- Ventana de contexto: Cantidad de información que el agente puede manejar en una interacción.
- Memoria: Mecanismo de persistencia del agente — puede ser a corto, medio o largo plazo.
- Embeddings: Representaciones vectoriales que permiten búsqueda semántica en documentos grandes.
- Similitud coseno: Algoritmo usado sobre embeddings para encontrar los fragmentos más relevantes ante una consulta.
- Grafo de conocimiento: Estructura que modela relaciones entre datos (ej. modelo de una BD) para que el agente acceda eficientemente.
- AOP (Agent-Oriented Programming): Paradigma de software que modela aplicaciones como colecciones de agentes autónomos y comunicativos.
- FIPA: Asociación internacional (1996) que define estándares para el desarrollo de agentes.
- FIPA-ACL: Lenguaje de comunicación entre agentes más utilizado actualmente, basado en la teoría del acto de habla.
Desarrollo del Temario
1. Anatomía de un Agente: Prompt, Tools y Knowledge Base
Un agente básico tiene una entrada (prompt del usuario), un LLM que procesa, y genera una salida. Pero en una arquitectura agéntica real, el agente dispone de:
- Instrucciones (Prompt): El "qué" — define la tarea.
- Know How: El "cómo" — establece reglas de comportamiento y guardrails.
- Tools: Herramientas externas habilitadas al agente.
- Knowledge Base: Información pre-procesada para consulta eficiente.
- Memoria: Persistencia de contexto entre interacciones.
El prompt es el elemento más determinante del rendimiento de un agente. ⚠️ EXAMEN
Ejemplo: Un equipo reportó que sus agentes tardaban más de 40 minutos en ejecutarse. Se sospechaba un problema de plataforma, pero al revisar el prompt, descubrieron que contenía solo la palabra "Translate". El agente interpretó que debía traducir algo, intentó conectarse a Google Translate, pero la plataforma bloqueaba el acceso a Internet. El agente entró en un bucle infinito reintentando la conexión. Al corregir el prompt con instrucciones claras, el agente pasó a tardar 3 minutos.
Ejemplo (Knowledge Base): Un agente debe resolver disputas de tarjeta de crédito consultando un documento de Visa de 1000 páginas. Procesar 1000 páginas en tiempo de ejecución es inviable. La solución: usar una base de datos vectorial con embeddings para que, mediante similitud coseno, el agente localice solo el párrafo relevante para la disputa concreta.
Ejemplo (Knowledge Base + Grafo de conocimiento): Si el agente necesita consultar una base de datos de clientes pero no conoce las queries, se modela un grafo de conocimiento (ej. con Amazon Neptune) que contiene el modelo de datos. El agente accede al grafo vía MCP, obtiene la estructura, y construye dinámicamente la query necesaria.
2. Diferencia entre Instrucciones y Know How
| Aspecto | Instrucciones (Prompt) | Know How |
|---|---|---|
| Define | El qué | El cómo |
| Ejemplo | "Realiza una validación cruzada entre la BD de clientes y movimientos" | "Si el cliente está en estado activo, úsalo; si no está activo, nunca lo utilices" |
| Función | Tarea a ejecutar | Reglas y guardrails de comportamiento |
⚠️ EXAMEN
3. Protocolos: MCP y A2A
- MCP (Model Context Protocol): Permite conectar agentes con tools. Son peticiones HTTP o JSON-RPC. Estandariza cómo el agente descubre y usa herramientas. ⚠️ EXAMEN
- A2A (Agent to Agent): Protocolo para comunicación directa entre agentes, sin necesidad de pasar por un orquestador.
4. Memoria del Agente
Existen tres niveles de memoria: ⚠️ EXAMEN - Corto plazo: Conversaciones recientes, contexto inmediato. - Medio plazo: Resúmenes de interacciones pasadas. - Largo plazo: Información persistente relevante para el agente.
Se puede configurar la ventana de contexto (cuántas conversaciones guardar). Una técnica común: al llegar al límite de conversaciones, se pide al LLM que genere un resumen de las anteriores para comprimir la memoria.
5. Orquestación vs. Comunicación Directa entre Agentes
⚠️ EXAMEN
| Enfoque | Ventajas | Desventajas |
|---|---|---|
| Orquestador | Gestión de estado, manejo de errores (relanzar agentes fallidos), mayor fiabilidad, posibilidad de reutilizar resultados | Más lento, más complejo |
| Comunicación directa (A2A) | Más rápido, menos componentes | Sin gestión centralizada de estado, difícil escalar cuando hay cadenas de agentes (A→B→C) |
Ejemplo: Si el Agente 1 falla en una comunicación directa con el Agente 2, no hay quién lo relance. Con un orquestador, este detecta el fallo y puede reintentar. Para sistemas de misión crítica, el orquestador es más fiable.
6. AOP — Programación Orientada a Agentes
- Paradigma de software para sistemas distribuidos.
- Modela la aplicación como una colección de agentes.
- Características principales: autonomía, proactividad, capacidad de comunicación. ⚠️ EXAMEN
- El modelo es intrínsecamente peer-to-peer: cualquier agente puede iniciar comunicación con cualquier otro.
7. Tipos de Agentes
⚠️ EXAMEN
| Tipo | Descripción |
|---|---|
| Autónomos | Operan sin intervención humana directa. Usan triggers (horarios, eventos, entradas de correo). |
| Sociales | Cooperan con humanos y otros agentes → concepto de Human in the Loop. |
| Reactivos | Perciben su entorno y responden a cambios/eventos. |
| Proactivos | No solo reaccionan, sino que exhiben comportamiento dirigido por metas y toman iniciativa. |
Ejemplo (Reactivo): En un sistema de pagos con tarjeta, cada pago genera un evento. Un agente reactivo puede activarse ante ese evento para procesarlo (ej. detección de fraude).
8. Arquitecturas de Agentes
Cuatro tipos principales: ⚠️ EXAMEN
- Basadas en lógica (simbólicas): Usan técnicas de sistemas basados en conocimiento. Fáciles de codificar y entender, pero difíciles de traducir al mundo real y potencialmente lentas.
- Reactivas: Actúan ante triggers/eventos en sistemas. Rápidas y directas.
- BDI (Beliefs-Desires-Intentions): Basadas en creencias, deseos e intenciones del agente.
- En capas (híbridas): Combinan comportamiento deliberativo y reactivo. Pueden usar estratificación vertical u horizontal entre la capa sensorial y la de acción.
9. Comunicación entre Agentes — Lenguajes ACL
- Basados en la teoría del acto de habla de Searle. ⚠️ EXAMEN
- KQML: Primer lenguaje de comunicación entre agentes con amplia aceptación.
- FIPA-ACL: Estándar actual, incorpora aspectos de KQML. Soporta lenguajes de contenido y gestión de conversación mediante protocolos de interacción.
10. Coordinación Multiagente
Razones por las que se necesita coordinación: - Los objetivos pueden causar conflictos entre agentes. - Pueden tener diferentes capacidades y conocimientos. - Las metas se alcanzan más rápido si se reparte el trabajo.
Mecanismo de contratación: el agente gestor anuncia un contrato → otros agentes presentan ofertas → se evalúan y asignan.
11. FIPA — Estándares para Agentes
- Fundada en 1996.
- Asociación internacional sin ánimo de lucro.
- Define normas para desarrollo, comunicación y arquitectura de agentes.
- Estableció la estandarización del paradigma agéntico.
12. Herramientas y Estado del Arte
- LangFlow: Herramienta visual recomendada para desarrollar agentes de forma sencilla. Permite usar diferentes modelos, tools y código Python.
- Stateless vs. Stateful: Si los agentes deben colaborar, es necesario gestionar estado para que uno pueda esperar al resultado de otro. ⚠️ EXAMEN
- APIs de agentes: Endpoints que permiten operaciones como
run(iniciar agente),get(consultar estado),explain(ver instrucciones en ejecución).
13. Riesgos en el Desarrollo de Agentes
Tres grandes bloques de peligro (según Martin Fowler): ⚠️ EXAMEN
- Acceso a datos sensibles: Los agentes pueden acceder a información confidencial.
- Comunicación con sistemas externos: Riesgo de conexiones no controladas (ej. acceso a Internet).
- Exposición a contenido no estructurado: Si el agente debe procesar grandes volúmenes de datos sin pre-procesar, el rendimiento y la calidad de respuesta se degradan.
Preguntas de Autoevaluación
- ¿Cuál es la diferencia entre las instrucciones (prompt) y el know how de un agente? Pon un ejemplo de cada uno.
- ¿Qué es una Knowledge Base y por qué es preferible usarla en lugar de que el agente procese documentos completos en tiempo de ejecución?
- Explica qué es el protocolo MCP y en qué se diferencia del protocolo A2A.
- Nombra y describe los cuatro tipos de agentes según su comportamiento (autónomos, sociales, reactivos, proactivos).
- ¿Cuáles son las cuatro arquitecturas principales de agentes? Describe brevemente cada una.
- ¿Qué ventajas tiene usar un orquestador frente a la comunicación directa entre agentes? ¿En qué casos es preferible cada enfoque?
- ¿Qué son los embeddings y cómo se relacionan con la similitud coseno para resolver consultas sobre documentos grandes?
- ¿Qué es FIPA-ACL y en qué teoría se fundamenta?
- Enumera los tres grandes riesgos asociados al desarrollo de agentes según la lectura de Martin Fowler.
- ¿Qué diferencia hay entre una arquitectura stateless y una stateful en el contexto de agentes que deben colaborar?
- ¿Qué es el concepto de Human in the Loop y con qué tipo de agente se relaciona?
- ¿Qué es un grafo de conocimiento y cómo ayuda a un agente a consultar una base de datos que no conoce?
Guía generada automáticamente a partir de transcripción con faster-whisper + Claude Opus.