Diffusion Language Models
Modelos de linguagem por difusão geram texto revelando muitos tokens em paralelo ao longo de várias etapas de remoção de ruído. Abrange difusão mascarada, LLaDA e Mercury.
Um modelo de linguagem por difusão gera texto começando com uma sequência totalmente corrompida, geralmente composta apenas por tokens de máscara, e refinando várias posições em paralelo ao longo de uma série de etapas de remoção de ruído. Já um modelo de linguagem de grande porte (LLM) convencional escreve um token de cada vez, da esquerda para a direita. A abordagem transfere a ideia por trás dos modelos de difusão de imagens para o texto discreto: um processo direto destrói gradualmente uma sequência, e um Transformer aprende a revertê-lo. A abordagem alcançou escala de produção em 2025. O LLaDA, um modelo de difusão com 8 bilhões de parâmetros treinado do zero, foi competitivo com o LLaMA3 8B em aprendizagem em contexto; os modelos Mercury Coder da Inception Labs atingiram 1.109 e 737 tokens por segundo em GPUs NVIDIA H100 em testes independentes; e o Gemini Diffusion experimental do Google DeepMind informa uma velocidade média de amostragem de 1.479 tokens por segundo.
Como funciona a difusão mascarada#
O LLaDA e a maioria dos outros modelos recentes usam difusão mascarada, ou de estado absorvente. O processo direto escolhe um nível de ruído t entre 0 e 1 e substitui cada token por um símbolo de máscara com probabilidade t:
import torch
torch.manual_seed(6)
tokens = ["the", "cat", "sat", "on", "the", "warm", "mat", "by", "the", "door"]
# Forward process of a masked diffusion LM: at noise level t, each token is masked with probability t
for t in [0.25, 0.5, 0.75, 1.0]:
masked = torch.rand(len(tokens)) < t
noisy = ["[M]" if m else token for token, m in zip(tokens, masked)]
print(f"t={t:.2f}: {' '.join(noisy)}")A execução imprime a frase com 2, 5, 8 e, por fim, todas as 10 palavras mascaradas. Durante o treinamento, um Transformer sem máscara causal vê uma dessas sequências e prevê todos os tokens mascarados de uma só vez, usando uma função de perda de entropia cruzada nas posições mascaradas, ponderada pelo LLaDA por 1/t. O objetivo generaliza a modelagem de linguagem mascarada do BERT, que sempre prevê 15% dos tokens, para todas as proporções de mascaramento, e limita a log-verossimilhança do modelo, tornando o resultado um modelo generativo completo.
A geração executa o processo ao contrário, a partir de t = 1. Em cada etapa, prevê todas as posições mascaradas, confirma as previsões mais confiantes e mascara novamente as demais; o LLaDA chama essa estratégia de remascaramento de baixa confiança. Muitas vezes, saídas longas são produzidas bloco a bloco, uma abordagem formalizada como difusão em blocos, para que os blocos anteriores possam ser armazenados em cache e o comprimento da saída não precise ser definido com antecedência:
Do D3PM aos modelos de produção#
O D3PM do Google definiu a difusão sobre estados discretos em 2021, incluindo o estado de máscara absorvente usado atualmente pela maioria dos modelos. O Diffusion-LM de Stanford aplicou difusão a embeddings contínuos de palavras em 2022 para orientar o texto gerado segundo restrições de sintaxe e tópico. O SEDD de Aaron Lou, Chenlin Meng e Stefano Ermon, vencedor do prêmio de melhor artigo do ICML 2024, reduziu a perplexidade dos modelos de difusão de texto anteriores em 25% a 75% e superou o GPT-2. Em seguida, o LLaDA mostrou que a abordagem escala para bilhões de parâmetros e, por ler o contexto nas duas direções, superou o GPT-4o em uma tarefa de completar poemas invertidos que testa a maldição da inversão dos modelos da esquerda para a direita. A Inception disponibiliza o Mercury por meio de uma API de Chat Completions compatível com a OpenAI, então a interface de LLM da Ultralytics pode chamá-lo com api="chat.completions" e base_url da Inception, por exemplo, para transformar detecções do YOLO26 em um relatório escrito.
Pontos fortes e compensações#
O desmascaramento paralelo exige menos passagens diretas do que o número de tokens, o que explica a velocidade, e a qualidade cai à medida que menos etapas confirmam mais tokens de cada vez. Os tokens confirmados na mesma etapa são amostrados de forma independente, então confirmar muitos de uma vez pode gerar combinações que não se encaixam. Cada etapa também aplica atenção ao bloco inteiro nas duas direções, o que a torna mais dispendiosa do que uma etapa autorregressiva com um cache KV. O contexto bidirecional torna naturais o preenchimento e a edição: o modelo pode preencher uma lacuna no meio de uma função ou de um documento usando o texto dos dois lados, algo adequado para a conclusão de código e ferramentas de programação agêntica que editam arquivos existentes.
Modelos de linguagem por difusão e termos relacionados#
- Geração de texto autorregressiva: prevê cada token a partir dos tokens à sua esquerda, com uma passagem direta por token.
- Difusão de imagens: o Stable Diffusion e outros modelos de difusão latente adicionam ruído gaussiano a pixels ou latentes contínuos, muitas vezes usando um Transformer de difusão (DiT) como rede de remoção de ruído.
- Forçamento de difusão: atribui a cada token seu próprio nível de ruído, combinando previsão do próximo token com difusão da sequência completa, principalmente para vídeo e planejamento.
- Decodificação especulativa: acelera um modelo autorregressivo ao gerar rascunhos de vários tokens com um modelo menor e verificá-los em uma única passagem do modelo grande, sem alterar a distribuição de saída.










