Em um Transformer padrão, cada token passa pela mesma rede feedforward (FFN) em cada camada. Em um Transformer MoE, essa única FFN é substituída por múltiplas FFNs paralelas — os "especialistas" — mais uma pequena rede de roteamento (frequentemente chamada de gate) que decide quais especialistas processam cada token. Tipicamente, o gate seleciona os top-k especialistas (geralmente 2) e combina suas saídas usando os pesos softmax do gate. A percepção-chave é que a contagem total de parâmetros pode ser massiva (dando ao modelo enorme capacidade para memorizar e generalizar), enquanto a computação por token permanece gerenciável porque a maioria dos especialistas está ociosa para qualquer entrada dada. O Mixtral 8x7B, por exemplo, tem aproximadamente 47B parâmetros totais, mas ativa apenas cerca de 13B por token.
O mecanismo de roteamento é onde vive a maior parte da complexidade de engenharia. Um roteador ingênuo pode enviar todos os tokens para os mesmos poucos especialistas, deixando os outros sem uso — um problema chamado colapso de especialistas. Para prevenir isso, modelos MoE usam perdas auxiliares de balanceamento de carga que penalizam a utilização desigual de especialistas durante o treinamento. O Switch Transformer original do Google usava roteamento top-1 (um especialista por token) e alcançou escalonamento impressionante, mas a maioria dos modelos MoE modernos prefere roteamento top-2 por estabilidade. Algumas abordagens mais recentes como o DeepSeekMoE adicionam especialistas compartilhados que sempre se ativam junto com os roteados, garantindo um nível base de processamento para cada token independentemente das decisões de roteamento.
O trade-off que define a implantação de MoE é memória versus computação. Embora apenas uma fração dos especialistas esteja ativa por token, todos eles precisam estar carregados na memória. Um modelo MoE 8x7B precisa de aproximadamente a mesma memória que um modelo denso de 47B, mesmo que rode aproximadamente na velocidade de um modelo denso de 13B. Isso torna modelos MoE desajeitados para hardware de consumo — se você só consegue caber 13B parâmetros na VRAM da sua GPU, obteria a mesma velocidade de inferência de um modelo denso de 13B sem o overhead do MoE. O MoE realmente brilha quando você tem memória suficiente para manter o modelo completo e quer máxima qualidade por FLOP. É por isso que é um ajuste natural para serving em nuvem: provedores como OpenAI e Mistral podem provisionar memória suficiente em seus clusters, e o custo de computação por requisição é o que determina suas margens.
Paralelismo de especialistas é um padrão de implantação específico do MoE. Em uma configuração multi-GPU, você pode colocar diferentes especialistas em diferentes GPUs para que cada dispositivo mantenha e compute apenas um subconjunto de especialistas. Tokens são roteados entre GPUs com base em quais especialistas precisam, processados, e os resultados são reunidos de volta. Isso introduz overhead de comunicação all-to-all, mas permite que modelos grandes demais para um único dispositivo rodem eficientemente. Os papers GShard e Switch Transformer do Google demonstraram isso em escala, e é assim que os maiores modelos MoE são servidos em produção hoje.
Uma nuance que praticantes encontram: modelos MoE podem se comportar de forma imprevisível durante o fine-tuning. Se você fizer fine-tuning em um domínio estreito, o roteador pode começar a canalizar todos os tokens para um pequeno subconjunto de especialistas, efetivamente desperdiçando a capacidade do resto. Algumas equipes congelam o roteador durante o fine-tuning; outras adicionam regularização extra. Quantização é outra pegadinha — especialistas que ativam raramente têm menos amostras de calibração, então quantização pós-treinamento ingênua pode degradá-los desproporcionalmente. O campo está ativamente trabalhando nesses desafios operacionais, mas MoE é claramente a direção para onde as coisas estão indo. Grok, DBRX, Mixtral e quase certamente o GPT-4 todos usam, e o argumento de eficiência só fica mais forte à medida que os tamanhos dos modelos crescem.