Agent Mentor Learn
Projetando fluxos de trabalho de agentes: de conversas avulsas à automação de várias etapas · Lição 4 de 6

Lição 4: Gerenciamento de estado e passagem de contexto

Objetivos de aprendizado:

  • Distinguir o estado do fluxo de trabalho do contexto do agente
  • Dominar três padrões de gerenciamento de estado
  • Entender checkpoint e recuperação

Pré-requisitos: Lição 3: Decompondo uma tarefa complexa em um fluxo de trabalho | Próxima: Lição 5 >>

Por que o gerenciamento de estado é o coração de um fluxo de trabalho

Você projeta um fluxo de trabalho perfeito: 10 passos, dependências limpas. No passo 8, o servidor reinicia. O fluxo de trabalho quebra.

Rodar tudo de novo? Aí o trabalho dos 7 primeiros passos — talvez 30 minutos dele — vai para o lixo.

Esse é o preço de não ter gerenciamento de estado.

O gerenciamento de estado resolve três problemas:1

  1. Passagem de dados entre passos: como o passo 3 recebe os resultados dos passos 1 e 2?
  2. Acompanhamento do progresso: quanto o fluxo de trabalho já avançou? Quanto falta?
  3. Recuperação de falhas: depois de uma queda, retomar de onde parou em vez de começar do zero.

Sem gerenciamento de estado, um agente só consegue passar informação pelo histórico da conversa. O histórico da conversa transborda, se perde e é esquecido pelo agente.

Com gerenciamento de estado, o fluxo de trabalho tem uma “memória” clara: persistente, consultável, recuperável.2

Estado vs. contexto vs. memória

Essas três palavras são fáceis de confundir, então vamos fixá-las primeiro:1

Estado

  • Todas as informações sobre a tarefa atual: em que passo você está, o resultado de cada passo, o que fazer em seguida
  • É um instantâneo: tudo o que o fluxo de trabalho sabe neste momento
  • Armazenado em: variáveis de script, um banco de dados, arquivos

Contexto

  • A informação passada para uma única chamada de agente
  • É entrada: o que este agente precisa saber para fazer seu trabalho
  • Extraído seletivamente do estado: nem todo o estado vai para o agente, apenas a parte relevante

Memória

  • Lições aprendidas no passado: o que já foi feito, que problemas apareceram, quais foram as soluções
  • É histórico: conhecimento de longo prazo que atravessa tarefas e sessões
  • Fora do escopo desta lição (memória de longo prazo é um tema difícil por si só)

Um exemplo:

O princípio central: o estado é global, o contexto é local.3

Padrão de estado 1: variáveis de script (estado em memória)

Quando usar: fluxos de trabalho curtos (< 10 minutos) que não precisam atravessar processos ou máquinas.

Vantagem: simples, rápido, sem dependências externas.

Desvantagem: o estado se perde quando o processo quebra, sem forma de recuperar.

Padrão básico

Onde o estado vive? Nas variáveis locais da função (processed, results, errors).

E se o processo quebrar? Todo o estado se perde, e você recomeça do início.

Melhor: um objeto de estado estruturado

Por que isso ajuda: o estado tem uma estrutura clara, é fácil de passar para outras funções e é fácil de serializar (caso você precise persistir).

Padrão de estado 2: checkpoint

Quando usar: fluxos de trabalho de duração média (10-60 minutos) em que você precisa salvar o progresso depois de operações caras.

Vantagem: depois de uma queda, você pode retomar do checkpoint mais recente e evitar refazer trabalho.

Desvantagem: você precisa projetar os locais dos checkpoints e a lógica de recuperação.1

Escolhendo os locais dos checkpoints

Estratégias de checkpoint:

  • Checkpoints periódicos: salvar a cada N tarefas ou a cada M minutos
  • Checkpoints por fase: salvar depois que cada fase importante termina (por exemplo, “fase de análise concluída”)
  • Antes de operações críticas: salvar antes de uma operação irreversível (por exemplo, um deploy, uma exclusão)

Padrão de estado 3: armazenamento externo (estado persistente)

Quando usar: fluxos de trabalho de longa duração (> 1 hora), trabalho que precisa se coordenar entre máquinas ou trabalho que precisa de aprovação humana.

