As tentativas do agente multiplicam-se após a reconexão quando vários clientes, camadas do fluxo de trabalho e operações em fila interpretam a mesma interrupção como permissão para tentar novamente.
Um agente doméstico pode chamar uma API de NAS, uma ponte de casa inteligente, uma ferramenta de navegador e uma fila de mensagens durante um único plano. Quando o Wi-Fi ou o router regressa, a biblioteca do cliente, o wrapper da ferramenta, o motor do fluxo de trabalho e a interface do utilizador podem libertar, cada um, uma nova tentativa. Conclusões incertas, temporizadores sincronizados, eventos em buffer e chaves de idempotência em falta transformam um passo interrompido em várias tentativas aparentemente válidas.
As Camadas de Tentativas Independentes Multiplicam uma Operação Falhada
Um pedido do agente pode atravessar um gateway, um planeador, um adaptador de ferramentas, uma biblioteca HTTP e um serviço do dispositivo. Se três camadas permitirem três tentativas cada, a operação a jusante pode receber muito mais de três chamadas, porque os limites de tentativas combinam-se multiplicativamente e não aditivamente.
a amplificação das tentativas em camadas explica como as tentativas aumentam a carga sobre uma dependência que já está com dificuldades e por que razão o recuo exponencial, a aleatoriedade, os tempos limite e um único ponto de tentativa reduzem essa amplificação. As orientações aplicam-se diretamente a pilhas de agentes com tentativas ocultas nas bibliotecas dos clientes.
Uma reconexão limpa frequentemente o erro de transporte sem limpar os temporizadores pendentes ou as entregas da fila. Cada camada é reativada com conhecimento incompleto das outras, pelo que IDs de pedido centralizados e um único limite de tentativas gerido de forma centralizada são mais fiáveis do que configurar políticas semelhantes de forma independente.
Uma Ligação Interrompida Oculta se a Ferramenta Foi Bem-sucedida
Uma resposta pode perder-se depois de o servidor concluir a ação, mas antes de o agente receber a confirmação. Tentar novamente uma leitura é normalmente inofensivo; tentar novamente destrancar uma porta, enviar uma notificação, mover um ficheiro ou executar uma ação semelhante a uma compra pode repetir um efeito real.
os identificadores de pedido idempotentes utilizam identificadores de idempotência fornecidos pelo autor da chamada para que um serviço reconheça pedidos repetidos e devolva o resultado original em vez de executar a ação duas vezes. Isto separa a recuperação segura do simples reenvio do mesmo payload.
O fluxo de trabalho tem de persistir o ID da operação, o destino, os argumentos, o estado da tentativa e o resultado confirmado durante a falha de rede. Gerar um novo ID de chamada da ferramenta após a reconexão anula a desduplicação, porque o serviço a jusante vê uma nova operação em vez de uma continuação.
Uma Recuperação Sincronizada Pode Transformar-se numa Tempestade de Tentativas
Muitos dispositivos detetam a mesma reposição da ligação de rede e reconectam-se em poucos segundos. Sem um atraso aleatório e controlo de admissão, os pedidos de agentes em fila, as subscrições e as verificações de estado criam um pico de carga precisamente quando os serviços estão a reconstruir o estado.
O capítulo redução da carga durante a recuperação descreve a falha em cascata quando as tentativas, o esgotamento de recursos e o tráfego de recuperação se reforçam mutuamente. Recomenda limitar o trabalho, descartar a carga excedente e testar o comportamento sob sobrecarga, em vez de presumir que a dependência recuperada consegue aceitar imediatamente toda a acumulação.
O limite da falha consiste em usar o recuo como substituto da segurança da operação. A aleatoriedade distribui as chamadas, mas não impede efeitos secundários duplicados, e a idempotência não torna desejável uma ação obsoleta. A intenção expirada, a autorização atual e o estado do destino têm de ser revalidados antes da repetição.
Execute um Teste de Repetição Após a Reconexão
Inicie um fluxo de trabalho de agente com dez passos, contendo leituras, escritas idempotentes e uma ação não repetível. Desligue a rede antes do envio, depois do envio, durante a execução e depois da conclusão, mas antes da confirmação; em seguida, reconecte vários clientes simultaneamente. Esta distinção continua visível durante os testes domésticos posteriores.
Aplique o limite dos efeitos secundários descrito em ações de agentes não repetíveis. Conte as tentativas em cada camada, os IDs de operação únicos, os efeitos duplicados, a idade da fila, a distribuição do recuo, as ações obsoletas rejeitadas e o tempo até o serviço regressar à carga normal. O resultado intermédio tem de continuar a ser inspecionável antes de a automação prosseguir.
Considere aprovado apenas quando uma operação lógica produzir, no máximo, um efeito secundário confirmado e o trabalho de repetição permanecer dentro de um limite global. Se o agente não conseguir determinar o resultado anterior, exija reconciliação ou aprovação humana em vez de presumir que outra tentativa é segura.
Centro de Tecnologia e IA
Mais para Ler

Porque é que os grupos de pesquisa facial se separam depois de as fotografias serem rodadas?
Veja como os metadados de orientação, a rotação dos píxeis, o alinhamento dos rostos, a geometria do recorte, a reamostragem e os limiares de...

Porque é que os gráficos de casas inteligentes dão saltos quando os carimbos de data/hora dos sensores são arredondados?
Saiba como o arredondamento, os intervalos de tempo, a agregação, a interpolação, os fusos horários e os carimbos de data/hora duplicados criam saltos artificiais...

Porque é que as respostas dos LLM locais ficam mais curtas sob carga simultânea?
Veja por que motivo a concorrência deve afetar a latência, não o significado, e como os orçamentos de serviço, os agendadores, a pressão sobre...

