Mistura de Agentes (MoA): Como a inteligência coletiva eleva o desempenho dos LLMs
O rápido avanço dos modelos de linguagem grandes (LLMs) é como uma faca de dois gumes. Por um lado, ter numerosos LLMs de última geração nos dá muitas opções para resolver nossos casos de uso. Por outro lado, essa abundância de escolhas pode ser esmagadora.
Além disso, como diferentes organizações e empresas desenvolvem esses LLMs, eles são treinados em diferentes conjuntos de dados, resultando em LLMs com especialidades variadas. Alguns LLMs se destacam na resolução de problemas matemáticos, enquanto outros são mais adequados para tarefas de programação. Essa diversidade torna desafiador selecionar o LLM mais adequado para nossas necessidades, especialmente ao lidar com casos de uso multidomínio.
Neste artigo, exploraremos um método para enfrentar esse desafio: a abordagem Mixture-of-Agents (MoA), que combina vários LLMs com diferentes especialidades em um único sistema. Então, sem mais delongas, vamos começar com algumas motivações por trás do MoA.
A motivação por trás do Mixture-of-Agents (MoA)
O rápido avanço dos LLMs nos presenteou com numerosas opções ao escolher o melhor modelo para nosso caso de uso. No entanto, o teorema no-free-lunch ainda se aplica aos LLMs - nenhum modelo único tem desempenho igualmente bom em todas as tarefas. Diferentes LLMs se destacam em diferentes tarefas devido aos seus dados de treinamento variados. Portanto, selecionar um LLM que melhor se adapte ao problema específico que estamos tentando resolver é crucial.
Um desafio surge quando estamos lidando com casos de uso multidomínio que exigem expertise de múltiplos LLMs. Isso levanta uma pergunta importante: Podemos usar coletivamente múltiplos LLMs para aproveitar suas forças individuais e criar um sistema mais capaz e robusto? O método Mixture-of-Agents (MoA) tenta responder a essa pergunta.
O que é MoA?
Em resumo, Mixture-of-Agents (MoA) é um framework em que múltiplos LLMs especializados, ou "agentes", colaboram para resolver tarefas aproveitando suas forças únicas.
O conceito por trás do MoA é simples: combinamos vários LLMs com diferentes forças e capacidades em um único sistema. Quando um usuário envia uma consulta, cada LLM no sistema gera uma resposta. Então, um LLM designado no final sintetiza todas essas respostas em uma resposta coerente para o usuário, como mostrado na visualização abaixo:
Figura: conceito de Mixture-of-Agents
Figura: conceito de Mixture-of-Agents.
Embora o conceito de MoA seja simples, ele é surpreendentemente eficaz. Os autores do artigo sobre MoA descobriram que os LLMs tendem a gerar saídas de maior qualidade quando apresentados a respostas de outros LLMs.
Esse fenômeno foi demonstrado por meio de testes de benchmark no conjunto de dados AlpacaEval 2.0 usando seis LLMs diferentes, incluindo Qwen, Wizard, Mixtral, Llama 3, e dbrx. Os autores compararam a qualidade das respostas dos LLMs sob duas condições: usando prompts de entrada diretos versus usando respostas de outros modelos. Eles mediram a qualidade usando a métrica de taxa de vitória Length Controlled (LC), que avalia a qualidade da saída independentemente de fatores como o comprimento da resposta, que podem influenciar significativamente os resultados da avaliação.
Figura: comparação das taxas de vitória LC do AlpacaEval 2.0 de cada LLM a partir de duas entradas diferentes: diretamente do prompt do usuário e da saída de outros modelos
Figura: comparação das taxas de vitória LC do AlpacaEval 2.0 de cada LLM a partir de duas entradas diferentes: diretamente do prompt do usuário e da saída de outros modelos. Fonte.
Os resultados foram consistentes em todos os seis LLMs: eles alcançaram melhores pontuações de taxa de vitória LC ao trabalhar com saídas de outros LLMs em comparação com o processamento direto de prompts de entrada. Com base nessas descobertas, os autores desenvolveram o conceito de MoA, que exploraremos em detalhes na próxima seção.
O Fundamental de Mixture-of-Agents (MoA)
MoA integra vários LLMs em um único sistema para melhorar iterativamente a qualidade da geração de respostas.
O sistema consiste em múltiplas camadas, cada uma contendo vários LLMs de diferentes tamanhos e capacidades. Os LLMs na primeira camada geram respostas de forma independente para o prompt de entrada. Essas respostas são então apresentadas aos LLMs na segunda camada como entradas, que geram suas próprias respostas independentes. Esse ciclo continua pelas camadas subsequentes até chegar à camada final. No final, um único LLM sintetiza as respostas da última camada em uma resposta final para o usuário.
Figura: Ilustração da Estrutura de Mixture-of-Agents
Figura: Ilustração da Estrutura de Mixture-of-Agents. Fonte.
Com base nesse conceito, os LLMs usados no MoA podem ser classificados em duas categorias: propositores e agregadores.
Propositores geram respostas dentro de cada camada do sistema MoA, contribuindo para a qualidade da resposta final.
Agregadores coletam todas as respostas dos LLMs na última camada e as sintetizam em uma resposta de alta qualidade para o usuário.
Dadas as diferentes capacidades e especialidades de vários LLMs, precisamos prestar atenção ao selecionar quais modelos usar como propositores e agregadores. Alguns LLMs se destacam como propositores, enquanto outros apresentam melhor desempenho como agregadores, e alguns podem cumprir efetivamente ambos os papéis. Discutiremos resultados detalhados na próxima seção.
Como o MoA pode compreender muitas camadas, o mesmo LLM pode ser reutilizado como propositor dentro da mesma camada ou em diferentes camadas. Por exemplo, podemos construir um sistema MoA com 5 camadas, cada uma contendo 5 LLMs, e usar o modelo Llama3 70B em todas elas como um único propositor.
Depois que os propositores na última camada geram suas respostas, todas as saídas são estruturadas em um único prompt coerente para que o agregador gere a resposta final.
Aqui está um exemplo de tal prompt:
Figura: Exemplo de prompt para sintetizar e agregar respostas de vários LLMs
Figura: Exemplo de prompt para sintetizar e agregar respostas de vários LLMs. Fonte.
Embora esse conceito seja semelhante à abordagem Mixture-of-Experts (MoE) usada em redes neurais tradicionais, há uma diferença fundamental. Em redes neurais tradicionais, as camadas MoE são implementadas como várias sub-redes dentro da arquitetura de um único modelo. Portanto, quando temos novos dados que se desviam muito dos dados de treinamento, precisamos ajustar finamente os pesos de cada camada MoE para otimizar o desempenho.
Enquanto isso, o MoA depende inteiramente de prompting. Portanto, não há necessidade de ajustar finamente os LLMs para melhorar o desempenho geral do sistema. Isso oferece maior flexibilidade, pois podemos escolher livremente diferentes LLMs como propositores ou agregadores, independentemente de seu tamanho e arquitetura. Isso também significa que, se tivermos um novo modelo de ponta no futuro, poderemos implementar esse modelo diretamente em nosso sistema MoA como propositor ou agregador.
O MoA também oferece desempenho competitivo e serve como uma alternativa eficaz a outros métodos multiagentes projetados para aproveitar diversas capacidades de LLMs, como:
LLM ranker: este método usa múltiplos LLMs como proponentes para gerar respostas de forma independente a consultas de entrada. Um LLM independente então seleciona a melhor resposta entre esses proponentes.
RouteLLM: este método usa uma função de roteador treinada para analisar a complexidade da consulta e determinar quais LLMs devem processar a entrada.
Resultados da Avaliação em Conjuntos de Dados de Benchmark
O MoA foi avaliado em três conjuntos de dados de benchmark: AlpacaEval 2.0, MT-Bench e FLASK.
Três variantes diferentes do MoA foram testadas:
MoA: Um sistema de três camadas com seis proponentes por camada (Qwen1.5-110B-Chat, Qwen1.5-72B-Chat, WizardLM-8x22B, LLaMA-3-70B-Instruct, Mixtral-8x22B-v0.1, dbrx-instruct) e Qwen1.5-110B-Chat como agregador.
MoA com GPT-4o: A mesma configuração acima, mas usando GPT-4o como agregador.
MoA-lite: Um sistema de duas camadas usando os mesmos seis proponentes e agregador que o MoA padrão.
Figura: MoA de 2 camadas (esquerda) vs MoA de 3 camadas (direita)
Figura: MoA de 2 camadas (esquerda) vs MoA de 3 camadas (direita). Fonte.
No conjunto de dados AlpacaEval 2.0, todas as três variantes do MoA superaram o modelo de última geração, GPT-4 Omni, em até 8,2%. A configuração do MoA com GPT-4o como agregador alcançou a maior taxa de vitória LC entre as variantes.
Todas as três variantes do MoA também demonstraram desempenho competitivo no conjunto de dados MT-Bench. Embora o modelo atual de última geração, GPT-4 Turbo, tenha tido um desempenho excepcionalmente bom, o MoA com GPT-4o como agregador o superou. A comparação de desempenho entre as variantes do MoA e outros modelos de última geração é mostrada abaixo:
Figura: Resultados no AlpacaEval 2.0 (esquerda) e MT-Bench (direita)
Figura: Resultados no AlpacaEval 2.0 (esquerda) e MT-Bench (direita). Fonte.
O conjunto de dados FLASK fornece uma avaliação mais granular do que AlpacaEval 2.0 e MT-Bench, avaliando 12 aspectos: robustez, correção, eficiência, factualidade, senso comum, compreensão, perspicácia, completude, metacognição, legibilidade, concisão e inofensividade.
A configuração do MoA com Qwen1.5-110B-Chat como agregador superou o GPT-4 Omni em cinco aspectos: correção, factualidade, perspicácia, completude e metacognição. Enquanto isso, o desempenho de outras métricas é bastante comparável ao GPT-4 Omni, exceto pela concisão. A configuração do MoA mostrou um declínio notável na concisão, conforme ilustrado abaixo:
Figura: Resultados no FLASK
Figura: Resultados no FLASK. Fonte.
Agora que conhecemos seu desempenho em relação a modelos de última geração como a família GPT-4, também é interessante ver seu desempenho em relação a outros métodos relacionados de mistura de agentes.
Como mencionado na seção anterior, um exemplo de outro método semelhante a mistura de agentes é o LLM ranker, que usa múltiplos LLMs (proponentes) para gerar respostas independentes a um prompt de entrada. Em vez de usar um agregador, o LLM ranker seleciona a melhor resposta entre os proponentes.
Para a avaliação, tanto o MoA quanto o LLM ranker usaram os mesmos seis proponentes: Qwen1.5-110B-Chat, Qwen1.5-72B-Chat, WizardLM-8x22B, LLaMA-3-70B-Instruct, Mixtral-8x22B-v0.1 e dbrx-instruct. Cada proponente foi testado como agregador para o MoA, enquanto o LLM ranker usou apenas Qwen1.5-110B-Chat para selecionar a melhor resposta.
Em avaliações no conjunto de dados AlpacaEval 2.0, o MoA superou consistentemente os ranqueadores de LLM, independentemente do agregador usado. Isso mostra o potencial do método MoA, no qual o agregador, no fim, não simplesmente escolhe uma das respostas dos proponentes, mas gera uma agregação sobre todas as respostas dos proponentes para criar uma resposta final mais capaz e robusta.
Figura: taxa de vitória LC no AlpacaEval 2.0 com diferentes agregadores em uma configuração MoA com 6 proponentes
Figura: taxa de vitória LC no AlpacaEval 2.0 com diferentes agregadores em uma configuração MoA com 6 proponentes. Fonte.
Recomendações de configuração Mixture-of-Agents (MoA)
Agora que vimos o desempenho do MoA contra a família GPT-4 usando três variantes com seis proponentes diferentes cada, surgem duas perguntas-chave: Como o número de proponentes impacta o desempenho geral do MoA? E o que acontece se usarmos vários LLMs idênticos como proponentes em vez de diferentes?
Para determinar o impacto da quantidade de proponentes, o autor do artigo do MoA avaliou o MoA no AlpacaEval 2.0 com números variados de proponentes. Eles mediram a taxa de vitória LC de configurações MoA de 2 camadas usando 6, 3, 2 e 1 proponentes diferentes. Os resultados indicam que mais proponentes ajudam o agregador a gerar respostas mais robustas.
Além disso, configurações MoA usando um único proponente (LLMs idênticos como proponentes) tiveram desempenho pior do que configurações com múltiplos proponentes. Isso sugere que o MoA se beneficia de ter um conjunto diverso de LLMs com diferentes especialidades, em vez de usar um único LLM idêntico.
Figura: efeitos do número de proponentes no AlpacaEval 2.0.
Figura: efeitos do número de proponentes no AlpacaEval 2.0. Fonte.
Dadas as vantagens das configurações com múltiplos proponentes, também é importante entender quais LLMs funcionam melhor nessas configurações. Testes de seis LLMs diferentes no AlpacaEval 2.0 revelaram que modelos como GPT-4o, Qwen e Llama 3 são versáteis o suficiente para servir tanto como proponentes quanto como agregadores. No entanto, modelos como WizardLM têm desempenho notavelmente melhor como proponentes do que como agregadores.
Impacto de diferentes LLMs usados como proponentes vs agregadores
Impacto de diferentes LLMs usados como proponentes vs agregadores. Fonte.
Em relação aos custos, a dependência do MoA de múltiplos LLMs torna sua relação custo-desempenho particularmente interessante quando comparada a modelos de ponta como GPT-4o e GPT-4 Turbo. Experimentos mostram que o MoA-Lite pode superar o GPT-4 Turbo em aproximadamente 4% no AlpacaEval 2.0, reduzindo os custos em mais da metade. O custo do MoA-Lite aqui é calculado com base nas informações de preços disponíveis da TogetherAI. No entanto, se não tivermos problema em gastar mais para maximizar o desempenho, então o MoA de 3 camadas seria uma escolha melhor.
Figura: trade-off de desempenho vs custo (esquerda) e trade-off de desempenho vs TFLOPS (direita).
Figura: trade-off de desempenho vs custo (esquerda) e trade-off de desempenho vs TFLOPS (direita). Fonte.
Para a avaliação de latência, os autores usaram TFLOPS como métrica. TFLOPS refere-se à capacidade do sistema de realizar um trilhão de operações de ponto flutuante em um segundo. Embora TFLOPS não seja exatamente comparável à latência, o autor usou TFLOP como um proxy para latência porque a latência pode variar dependendo dos sistemas de inferência. O resultado da experimentação mostrou que a configuração MoA de 3 camadas otimiza seus TFLOPS para maximizar a taxa de vitórias LC, conforme mostrado pela linha tracejada de Pareto na visualização acima.
No entanto, a família GPT-4 demonstra TFLOPS mais altos em comparação com as configurações MoA. Isso é esperado, já que o MoA deve processar múltiplas respostas de LLM antes de gerar sua saída final. Isso leva à sua principal limitação: Time to First Token (TTFT), que pode impactar negativamente a experiência do usuário. Trabalhos futuros visam abordar isso implementando agregação de respostas por blocos em vez de agregação de respostas inteiras, potencialmente reduzindo o TTFT enquanto mantém seu desempenho.
Conclusão
O método Mixture-of-Agents (MoA) oferece uma solução promissora para aproveitar a diversidade e a especialização dos LLMs modernos. Ao utilizar múltiplos LLMs com várias forças por meio de um sistema de propositores e agregadores, o MoA cria uma resposta final mais capaz e robusta. Sua flexibilidade e dependência de engenharia de prompts, em vez de fine-tuning, tornam-no uma abordagem econômica e adaptável, particularmente para casos de uso multidomínio.
Avaliações de benchmark em conjuntos de dados como AlpacaEval 2.0 e MT-Bench mostram desempenho superior do MoA em relação a modelos de última geração como a família GPT-4. Para otimizar ainda mais o desempenho, recomenda-se usar uma configuração multi-propositor em vez de uma configuração de propositor único. No entanto, o MoA não está isento de limitações. A dependência de múltiplos LLMs aumenta a latência, impactando a experiência do usuário devido a um Time to First Token (TTFT) mais alto. Portanto, refinamentos adicionais, como agregação de respostas por blocos, são necessários para otimizar sua eficiência.
Recursos Relacionados
Repositório GitHub do MoA: https://github.com/togethercomputer/MoA
Artigo do MoA: Mixture-of-Agents Aprimora as Capacidades de Modelos de Linguagem Grandes
RouteLLM: Equilibrando Custo e Qualidade em Implantações de LLM
Fine-tuning Eficiente de LLM com LoRA (Adaptação de Baixo Posto)
Avaliando Segurança e Alinhamento de LLM em Domínios Específicos
Continue lendo

Zilliz Cloud Now Available in AWS Europe (Ireland)
Zilliz Cloud launches in AWS eu-west-1 (Ireland) — bringing low-latency vector search, EU data residency, and full GDPR-ready infrastructure to European AI teams. Now live across 30 regions on five cloud providers.

Zilliz Cloud BYOC Now Available Across AWS, GCP, and Azure
Zilliz Cloud BYOC is now generally available on all three major clouds. Deploy fully managed vector search in your own AWS, GCP, or Azure account — your data never leaves your VPC.

How to Build RAG with Milvus, QwQ-32B and Ollama
Hands-on tutorial on how to create a streamlined, powerful RAG pipeline that balances efficiency, accuracy, and scalability using the QwQ-32B and Milvus.


