Estado, contexto e memória em sistemas Multi-Agent
Assim que um sistema passa de um agente para vários, aparece uma pergunta de arquitetura que não tem resposta óbvia: como um agente sabe o que outro agente já descobriu, sem que cada um precise reprocessar informação que já passou por alguém antes dele?
Shared State: um objeto único, todos lendo e escrevendo
O modelo mais direto é estado compartilhado: um objeto de estado único, atualizado por cada agente conforme ele executa sua parte, e lido por qualquer agente que precise saber o que já aconteceu até ali. Frameworks orientados a grafo, como LangGraph, modelam isso explicitamente, cada nó do grafo recebendo o estado atual, atualizando a parte que lhe compete, e passando adiante.
A vantagem é simplicidade de acesso: qualquer agente vê o histórico completo sem precisar pedir a mais ninguém. A desvantagem é acoplamento: mudar a estrutura desse objeto de estado afeta potencialmente todos os agentes que o leem, e um agente mal comportado pode sobrescrever informação que outro agente ainda precisava, se o controle de concorrência ou a disciplina de escrita não forem bem definidos.
Message Passing: cada agente só recebe o que precisa
Message passing troca o objeto compartilhado por mensagens explícitas trocadas entre agentes específicos: o agente A envia para o agente B exatamente a informação que B precisa, sem expor o restante do estado da execução. Isso reduz acoplamento, porque nenhum agente depende da estrutura interna do estado de outro, só do formato da mensagem recebida.
O custo aparece em outro lugar: alguém precisa decidir, explicitamente, quem manda o quê para quem, e essa topologia de comunicação pode crescer rápido conforme mais agentes entram no sistema. Sem uma estrutura central organizando quem fala com quem, message passing entre muitos agentes vira uma malha difícil de acompanhar, cada agente potencialmente enviando e recebendo de vários outros ao mesmo tempo.
Blackboard: um quadro comum, ninguém manda diretamente em ninguém
Blackboard é um padrão mais antigo, originado em sistemas de IA simbólica das décadas de 1970 e 1980, onde múltiplos especialistas colaboravam publicando descobertas num espaço compartilhado, sem se comunicar diretamente entre si. Cada agente observa o quadro, contribui quando tem algo relevante para adicionar, e nenhum agente precisa saber quem mais está participando ou vai consumir aquela contribuição.
Aplicado a agentes de IA modernos, isso se parece com um espaço compartilhado onde cada agente publica resultado parcial, e outros agentes (ou um controlador central) leem esse espaço para decidir o próximo passo, sem depender de troca direta de mensagens entre agentes específicos. A vantagem é desacoplamento total entre os agentes participantes. A desvantagem é que ninguém controla diretamente quando ou se uma contribuição relevante vai ser lida a tempo, o que exige algum mecanismo de coordenação por fora do próprio quadro.
O verdadeiro risco: contexto isolado virando contexto perdido
Nos três modelos, existe uma armadilha comum: cada agente, isoladamente, só enxerga uma fração do que está acontecendo no sistema inteiro, seja porque recebe só parte do estado (message passing), seja porque não sabe quem mais está lendo o que ele publicou (blackboard). Isso é desejável até certo ponto (é justamente o que permite manter o contexto de cada agente pequeno, focado só no que aquele agente precisa), mas vira problema quando uma informação relevante para uma decisão nunca chega ao agente que precisava dela, porque ninguém a propagou pelo canal certo.
Dependência circular é sintoma de estado mal desenhado
Um sinal comum de que o modelo de estado escolhido não está funcionando bem é dependência circular: o agente A precisa de algo que só o agente B produz, mas B, para produzir aquilo, precisa de algo que depende de A ter rodado antes. Isso normalmente indica que a divisão de responsabilidade entre os agentes está mal desenhada, não que o modelo de estado escolhido (compartilhado, mensagem ou blackboard) seja o errado. Nenhum dos três formatos resolve sozinho um problema de dependência circular na divisão do trabalho, eles só tornam esse problema mais ou menos visível.
Escolher o modelo certo é escolher o acoplamento certo
Shared state favorece simplicidade de acesso à custa de acoplamento entre agentes. Message passing favorece isolamento à custa de topologia de comunicação mais complexa de gerenciar. Blackboard favorece desacoplamento total à custa de coordenação implícita, mais difícil de rastrear. Não existe opção sem custo, existe a pergunta de qual custo o sistema em questão pode pagar melhor, considerando quantos agentes participam e quão previsível é a forma como eles precisam colaborar.