Pular para o conteúdo principal

Memória e sessões do agente

Para manter o contexto, um agente precisa de dois tipos de estado: o estado da interação que ele está gerenciando no momento e o conhecimento durável que ele carrega de uma conversa para a seguinte. O Databricks fornece um armazenamento totalmente gerenciado para cada um, ambos com suporte do Lakebase e utilizáveis por agentes criados em qualquer framework:

Para criar um novo agente com sessões e memória já configuradas, siga o início rápido do Agent Bricks. Para adicionar sessões e memória a um agente que você já criou, siga o Tutorial: Adicionar sessões e memória a um agente existente.

Como as sessões e a memória se relacionam​

Um agente lê e acrescenta dados a um armazenamento de sessão da conversa atual e recupera e salva fatos duradouros em um armazenamento de memória que abrange várias conversas. Um pipeline de memória lê as sessões do armazenamento de sessões e as destila no armazenamento de memória.

As Sessions são limitadas a uma interação: o estado de trabalho que o agente reproduz para continuar essa interação, como a transcrição da conversa. Uma sessão cresce dentro da interação e é completa por si só.

As Memories são limitadas a um assunto, e não a uma interação: os fatos duradouros que ainda devem importar em uma conversa futura e não relacionada, como as preferências estáveis de um usuário, uma decisão passada ou um projeto em andamento. O agente os recupera sempre que são relevantes, independentemente da conversa que os trouxe à tona.

Os pipelines de memória condensam as sessões em memórias. Um pipeline de memória lê as conversas em um armazenamento de sessões, extrai os fatos duradouros e os grava em um armazenamento de memória, sob demanda ou programar. Use um deles para criar memória a partir do história de conversas sem adicionar ferramentas de gravação de memória ao seu agente.

As sessões e as memórias se conectam no momento em que algo em uma conversa vale a pena guardar. Um pipeline de memória, seu agente ou aplicativo extrai os fatos duradouros de uma sessão e os grava na memória. A sessão é posteriormente limpa ou expira, mas a memória persiste. É por isso que os armazenamentos são independentes: excluir uma sessão ou um armazenamento de sessões inteiro não exclui a memória retida em um armazenamento de memória.

Use os dois juntos para a maioria dos casos de uso: as sessões dão ao agente continuidade dentro de uma conversa, e a memória dá a ele continuidade entre as conversas. Você também pode usar cada um deles separadamente. Use sessões isoladamente quando precisar apenas de estado dentro da interação, ou memória isoladamente quando sua estrutura já gerenciar o estado da sessão.

Como esses conceitos mapeiam a pesquisa de memória​

A pesquisa de memória do Databricks descreve a mesma arquitetura com termos diferentes. O armazenamento de sessão mantém a memória episódica , o registro bruto de cada sessão. O armazenamento de memória mantém a memória derivada , os fatos e fluxos de trabalho destilados dessas sessões. Um pipeline de memória é o processo de sonho offline que destila a memória episódica em memória derivada e a consolida ao longo do tempo.

Escolha onde começar​

    • Sessões do agente
    • Persista e retome o estado de sessão de um agente para que uma interação sobreviva a reinicializações e reconstrua o contexto completo (incluindo mensagens, chamadas de ferramentas e raciocínio) em um acompanhamento.
    • Memória do agente
    • Lembre-se das preferências, dos fatos e das decisões de um usuário em conversas separadas e personalize as respostas com o que o agente aprendeu anteriormente.
    • Pipelines de memória do agente
    • Destile memórias de longo prazo das conversas em um armazenamento de sessão, sob demanda ou para programar, sem adicionar ferramentas de gravação de memórias ao seu agente.

Abordagens herdadas​

A abordagem anterior a seguir para a memória do agente é legada e não é recomendada para novos agentes: