· · 2 minutos de leitura

Onde seu Agente se Lembra das Coisas? Guia Prático de Armazenamento do Histórico de Chat

Gerenciado pelo serviço ou pelo cliente? Linear ou ramificável? A decisão arquitetural que molda o que seu agente IA pode realmente fazer — com exemplos de código em C# e Python.

Agent Framework AI Agents Architecture CSharp Python
Este artigo também está disponível em:English, Català, Español, Deutsch, Français, Italiano, 日本語, 中文, 한국어, Русский, हिन्दी, Polski, Türkçe, العربية, Bahasa Indonesia, Nederlands

Este post foi traduzido automaticamente. Para a versão original, clique aqui.

Ao criar um agente IA, você gasta a maior parte da energia no modelo, nas ferramentas e nos prompts. A pergunta de onde vive o histórico de conversa parece um detalhe de implementação — mas é uma das decisões arquiteturais mais importantes que você tomará.

Ela determina se usuários podem bifurcar conversas, desfazer respostas, retomar sessões após uma reinicialização e se seus dados saem da sua infraestrutura. A equipe do Agent Framework publicou uma análise aprofundada.

Dois padrões fundamentais

Gerenciado pelo serviço: o serviço IA armazena o estado da conversa. Seu app mantém uma referência e o serviço inclui automaticamente o histórico relevante em cada requisição.

Gerenciado pelo cliente: seu app mantém o histórico completo e envia mensagens relevantes com cada requisição. O serviço é stateless. Você controla tudo.

Como o Agent Framework abstrai isso

AgentSession session = await agent.CreateSessionAsync();
var first = await agent.RunAsync("Meu nome é Alice.", session);
var second = await agent.RunAsync("Qual é o meu nome?", session);
session = agent.create_session()
first = await agent.run("Meu nome é Alice.", session=session)
second = await agent.run("Qual é o meu nome?", session=session)

Referência rápida de provedores

ProvedorArmazenamentoModeloCompactação
OpenAI/Azure Chat CompletionsClienteN/AVocê
Foundry Agent ServiceServiçoLinearServiço
Responses API (padrão)ServiçoRamificávelServiço
Anthropic Claude, OllamaClienteN/AVocê

Como escolher

  1. Precisa de ramificação ou “desfazer”? → Responses API gerenciado pelo serviço
  2. Precisa de soberania de dados? → Gerenciado pelo cliente com provedor de banco de dados
  3. É um chatbot simples? → Gerenciado pelo serviço linear está ótimo

Leia o post completo para a árvore de decisão completa.

Compartilhar:
Ver código-fonte deste artigo no GitHub ↗
← VS Code 1.118: Copilot CLI Ganha Nomes de Sessão, Badges de Modelo e TypeScript 7.0 Nightly
O Azure MCP Server Agora é um .mcpb — Instale-o sem Nenhum Runtime →