Vantagem: o estado é persistente; a queda de um processo ou o reinício de uma máquina não importam, e pausar/retomar é suportado.

Desvantagem: exige uma dependência externa (um banco de dados, Redis) e acrescenta complexidade.4

Implementação básica

O padrão central: uma máquina de estados2

As fases do fluxo de trabalho são os estados de uma máquina de estados:

init → processing → awaiting_approval → approved → finalizing → completed                     rejected → cancelled

Cada transição de fase é salva no armazenamento externo, e é isso que permite ao fluxo de trabalho retomar a partir de qualquer fase.

Boas práticas para passar contexto

Princípio 1: passe apenas o necessário

Por quê? Quanto maior o contexto, mais fácil é o agente se distrair; a qualidade do raciocínio cai e o custo sobe.3

Princípio 2: estruture o contexto

Por quê? Contexto estruturado é mais fácil de o agente entender e mais fácil de você depurar.

Princípio 3: contexto acumulado vs. contexto reiniciado

Contexto acumulado: o resultado de cada passo é adicionado ao contexto, que só cresce.

Contexto reiniciado: cada passo limpa o contexto e mantém apenas o necessário.

Qual escolher: use contexto reiniciado na maior parte do tempo, para evitar a explosão do contexto. Use contexto acumulado apenas quando passos posteriores realmente precisarem de todos os resultados anteriores (como um passo final de resumo).5

Observabilidade do estado

Um bom fluxo de trabalho deve conseguir responder a estas perguntas:

  • Em que fase ele está agora?
  • Quanto já foi feito? Quanto falta?
  • Quantos erros ele encontrou?
  • Quando é esperado que termine?

Implementando o acompanhamento de progresso


Próxima lição: Lição 5: Tratamento de erros e estratégias de retentativa — aprenda a fazer um fluxo de trabalho se recuperar com elegância em caso de falha, em vez de quebrar por completo

Footnotes

  1. MachineLearningMastery: 5 Architectural Patterns for Persistent Memory and State in AI Agents — https://machinelearningmastery.com/5-architectural-patterns-for-persistent-memory-and-state-in-ai-agents/ 2 3

  2. MindStudio: Workflow State vs. Session State — https://www.mindstudio.ai/blog/workflow-state-vs-session-state-ai-agents 2

  3. Chrono Innovation: Architecture for Scalable Agentic AI Workflows — https://www.chronoinnovation.com/resources/agentic-ai-workflows-architecture/ 2

  4. Appamass: State Management Patterns for Reliable AI Agent Workflows — https://appamass.com/en/blog/state-management-patterns-for-reliable-ai-agent-workflows-5yemlru6ui6cacast3l5

  5. Ranjan Kumar: Building Agents That Remember — https://ranjankumar.in/building-agents-that-remember-state-management-in-multi-agent-ai-systems

Exercícios

01

Para os três fluxos de trabalho abaixo, escolha o padrão correto de gerenciamento de estado (variáveis de script, checkpoint, armazenamento externo) e explique por quê:

Nível 1: Escolha um padrão de gerenciamento de estado

Fluxo de trabalho A: comprimir em lote 20 imagens, 5 segundos cada, 100 segundos no total

Fluxo de trabalho B: treinar um modelo de machine learning, 50 épocas de 10 minutos cada, 500 minutos no total (8 horas)

Fluxo de trabalho C: revisar 100 PRs, cada um precisando de aprovação humana antes do merge, e o processo todo pode levar vários dias

Critérios de conclusão · marcado localmente
02

Projete o objeto de estado para um fluxo de trabalho de “deploy de múltiplos serviços”. O fluxo de trabalho precisa: (1) construir imagens Docker para 5 serviços (2) enviá-las para um registro de imagens (3) fazer deploy no ambiente de teste um a um (4) rodar testes de integração (5) se os testes passarem, fazer deploy em produção.

Nível 2: Projete uma estrutura de estado

Requisitos:

  • Projete um objeto JSON que represente o estado do fluxo de trabalho
  • Inclua: fase atual, status por serviço, informações de erro, timestamps
  • Explique onde os checkpoints devem ser salvos
Critérios de conclusão · marcado localmente