A introdução do ChatGPT trouxe modelos de linguagem de grande escala (LLMs) para o uso generalizado em indústrias de tecnologia e não tecnologia. Essa popularidade se deve principalmente a dois fatores:
LLMs como um depósito de conhecimento: LLMs são treinados em uma vasta quantidade de dados da internet e são atualizados em intervalos regulares (ou seja, GPT-3, GPT-3.5, GPT-4, GPT-4o e outros);
Habilidades emergentes: À medida que os LLMs crescem, eles exibem habilidades não encontradas em modelos menores.
Isso significa que já alcançamos a inteligência em nível humano, que chamamos de inteligência geral artificial (AGI)? A Gartner define AGI como uma forma de IA que possui a capacidade de entender, aprender e aplicar conhecimento em uma ampla gama de tarefas e domínios. O caminho para a AGI é longo, com um obstáculo chave sendo a natureza autorregressiva do treinamento dos LLMs que prevê palavras com base em sequências passadas. Como um dos pioneiros na pesquisa em IA, Yann LeCun aponta que os LLMs podem se desviar de respostas precisas devido à sua natureza autorregressiva. Consequentemente, os LLMs apresentam várias limitações:
Conhecimento limitado: Embora treinados em vastos dados, os LLMs não possuem conhecimento atualizado do mundo.
Raciocínio limitado: Os LLMs têm capacidade de raciocínio limitada. Como aponta Subbarao Kambhampati, os LLMs são bons recuperadores de conhecimento, mas não bons raciocinadores.
Sem dinamicidade: Os LLMs são estáticos e incapazes de acessar informações em tempo real.
Para superar os desafios dos LLMs, uma abordagem mais avançada é necessária. É aqui que os agentes se tornam cruciais.
Os agentes vêm ao resgate
O conceito de agente inteligente em IA evoluiu ao longo de duas décadas, com implementações mudando ao longo do tempo. Hoje, os agentes são discutidos no contexto dos LLMs. Simplificando, um agente é como uma canivete suíço para os desafios dos LLMs: pode nos ajudar no raciocínio, fornecer meios para obter informações atualizadas da Internet (resolvendo problemas de dinamicidade com LLMs) e pode realizar uma tarefa de forma autônoma. Com o LLM como seu backbone, um agente compreende formalmente ferramentas, memória, raciocínio (ou planejamento) e componentes de ação.
Componentes de um agente
As ferramentas permitem que os agentes acessem informações externas — seja da internet, bancos de dados ou APIs — permitindo que eles reúnam os dados necessários.
A memória pode ser de curto ou longo prazo. Os agentes usam memória de rascunho para manter temporariamente resultados de várias fontes, enquanto o histórico de chat é um exemplo de memória de longo prazo.
O Raciocinador permite que os agentes pensem de forma metódica, dividindo tarefas complexas em subtarefas gerenciáveis para um processamento eficaz.
Ações: Os agentes realizam ações com base em seu ambiente e raciocínio, adaptando-se e resolvendo tarefas iterativamente por meio de feedback. O ReAct é um dos métodos comuns para realizar iterativamente raciocínio e ação.
No que os agentes são bons?
Os agentes se destacam em tarefas complexas, especialmente quando em modo de interpretação de papéis, aproveitando o desempenho aprimorado dos LLMs. Por exemplo, ao escrever um blog, um agente pode se concentrar na pesquisa enquanto outro cuida da escrita — cada um lidando com um subobjetivo específico. Essa abordagem multi-agente se aplica a numerosos problemas da vida real.
A interpretação de papéis ajuda os agentes a se manterem focados em tarefas específicas para alcançar objetivos maiores, reduzindo alucinações ao definir claramente partes de um prompt — como papel, instrução e contexto. Uma vez que o desempenho do LLM depende de prompts bem estruturados, várias estruturas formalizam esse processo. Uma dessas estruturas, CrewAI, fornece uma abordagem estruturada para definir a interpretação de papéis, como discutiremos a seguir.
Multi-agentes vs agente único
Pegue o exemplo de geração aumentada por recuperação (RAG) usando um único agente. É uma maneira eficaz de capacitar LLMs a lidar com consultas específicas de domínio, aproveitando informações de documentos indexados. No entanto, o RAG de agente único vem com suas próprias limitações, como desempenho de recuperação ou classificação de documentos. O RAG multi-agente supera essas limitações empregando agentes especializados para compreensão de documentos, recuperação e classificação.
Em um cenário multi-agente, os agentes colaboram de diferentes maneiras, semelhantes a padrões de computação distribuída: sequencial, centralizado, descentralizado ou pools de mensagens compartilhadas. Estruturas como CrewAI, Autogen e langGraph+langChain permitem a resolução de problemas complexos com abordagens multi-agente. Neste artigo, usei a CrewAI como a estrutura de referência para explorar a gestão de fluxo de trabalho autônoma.
Gestão de fluxo de trabalho: um caso de uso para sistemas multi-agente
A maioria dos processos industriais se trata de gerenciar fluxos de trabalho, seja no processamento de empréstimos, gerenciamento de campanhas de marketing ou até mesmo DevOps. Etapas, sejam sequenciais ou cíclicas, são necessárias para alcançar um objetivo específico. Em uma abordagem tradicional, cada etapa (por exemplo, verificação de aplicação de empréstimo) exige que um humano execute a tediosa e mundana tarefa de processar manualmente cada aplicação e verificá-las antes de passar para a próxima etapa.
Cada etapa requer entrada de um especialista na área. Em um setup multi-agente usando CrewAI, cada etapa é tratada por uma equipe composta por vários agentes. Por exemplo, na verificação da aplicação de empréstimo, um agente pode verificar a identidade do usuário através de verificações de antecedentes em documentos como a carteira de motorista, enquanto outro agente verifica os detalhes financeiros do usuário.
Isso levanta a questão: pode uma única equipe (com vários agentes em sequência ou hierarquia) lidar com todas as etapas do processamento de empréstimos? Embora seja possível, isso complica a equipe, exigindo memória temporária extensa e aumentando o risco de desvio de objetivo e alucinação. Uma abordagem mais eficaz é tratar cada etapa do processamento de empréstimos como uma equipe separada, vendo todo o fluxo de trabalho como um gráfico de nós de equipe (usando ferramentas como langGraph) operando sequencialmente ou ciclicamente.
Uma vez que os LLMs ainda estão em estágios iniciais de inteligência, a gestão completa do fluxo de trabalho não pode ser totalmente autônoma. Um humano na etapa é necessário em estágios-chave para verificação do usuário final. Por exemplo, após a equipe completar a etapa de verificação da aplicação de empréstimo, a supervisão humana é necessária para validar os resultados. Com o tempo, à medida que a confiança na IA cresce, algumas etapas podem se tornar totalmente autônomas. Atualmente, a gestão de fluxo de trabalho baseada em IA funciona em um papel assistivo, agilizando tarefas tediosas e reduzindo o tempo total de processamento.
Desafios de produção
Trazer soluções multi-agente para a produção pode apresentar vários desafios.
Escala: À medida que o número de agentes cresce, a colaboração e a gestão se tornam desafiadoras. Várias estruturas oferecem soluções escaláveis — por exemplo, Llamaindex leva o fluxo de trabalho orientado a eventos para gerenciar multi-agentes em escala.
Latência: O desempenho do agente muitas vezes incide em latência à medida que as tarefas são executadas iterativamente, exigindo múltiplas chamadas de LLM. LLMs gerenciados (como GPT-4o) são lentos devido a guardrails implícitos e atrasos de rede. LLMs auto-hospedados (com controle de GPU) ajudam a resolver problemas de latência.
Desempenho e problemas de alucinação: Devido à natureza probabilística do LLM, o desempenho do agente pode variar a cada execução. Técnicas como modelagem de saída (por exemplo, formato JSON) e fornecimento de exemplos amplos em prompts podem ajudar a reduzir a variabilidade de resposta. O problema de alucinação pode ser ainda mais reduzido com o treinamento de agentes.
Considerações finais
Como Andrew Ng aponta, os agentes são o futuro da IA e continuarão a evoluir junto com os LLMs. Sistemas multi-agente avançarão no processamento de dados multimodais (texto, imagens, vídeo, áudio) e na abordagem de tarefas cada vez mais complexas. Embora a AGI e sistemas totalmente autônomos ainda estejam no horizonte, os multi-agentes vão preencher a lacuna atual entre os LLMs e a AGI.