LangGraph ganha tolerância a falhas: retries, timeouts e handlers de erro para agentes de produção
A LangChain publicou uma análise detalhada de três primitivos de tolerância a falhas integrados ao LangGraph. RetryPolicy fornece novas tentativas…
Processado por IA de LangChain Blog; editado por Hamidun News
LangChain publicou um guia detalhado sobre três primitivos de resiliência integrados do LangGraph — sem eles, qualquer agente de produção inevitavelmente quebra onde o protótipo funcionava como um relógio.
Por que protótipos quebram em produção
Em condições laboratoriais, um agente LangGraph parece confiável: dados de entrada são fixos, APIs externas respondem rapidamente, o usuário está sempre disponível. Na operação do mundo real, o quadro é diferente. Serviços externos travam ou retornam 503 sob carga.
Provedores de LLM no pico de demanda atrasam respostas por minutos. Em cenários human-in-the-loop, uma pessoa pode não responder por horas. Cada um desses casos, sem tratamento especial, se transforma em um agente travado ou crasheado.
A solução clássica — envolver cada chamada em try/except, escrever timers, adicionar lógica de retry manualmente. Isso funciona, mas o código defensivo cresce, se mistura com lógica de negócio e se torna uma fonte de erros. LangGraph oferece uma abordagem diferente: três primitivos integrados no mecanismo e funcionando declarativamente.
RetryPolicy: tentativas automáticas de repetição **RetryPolicy**
configura tentativas de repetição automática com backoff exponencial. Parâmetros configuráveis: número máximo de tentativas, atraso inicial, atraso máximo e seu coeficiente de crescimento entre tentativas. A política pode ser definida precisamente — para um nó específico que chama uma API externa instável — ou aplicada a todo o grafo como um padrão global. A segunda opção é conveniente quando toda interação com serviços externos deve seguir regras de recuperação unificadas.
TimeoutPolicy: limites de tempo **TimeoutPolicy** resolve uma tarefa
diferente — limita o tempo que um nó tem permissão para usar. Dois tipos de limites são suportados: `wall_clock_timeout` — tempo máximo decorrido para execução do nó desde o início até a conclusão `idle_timeout` — tempo máximo de ociosidade. Particularmente importante em cenários human-in-the-loop: se o usuário não respondeu em N minutos, o agente deve continuar por um ramo alternativo ou completar com um erro Ambos os limites podem ser combinados em uma política — o que vier primeiro será acionado Quando o limite é excedido, o mecanismo levanta uma exceção automaticamente * A política é aplicável a um nó, subgrafo ou grafo inteiro A principal vantagem de ambos os primitivos — eles vivem dentro do mecanismo e veem o contexto completo do estado do grafo.
Decoradores e wrappers externos não conseguem fazer isso.
error_handler e o padrão SAGA **error_handler** — o terceiro
primitivo, que é acionado depois que todas as tentativas de retry são esgotadas. Este é o ponto final de recuperação: desfazer ações já completadas, enviar notificações, salvar diagnósticos, mover o agente para um estado seguro. Para agentes multi-step com efeitos colaterais reais — reserva de recursos, dedução de fundos, criação de registros em sistemas externos — LangChain recomenda o padrão SAGA.
A ideia: cada passo do agente é acompanhado por uma operação compensatória que desfaz seu efeito. Se o passo N falhar após conclusão bem-sucedida dos passos 1 até N-1, operações compensatórias são iniciadas em ordem reversa — o sistema retorna a um estado consistente. LangGraph permite que você incorpore SAGA diretamente no grafo: as compensações são armazenadas próximo aos nós, e error_handler executa sua cadeia em caso de falha.
"Ter políticas de resiliência dentro do mecanismo, não fora — é uma diferença fundamental: a lógica de recuperação obtém o contexto completo do estado do grafo," — blog
LangChain.
O que isso significa
LangGraph oferece ferramentas maduras para mover agentes de IA do protótipo para operação do mundo real. Retries, timeouts e transações compensatórias são integradas no mecanismo e não exigem envolvimento manual de cada nó. Para equipes que constroem agentes sob cargas de produção, isso reduz o volume de código defensivo e torna o comportamento de falha previsível e controlável.
Quer parar de ler sobre IA e começar a usar?
AI News é um feed curado de notícias de IA. A Hamidun Academy ensina você a usar IA no trabalho.
O essencial da IA — uma vez por semana
Sete histórias que realmente importaram, escolhidas a dedo. Sem ruído nem releases.
Pronto! Verifique seu e-mail para a confirmação.