Cuando se habla de los beneficios únicos de crear agentes de IA, se destacan principalmente dos aspectos: la capacidad de utilizar herramientas para completar tareas y la habilidad de mejorar con el tiempo. La memoria es la base para crear agentes que se auto-mejoran y que pueden ofrecer mejores experiencias a nuestros usuarios.
En esta lección, exploraremos qué es la memoria para los agentes de IA y cómo podemos gestionarla y utilizarla para mejorar nuestras aplicaciones.
Esta lección cubrirá:
• Comprender la memoria de los agentes de IA: Qué es la memoria y por qué es esencial para los agentes.
• Implementar y almacenar memoria: Métodos prácticos para añadir capacidades de memoria a tus agentes de IA, centrándonos en memoria a corto y largo plazo.
• Hacer que los agentes de IA se auto-mejoren: Cómo la memoria permite a los agentes aprender de interacciones pasadas y mejorar con el tiempo.
Al completar esta lección, sabrás cómo:
• Diferenciar entre los distintos tipos de memoria de los agentes de IA, incluyendo memoria de trabajo, memoria a corto plazo, memoria a largo plazo y formas especializadas como memoria de personalidad y memoria episódica.
• Implementar y gestionar memoria a corto y largo plazo para agentes de IA utilizando el marco Semantic Kernel, aprovechando herramientas como Mem0 y memoria de Whiteboard, e integrando con Azure AI Search.
• Comprender los principios detrás de los agentes de IA que se auto-mejoran y cómo los sistemas robustos de gestión de memoria contribuyen al aprendizaje continuo y la adaptación.
En esencia, la memoria para los agentes de IA se refiere a los mecanismos que les permiten retener y recordar información. Esta información puede incluir detalles específicos de una conversación, preferencias del usuario, acciones pasadas o incluso patrones aprendidos.
Sin memoria, las aplicaciones de IA suelen ser “sin estado”, lo que significa que cada interacción comienza desde cero. Esto genera una experiencia repetitiva y frustrante para el usuario, ya que el agente “olvida” el contexto o las preferencias previas.
La inteligencia de un agente está profundamente ligada a su capacidad de recordar y utilizar información pasada. La memoria permite que los agentes sean:
• Reflexivos: Aprender de acciones y resultados pasados.
• Interactivos: Mantener el contexto durante una conversación en curso.
• Proactivos y Reactivos: Anticipar necesidades o responder adecuadamente basándose en datos históricos.
• Autónomos: Operar de manera más independiente utilizando el conocimiento almacenado.
El objetivo de implementar memoria es hacer que los agentes sean más confiables y capaces.
Piensa en esto como un papel de borrador que un agente utiliza durante una tarea o proceso de pensamiento en curso. Contiene información inmediata necesaria para calcular el siguiente paso.
Para los agentes de IA, la memoria de trabajo suele capturar la información más relevante de una conversación, incluso si el historial completo del chat es largo o está truncado. Se centra en extraer elementos clave como requisitos, propuestas, decisiones y acciones.
Ejemplo de Memoria de Trabajo
En un agente de reservas de viajes, la memoria de trabajo podría capturar la solicitud actual del usuario, como “Quiero reservar un viaje a París”. Este requisito específico se mantiene en el contexto inmediato del agente para guiar la interacción actual.
Este tipo de memoria retiene información durante la duración de una sola conversación o sesión. Es el contexto del chat actual, lo que permite al agente referirse a turnos previos en el diálogo.
Ejemplo de Memoria a Corto Plazo
Si un usuario pregunta: “¿Cuánto costaría un vuelo a París?” y luego sigue con “¿Qué hay de alojamiento allí?”, la memoria a corto plazo asegura que el agente sepa que “allí” se refiere a “París” dentro de la misma conversación.
Esta es información que persiste a lo largo de múltiples conversaciones o sesiones. Permite a los agentes recordar preferencias del usuario, interacciones históricas o conocimiento general durante períodos prolongados. Esto es importante para la personalización.
Ejemplo de Memoria a Largo Plazo
Una memoria a largo plazo podría almacenar que “Ben disfruta del esquí y actividades al aire libre, le gusta el café con vistas a la montaña y quiere evitar pistas de esquí avanzadas debido a una lesión pasada”. Esta información, aprendida de interacciones previas, influye en las recomendaciones en futuras sesiones de planificación de viajes, haciéndolas altamente personalizadas.
Este tipo de memoria especializada ayuda a un agente a desarrollar una “personalidad” o “rol” consistente. Permite al agente recordar detalles sobre sí mismo o su función prevista, haciendo que las interacciones sean más fluidas y enfocadas.
Ejemplo de Memoria de Personalidad
Si el agente de viajes está diseñado para ser un “experto en planificación de esquí”, la memoria de personalidad podría reforzar este rol, influyendo en sus respuestas para alinearse con el tono y conocimiento de un experto.
Esta memoria almacena la secuencia de pasos que un agente toma durante una tarea compleja, incluyendo éxitos y fracasos. Es como recordar “episodios” específicos o experiencias pasadas para aprender de ellos.
Ejemplo de Memoria Episódica
Si el agente intentó reservar un vuelo específico pero falló debido a la falta de disponibilidad, la memoria episódica podría registrar este fallo, permitiendo al agente intentar vuelos alternativos o informar al usuario sobre el problema de manera más informada en un intento posterior.
Esto implica extraer y recordar entidades específicas (como personas, lugares o cosas) y eventos de conversaciones. Permite al agente construir una comprensión estructurada de los elementos clave discutidos.
Ejemplo de Memoria de Entidades
De una conversación sobre un viaje pasado, el agente podría extraer “París”, “Torre Eiffel” y “cena en el restaurante Le Chat Noir” como entidades. En una interacción futura, el agente podría recordar “Le Chat Noir” y ofrecer hacer una nueva reserva allí.
Aunque RAG es una técnica más amplia, el “RAG Estructurado” se destaca como una tecnología de memoria poderosa. Extrae información densa y estructurada de diversas fuentes (conversaciones, correos electrónicos, imágenes) y la utiliza para mejorar la precisión, recuperación y velocidad en las respuestas. A diferencia del RAG clásico que se basa únicamente en similitud semántica, el RAG Estructurado trabaja con la estructura inherente de la información.
Ejemplo de RAG Estructurado
En lugar de solo coincidir palabras clave, el RAG Estructurado podría analizar detalles de vuelo (destino, fecha, hora, aerolínea) de un correo electrónico y almacenarlos de manera estructurada. Esto permite consultas precisas como “¿Qué vuelo reservé a París el martes?”
Implementar memoria para agentes de IA implica un proceso sistemático de gestión de memoria, que incluye generar, almacenar, recuperar, integrar, actualizar e incluso “olvidar” (o eliminar) información. La recuperación es un aspecto particularmente crucial.
Una forma de almacenar y gestionar la memoria de los agentes es utilizando herramientas especializadas como Mem0. Mem0 funciona como una capa de memoria persistente, permitiendo a los agentes recordar interacciones relevantes, almacenar preferencias del usuario y contexto factual, y aprender de éxitos y fracasos con el tiempo. La idea aquí es que los agentes sin estado se conviertan en agentes con estado.
Funciona a través de un pipeline de memoria en dos fases: extracción y actualización. Primero, los mensajes añadidos al hilo de un agente se envían al servicio Mem0, que utiliza un modelo de lenguaje grande (LLM) para resumir el historial de la conversación y extraer nuevos recuerdos. Posteriormente, una fase de actualización impulsada por LLM determina si añadir, modificar o eliminar estos recuerdos, almacenándolos en un almacén de datos híbrido que puede incluir bases de datos vectoriales, gráficas y de clave-valor. Este sistema también admite varios tipos de memoria y puede incorporar memoria gráfica para gestionar relaciones entre entidades.
Más allá de herramientas especializadas como Mem0, puedes aprovechar servicios de búsqueda robustos como Azure AI Search como backend para almacenar y recuperar recuerdos, especialmente para RAG estructurado.
Esto permite fundamentar las respuestas de tu agente con tus propios datos, asegurando respuestas más relevantes y precisas. Azure AI Search puede usarse para almacenar recuerdos específicos de viajes de usuarios, catálogos de productos o cualquier otro conocimiento específico de un dominio.
Azure AI Search admite capacidades como RAG Estructurado, que sobresale en extraer y recuperar información densa y estructurada de grandes conjuntos de datos como historiales de conversación, correos electrónicos o incluso imágenes. Esto proporciona “precisión y recuperación superhumanas” en comparación con los enfoques tradicionales de fragmentación de texto y embeddings.
Un patrón común para agentes que se auto-mejoran implica introducir un “agente de conocimiento”. Este agente separado observa la conversación principal entre el usuario y el agente primario. Su función es:
Identificar información valiosa: Determinar si alguna parte de la conversación merece ser guardada como conocimiento general o preferencia específica del usuario.
Extraer y resumir: Destilar el aprendizaje o preferencia esencial de la conversación.
Almacenar en una base de conocimiento: Persistir esta información extraída, a menudo en una base de datos vectorial, para que pueda ser recuperada más tarde.
Aumentar consultas futuras: Cuando el usuario inicia una nueva consulta, el agente de conocimiento recupera información relevante almacenada y la agrega al prompt del usuario, proporcionando contexto crucial al agente primario (similar a RAG).
• Gestión de Latencia: Para evitar ralentizar las interacciones del usuario, se puede usar inicialmente un modelo más económico y rápido para verificar rápidamente si la información es valiosa para almacenar o recuperar, invocando solo el proceso de extracción/recuperación más complejo cuando sea necesario.
• Mantenimiento de la Base de Conocimiento: Para una base de conocimiento en crecimiento, la información menos utilizada puede trasladarse a “almacenamiento frío” para gestionar costos.
Únete al Discord de Azure AI Foundry para conectarte con otros estudiantes, asistir a horas de oficina y resolver tus dudas sobre agentes de IA.
Descargo de responsabilidad:
Este documento ha sido traducido utilizando el servicio de traducción automática Co-op Translator. Aunque nos esforzamos por garantizar la precisión, tenga en cuenta que las traducciones automatizadas pueden contener errores o imprecisiones. El documento original en su idioma nativo debe considerarse como la fuente autorizada. Para información crítica, se recomienda una traducción profesional realizada por humanos. No nos hacemos responsables de malentendidos o interpretaciones erróneas que puedan surgir del uso de esta traducción.