Com o Memory Bank da Agent Platform, é possível gerar dinamicamente memórias de longo prazo com base nas conversas entre o usuário e seu agente. Essas memórias são informações personalizadas que persistem em várias sessões, permitindo que o agente se adapte e personalize as respostas para contexto e continuidade.
Recursos
O Memory Bank ajuda você a gerenciar memórias para personalizar a forma como seu agente interage com os usuários e gerenciar a janela de contexto. Para cada escopo, o Memory Bank mantém uma coleção isolada de memórias. Cada memória é uma informação independente e autônoma que pode ser usada para ampliar o contexto disponível para seu agente. Exemplo:
{
"name": "projects/.../locations/.../reasoningEngines/.../memories/...",
"scope": {
"agent_name": "My agent",
"user": "my user ID"
},
"fact": "I use Memory Bank to manage my memories."
}
O Memory Bank inclui os seguintes recursos:
Geração de dados de memória: crie, refine e gerencie memórias usando um modelo de linguagem grande (LLM).
Extração de memória: extrai apenas as informações mais significativas dos dados de origem para persistir como memórias.
Consolidação de memória: consolide as informações recém-extraídas com memórias atuais, permitindo que elas evoluam à medida que novas informações são inseridas. Você também pode consolidar memórias pré-extraídas (como informações que seu agente ou um humano no circuito considera significativas) com memórias atuais.
Geração assíncrona: gere dados de memória em segundo plano para que o agente não precise esperar a conclusão da geração de dados de memória.
Ingestão contínua de eventos: transmita e gerencie eventos de conversa com a ingestão de eventos, que aciona automaticamente a geração de dados de memória com base nas regras de agrupamento em lote configuradas.
Extração personalizável: configure quais informações o Memory Bank considera significativas fornecendo tópicos específicos e exemplos com poucos exemplos.
Compreensão multimodal: processa informações multimodais para gerar e manter insights textuais.
Armazenamento e recuperação gerenciados: aproveite um repositório de memória totalmente gerenciado, persistente e acessível.
Isolamento de dados em várias identidades: a consolidação e a recuperação de memória são isoladas para uma identidade específica.
Armazenamento persistente e acessível: armazene memórias que podem ser acessadas de vários ambientes, incluindo Agent Runtime, seu ambiente local ou outras opções de implantação.
Pesquisa de similaridade: recupere memórias usando a pesquisa de similaridade limitada a uma identidade específica.
Expiração automática: defina um time to live (TTL) para as memórias e garanta que as informações desatualizadas sejam excluídas automaticamente. Configure sua instância do Memory Bank para que um TTL seja aplicado automaticamente às memórias inseridas ou geradas.
Revisões de recordações: crie e mantenha automaticamente revisões de recordações, que permitem inspecionar como as recordações se transformam à medida que novas informações são ingeridas.
Permissões restritivas: use condições do IAM para restringir quais principais podem ler ou gravar memórias de escopos específicos.
Integração do agente: conecte o Memory Bank ao seu agente para que ele possa orquestrar chamadas para gerar e recuperar memórias.
Integração do Kit de Desenvolvimento de Agente (ADK): orquestre chamadas do seu agente baseado no ADK usando ferramentas integradas do ADK e o
VertexAiMemoryBankServicepara ler e gravar no Memory Bank.Outros frameworks: encapsule o código do Memory Bank em ferramentas e callbacks para orquestrar a geração e a recuperação de memória.
Casos de uso
É possível usar o Memory Bank para transformar interações de agentes sem estado em experiências contextuais com estado em que o agente se lembra, aprende e se adapta ao longo do tempo. O Memory Bank é ideal para aplicativos que exigem:
Personalização de longo prazo: crie experiências adaptadas a usuários individuais. O Memory Bank limita as memórias a uma identidade específica, permitindo que um agente se lembre das preferências, do histórico e dos detalhes principais de um usuário em várias sessões.
- Exemplo: um agente de serviço ao cliente que se lembra de informações importantes dos tíquetes de suporte anteriores e das preferências de produto de um usuário sem precisar perguntar de novo.
Extração de conhecimento com tecnologia de LLM: use quando precisar identificar e manter automaticamente as informações mais importantes de conversas ou conteúdo multimodal sem intervenção manual.
- Exemplo: um agente de pesquisa que lê uma série de artigos técnicos e cria uma memória consolidada de descobertas, metodologias e conclusões importantes.
Contexto dinâmico e em evolução: use o Memory Bank quando precisar de uma fonte de conhecimento que não seja estática. O Memory Bank foi projetado para integrar continuamente novas informações do seu agente, refinando e atualizando as memórias armazenadas à medida que novos dados ficam disponíveis. Isso garante que o contexto em que seu agente se baseia esteja sempre atualizado e preciso. Enquanto a RAG tem uma base de conhecimento estática e externa, o Memory Bank pode evoluir com base no contexto fornecido pelo agente.
Exemplo de uso

