Agent Platform Memory Bank te permite generar de forma dinámica memorias a largo plazo basadas en las conversaciones entre el usuario y tu agente. Estas memorias son información personalizada que persiste en varias sesiones, lo que permite que tu agente se adapte y personalice las respuestas para el contexto y la continuidad.
Funciones
Memory Bank te ayuda a administrar las memorias para que puedas personalizar la forma en que tu agente interactúa con los usuarios y administrar la ventana de contexto. Para cada alcance, Memory Bank mantiene una colección aislada de memorias. Cada memoria es una pieza de información independiente y autónoma que se puede usar para expandir el contexto disponible para tu agente. Por ejemplo:
{
"name": "projects/.../locations/.../reasoningEngines/.../memories/...",
"scope": {
"agent_name": "My agent",
"user": "my user ID"
},
"fact": "I use Memory Bank to manage my memories."
}
Memory Bank incluye las siguientes funciones:
Generación de memoria: Crea, refina y administra memorias con un modelo de lenguaje grande (LLM).
Extracción de memoria: Extrae solo la información más significativa de los datos de origen para que persista como memorias.
Consolidación de memoria: Consolida la información recién extraída con las memorias existentes, lo que permite que las memorias evolucionen a medida que se transfieren datos nuevos. También puedes consolidar memorias extraídas previamente (como la información que tu agente o un humano en el circuito consideran significativa) con las memorias existentes.
Generación asíncrona: Genera memorias en segundo plano, para que tu agente no tenga que esperar a que se complete la generación de memoria.
Transferencia continua de eventos: Transmite y administra eventos de conversación con la transferencia de eventos, que activa automáticamente la generación de memoria según las reglas de procesamiento por lotes que configures.
Extracción personalizable: Configura qué información considera significativa Memory Bank proporcionando temas específicos y algunos ejemplos.
Comprensión multimodal: Procesa información multimodal para generar y conservar estadísticas textuales.
Almacenamiento y recuperación administrados: Benefíciate de un almacén de memoria completamente administrado, persistente, y accesible.
Aislamiento de datos en todas las identidades: La consolidación y la recuperación de memoria se aíslan a una identidad específica.
Almacenamiento persistente y accesible: Almacena memorias a las que se puede acceder desde varios entornos, incluidos Agent Runtime, tu entorno local o cualquier otra opción de implementación.
Búsqueda por similitud: Recupera memorias con la búsqueda por similitud que se limita a una identidad específica.
Vencimiento automático: Establece un tiempo de actividad (TTL) en las memorias para garantizar que la información obsoleta se borre automáticamente. Configura tu instancia de Memory Bank para que se aplique automáticamente un TTL a las memorias insertadas o generadas.
Revisiones de memoria: Crea y mantén automáticamente revisiones de memoria que te permitan inspeccionar cómo se transforman las memorias a medida que se transfieren datos nuevos.
Permisos restrictivos: Usa condiciones de IAM para restringir qué principales pueden leer o escribir las memorias de alcances específicos.
Integración de agentes: Conecta Memory Bank a tu agente para que pueda organizar llamadas para generar y recuperar memorias.
Integración del Kit de desarrollo de agentes (ADK): Organiza llamadas desde tu agente basado en ADK con las herramientas integradas de ADK y
VertexAiMemoryBankServicepara leer y escribir en Memory Bank.Otros frameworks: Envuelve tu código de Memory Bank en herramientas y devoluciones de llamada para organizar la generación y recuperación de memoria.
Casos de uso
Puedes usar Memory Bank para transformar las interacciones de agentes sin estado en experiencias contextuales con estado en las que el agente recuerda, aprende y se adapta con el tiempo. Memory Bank es ideal para aplicaciones que requieren lo siguiente:
Personalización a largo plazo: Crea experiencias adaptadas a usuarios individuales. Memory Bank limita las memorias a una identidad específica, lo que permite que un agente recuerde las preferencias, el historial y los detalles clave de un usuario en varias sesiones.
- Ejemplo: Un agente de servicio al cliente que recuerda información clave de los tickets de asistencia anteriores de un usuario y las preferencias de productos sin necesidad de volver a preguntar.
Extracción de conocimiento basada en LLM: Úsala cuando necesites identificar y conservar automáticamente la información más importante de las conversaciones o el contenido multimodal sin intervención manual.
- Ejemplo: Un agente de investigación que lee una serie de artículos técnicos y crea una memoria consolidada de hallazgos, metodologías y conclusiones clave.
Contexto dinámico y en evolución: Usa Memory Bank cuando necesites una fuente de conocimiento que no sea estática. Memory Bank está diseñado para integrar continuamente información nueva de tu agente, refinar y actualizar las memorias almacenadas a medida que se disponga de datos nuevos. Esto garantiza que el contexto en el que se basa tu agente esté siempre actualizado y sea preciso. Mientras que RAG tiene una base de conocimiento externa y estática, Memory Bank puede evolucionar según el contexto proporcionado por el agente.
Ejemplo de uso