Você pode usar o Memory Bank com as sessões da Agent Platform para gerar memórias de sessões armazenadas usando o seguinte processo:
(Sessões)
CreateSession: no início de cada conversa, crie uma nova sessão. O histórico de conversas usado pelo agente é limitado a esta sessão. Uma sessão contém a sequência cronológica de mensagens e ações (SessionEvents) de uma interação entre um usuário e seu agente. Todas as sessões precisam ter um ID de usuário. As memórias extraídas (consulteGenerateMemories) dessa sessão são mapeadas para esse usuário.(Sessões)
AppendEvent: à medida que o usuário interage com o agente, os eventos (como mensagens do usuário, respostas do agente e ações da ferramenta) são enviados para Sessões. Os eventos mantêm o histórico de conversas e criam um registro que pode ser usado para gerar memórias.(Sessões)
ListEvents: à medida que o usuário interage com o agente, ele recupera o histórico da conversa.(Memory Bank) Gerar ou criar recordações:
GenerateMemories: em um intervalo especificado (como o final de cada sessão ou de cada turno), o agente pode acionar a geração de memórias usando o histórico de conversas. Os fatos sobre o usuário são extraídos automaticamente do histórico de conversas para que fiquem disponíveis para sessões atuais ou futuras.CreateMemory: seu agente pode gravar memórias diretamente no Memory Bank. Por exemplo, o agente pode decidir quando uma memória deve ser gravada e quais informações devem ser salvas (memória como uma ferramenta). UseCreateMemoryquando quiser que seu agente tenha mais controle sobre quais fatos são extraídos.
(Memory Bank)
RetrieveMemories: à medida que o usuário interage com seu agente, ele pode recuperar memórias salvas sobre esse usuário. Você pode recuperar todas as memórias (recuperação simples) ou apenas as mais relevantes para a conversa atual (recuperação por pesquisa de similaridade). Em seguida, insira as memórias recuperadas no comando.
Guias de início rápido
Comece a usar o Memory Bank com os seguintes guias de início rápido:
Guia de início rápido usando a API REST: siga o guia de início rápido da API REST para fazer chamadas de API diretamente para Sessions e Memory Bank.
Início rápido usando o Kit de Desenvolvimento de Agente (ADK): siga o início rápido do Kit de Desenvolvimento de Agente (ADK) se quiser que seu agente ADK orquestre chamadas para sessões e Memory Bank.
Governança do Memory Bank
Esta seção descreve as considerações sobre governança de dados ao usar o Memory Bank, como responsabilidades de segurança e residência de dados.
Riscos de segurança da injeção de comando
Além das responsabilidades de segurança descritas na responsabilidade compartilhada da Agent Platform, considere o risco de injeção de comandos e envenenamento da memória que podem afetar seu agente ao usar memórias de longo prazo. O envenenamento da memória ocorre quando informações falsas são armazenadas no Memory Bank. O agente pode operar com essas informações falsas ou maliciosas em sessões futuras.
Para reduzir o risco de envenenamento da memória, faça o seguinte:
Model Armor: use o Model Armor para inspecionar comandos enviados ao Memory Bank ou do seu agente.
Testes adversários: teste proativamente seu aplicativo de LLM para detectar vulnerabilidades de injeção de comandos simulando ataques. Isso é conhecido como "red teaming".
Execução em sandbox: se o agente tiver a capacidade de executar ou interagir com sistemas externos ou críticos, essas ações deverão ser realizadas em um ambiente em sandbox com controle de acesso rigoroso e revisão humana.
Para mais informações, consulte a Abordagem do Google para agentes de IA segura.
Residência de dados
Para obedecer a estruturas regulatórias, como o Regulamento geral de proteção de dados (GDPR) e os requisitos regionais de soberania de dados, é necessário garantir que as recordações geradas e armazenadas no Banco de recordações sigam limites rigorosos de residência e segregação de dados.
Embora o Memory Bank ofereça isolamento de dados com base no escopo em todas as identidades em uma instância, é necessário aplicar o controle de acesso baseado em função (RBAC) e as políticas do Identity and Access Management para impor limites regionais e evitar a contaminação de memória transfronteiriça entre instâncias regionais distintas.
Implantação de instâncias regionais e residência de dados
Ao criar uma instância do Memory Bank, escolha um local regional ou multirregional (como eu para a União Europeia ou us para os Estados Unidos) para garantir que os dados em repouso permaneçam dentro desse limite geográfico específico.
A localização do processamento de machine learning (ML) depende da disponibilidade regional do modelo subjacente. Se um endpoint regional não estiver disponível para o modelo ou local selecionado (por exemplo, modelos do Gemini 3 ou regiões únicas da Ásia), os endpoints globais do Gemini serão usados para o processamento de ML. Para mais informações, consulte Residência de dados e Endpoints multirregionais e globais.
Como evitar a contaminação de memória entre limites
A contaminação transfronteiriça ocorre quando um tempo de execução do agente, uma identidade do agente, uma conta de serviço ou um aplicativo que opera em uma jurisdição (por exemplo, os EUA) grava ou recupera memórias de uma instância do Memory Bank localizada em outra jurisdição (por exemplo, a UE).
Para evitar contaminação transfronteiriça e manter a conformidade regulatória, configure os seguintes controles do IAM:
Identidades de agente ou contas de serviço regionais dedicadas: crie identidades de agente ou contas de serviço separadas e específicas da região para cada jurisdição (como
agent-us@PROJECT_ID.iam.gserviceaccount.compara cargas de trabalho dos EUA eagent-eu@PROJECT_ID.iam.gserviceaccount.compara cargas de trabalho da UE). Verifique se as identidades de agentes regionais e as contas de serviço só recebem papéis do IAM nas instâncias do Memory Bank que residem na mesma jurisdição geográfica, impedindo que os tempos de execução regionais acessem instâncias transfronteiriças.- Papéis especializados de menor privilégio: conceda aos principais apenas os papéis específicos do
Memory Bank necessários para a carga de trabalho (como
roles/aiplatform.memoryViewerpara recuperação somente leitura ouroles/aiplatform.memoryEditorpara acesso de gravação e geração) vinculados ao recurso regional apropriado. Para detalhes sobre os papéis disponíveis, consulte Papéis do IAM do Memory Bank especializado.
- Papéis especializados de menor privilégio: conceda aos principais apenas os papéis específicos do
Memory Bank necessários para a carga de trabalho (como
Políticas da organização: aplique restrições de local no nível da organização, pasta ou projeto usando a
gcp.resourceLocationsrestrição de política da organização. Isso restringe a criação e o uso de recursos do Memory Bank a regiões aprovadas e em conformidade e impede o uso não autorizado de endpoints globais.
Para mais informações sobre a implementação de políticas de acesso condicional, consulte Controlar o acesso ao Memory Bank do Agent Platform com condições do IAM.
A seguir
Início rápido da API Memory Bank
Comece a usar a API Memory Bank para gerenciar memórias de longo prazo.
Início rápido com o Kit de Desenvolvimento de Agente
Comece a usar o Kit de Desenvolvimento de Agente (ADK).