Puedes usar Memory Bank con Agent Platform Sessions para generar memorias a partir de sesiones almacenadas con el siguiente proceso:
(Sessions)
CreateSession: Al comienzo de cada conversación, crea una sesión nueva. El historial de conversaciones que usa el agente se limita a esta sesión. Una sesión contiene la secuencia cronológica de mensajes y acciones (SessionEvents) para una interacción entre un usuario y tu agente. Todas las sesiones deben tener un ID de usuario; las memorias extraídas (consultaGenerateMemories) para esta sesión se asignan a este usuario.(Sessions)
AppendEvent: A medida que el usuario interactúa con el agente, los eventos (como los mensajes del usuario, las respuestas del agente y las acciones de herramientas) se suben a Sessions. Los eventos conservan el historial de conversaciones y crean un registro de la conversación que se puede usar para generar memorias.(Sessions)
ListEvents: A medida que el usuario interactúa con el agente, este recupera el historial de conversaciones.(Memory Bank) Genera o crea memorias:
GenerateMemories: En un intervalo especificado (como el final de cada sesión o el final de cada turno), el agente puede activar la generación de memorias con el historial de conversaciones. Los datos sobre el usuario se extraen automáticamente del historial de conversaciones para que estén disponibles para sesiones actuales o futuras.CreateMemory: Tu agente puede escribir memorias directamente en Memory Bank. Por ejemplo, el agente puede decidir cuándo se debe escribir una memoria y qué información se debe guardar (memoria como herramienta). UsaCreateMemorycuando quieras que tu agente tenga más control sobre qué datos se extraen.
(Memory Bank)
RetrieveMemories: A medida que el usuario interactúa con tu agente, este puede recuperar las memorias guardadas sobre ese usuario. Puedes recuperar todas las memorias (recuperación simple) o solo las más relevantes para la conversación actual (recuperación de búsqueda por similitud). Luego, puedes insertar las memorias recuperadas en tu instrucción.
Guías de inicio rápido
Comienza a usar Memory Bank con las siguientes guías de inicio rápido:
Guía de inicio rápido con la API: Sigue la guía de inicio rápido de la API de REST para realizar llamadas a la API directamente a Sessions y Memory Bank.
Guía de inicio rápido con el Kit de desarrollo de agentes (ADK): Sigue la guía de inicio rápido del Kit de desarrollo de agentes (ADK) si quieres que tu agente de ADK organice llamadas a Sessions y Memory Bank por ti.
Riesgos de seguridad de la inyección de instrucciones
Además de las responsabilidades de seguridad que se describen en la responsabilidad compartida de Agent Platform, considera el riesgo de inyección de instrucciones y el envenenamiento de la memoria que pueden afectar a tu agente cuando usas memorias a largo plazo. El envenenamiento de la memoria ocurre cuando se almacena información falsa en Memory Bank. Luego, el agente puede operar con esta información falsa o maliciosa en sesiones futuras.
Para mitigar el riesgo de envenenamiento de la memoria, puedes hacer lo siguiente:
Model Armor: Usa Model Armor para inspeccionar las instrucciones que se envían a Memory Bank o desde tu agente.
Pruebas adversarias: Prueba de forma proactiva tu aplicación LLM para detectar vulnerabilidades de inyección de instrucciones simulando ataques. Por lo general, esto se conoce como "red teaming".
Ejecución de sandbox: Si el agente tiene la capacidad de ejecutar o interactuar con sistemas externos o críticos, estas acciones deben realizarse en un entorno de sandbox con un control de acceso estricto y una revisión humana.
Para obtener más información, consulta el enfoque de Google para agentes de IA seguros.
¿Qué sigue?
Guía de inicio rápido de la API de Memory Bank
Comienza a usar la API de Memory Bank para administrar memorias a largo plazo.
Guía de inicio rápido con el Kit de desarrollo de agentes
Comienza a usar el Kit de desarrollo de agentes (ADK).