O problema de escala na inferência de LLMs
À medida que os Modelos de Linguagem de Grande Escala (LLMs — Large Language Models) crescem em tamanho e complexidade, maximizar o throughput de inferência enquanto se reduz a latência continua sendo um dos maiores desafios em ambientes de produção. Uma das estratégias mais eficazes para isso é a decodificação especulativa: um modelo auxiliar menor (“drafter”) antecipa os próximos tokens, e o modelo principal verifica todas as sugestões de uma só vez em uma única passagem direta.
Frameworks de ponta como o EAGLE (Algoritmo de Extrapolação para Maior Eficiência em Modelos de Linguagem — Extrapolation Algorithm for Greater Language-model Efficiency) conseguiram speedups expressivos com essa abordagem. Porém, existe um teto arquitetural importante: os tokens do drafter são gerados de forma autorregressiva. Ou seja, cada token depende do anterior, e produzir K candidatos exige K passagens sequenciais pelo cabeçalho do drafter — um custo de latência que cresce linearmente com a profundidade de especulação.
O EAGLE-3, versão mais recente do framework, melhorou a precisão do drafter ao prever tokens diretamente (em vez de features) e ao combinar representações de múltiplas camadas do modelo-alvo. Mesmo assim, a restrição fundamental de drafting sequencial permaneceu: quanto mais fundo você especula, mais overhead você acumula, corroendo os ganhos de desempenho.
O que é o P-EAGLE e como ele resolve o problema
Para superar esse gargalo, a AWS desenvolveu o P-EAGLE (Parallel-EAGLE) e o disponibilizou como código aberto. O P-EAGLE transforma a decodificação especulativa de um processo iterativo em uma operação completamente paralela, eliminando a fase de drafting sequencial aninhado ao prever todos os tokens especulativos simultaneamente em uma única passagem direta.
Para ilustrar: se o modelo-alvo gera o token “Paris”, o EAGLE precisa de quatro passagens sequenciais pelo drafter para propor os próximos quatro tokens (“, conhecida por sua”). O P-EAGLE, por outro lado, preenche as posições 2 a 4 com representações-placeholder aprendíveis e prevê todos os quatro tokens de uma vez. Ao desacoplar a contagem de tokens do drafter do número de passagens sequenciais, o P-EAGLE permite especulação mais profunda sem aumentar o overhead de latência.
Em benchmarks com hardware de alto desempenho, essa abordagem paralelizada entrega até 1,69x de speedup de throughput em relação ao EAGLE padrão.
Como o P-EAGLE quebra a cadeia de dependência sequencial
No EAGLE autorregressivo, gerar um token de rascunho requer dois insumos: o embedding do token previsto anteriormente e o estado oculto produzido pelo drafter na posição anterior. Essa cadeia se repete para cada posição subsequente, tornando K passagens sequenciais inevitáveis para K tokens.
O P-EAGLE resolve isso introduzindo dois parâmetros aprendíveis que substituem os insumos ausentes nas posições futuras:
- Embedding de token máscara (
emb_mask) — Um vetor aprendido que substitui o embedding do token anterior desconhecido nas posições 2 a K. Funciona como um sinal neutro de “não sei qual token veio antes de mim”, que o modelo aprende a interpretar durante o treinamento. - Estado oculto compartilhado (
h_shared) — Um único vetor de estado oculto aprendido e compartilhado entre todas as posições de predição multi-token (MTP — Multi-Token Prediction). Ele substitui o estado oculto da posição anterior que normalmente exigiria uma passagem prévia para ser computado.
A análise teórica do paper do P-EAGLE mostra que a atenção por si só fornece informação posicional suficiente, eliminando a necessidade de estados ocultos específicos por posição. Com esses placeholders, todas as K posições de rascunho podem ser construídas em paralelo e processadas pelas camadas transformer do drafter em uma única passagem.
O processo de drafting passo a passo
Cada iteração de drafting do P-EAGLE ocorre em dois passos:
Passo 1 — Passagem do modelo-alvo. O modelo-alvo processa o contexto atual e gera um novo token (geração autorregressiva padrão). Durante essa passagem, o P-EAGLE captura estados ocultos de múltiplas camadas do modelo-alvo (camadas 2, L/2 e L−1, concatenadas em 3d dimensões).
Passo 2 — Geração paralela de rascunho. O drafter constrói K posições de entrada ao mesmo tempo:
- Posição 1 (predição do próximo token) — Usa o embedding real do token recém-gerado concatenado com o estado oculto capturado. Idêntica ao EAGLE autorregressivo padrão.
- Posições 2 a K (predição multi-token) — Cada posição usa o embedding de token máscara (
emb_mask) concatenado com o estado oculto compartilhado (h_shared). Nenhuma posição precisa aguardar a saída da posição anterior.
Todas as K posições passam juntas por N camadas transformer (o drafter usa 4 camadas na prática, representando apenas 2–5% dos parâmetros do modelo-alvo) e então pelo cabeçalho de linguagem para produzir K predições de tokens ao mesmo tempo. O modelo-alvo verifica todos os K candidatos em uma única passagem de verificação usando os critérios padrão de aceitação de decodificação especulativa.
Benchmarks: o que os números mostram
Os benchmarks a seguir comparam P-EAGLE, EAGLE-3 e inferência padrão (sem especulação) no modelo Qwen3-Coder-30B-A3B-Instruct rodando em GPUs NVIDIA B200 com quantização FP8. Os resultados são medidos em tokens de saída por segundo (OTPS — Output Tokens Per Second).
HumanEval — Total de tokens de saída por segundo:
| Concorrência | P-EAGLE K=3 | P-EAGLE K=7 | P-EAGLE K=11 | EAGLE-3 K=3 | EAGLE-3 K=7 | EAGLE-3 K=11 | Baseline | P-EAGLE / EAGLE-3 | P-EAGLE / Baseline |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 665 | 1.032 | 1.167 | 651 | 905 | 955 | 294 | 1,22x | 3,97x |
| 4 | 2.205 | 3.313 | 3.710 | 2.198 | 3.044 | 3.215 | 889 | 1,15x | 4,17x |
| 8 | 3.958 | 5.786 | 6.252 | 3.979 | 5.493 | 5.589 | 1.587 | 1,12x | 3,94x |
SPEED-Bench Code — Total de tokens de saída por segundo:
| Concorrência | P-EAGLE K=3 | P-EAGLE K=7 | P-EAGLE K=11 | EAGLE-3 K=3 | EAGLE-3 K=7 | EAGLE-3 K=11 | Baseline | P-EAGLE / EAGLE-3 | P-EAGLE / Baseline |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 605 | 828 | 873 | 526 | 620 | 612 | 294 | 1,41x | 2,97x |
| 4 | 2.003 | 2.656 | 2.777 | 1.777 | 2.084 | 2.059 | 889 | 1,33x | 3,12x |
| 8 | 3.596 | 4.638 | 4.680 | 3.218 | 3.762 | 3.579 | 1.587 | 1,24x | 2,95x |
| 32 | 9.748 | 10.643 | 11.537 | 8.796 | 9.607 | 10.776 | 4.452 | 1,07x | 2,59x |
| 128 | 20.337 | 23.329 | 22.191 | 19.313 | 22.845 | 22.255 | 10.943 | 1,02x | 2,13x |
Vale destacar três implicações práticas desses resultados:
- Especulação mais profunda sem custo adicional: No EAGLE autorregressivo, aumentar K de 3 para 7 triplica a latência do drafter. No P-EAGLE, K=3 e K=7 custam o mesmo: uma única passagem direta. O P-EAGLE atinge throughput de pico em K=7, enquanto o EAGLE-3 autorregressivo satura em K=3.
- Ganhos consistentes em escala: Nas GPUs NVIDIA B200, o P-EAGLE entrega de 1,05x a 1,69x de speedup sobre o EAGLE-3 no MT-Bench, HumanEval e SPEED-Bench, com ganhos sustentados mesmo em alta concorrência.
- Sem compromisso de qualidade: Como a decodificação especulativa verifica todos os tokens de rascunho contra o modelo-alvo, a saída final é matematicamente idêntica ao que o modelo produziria sozinho. O P-EAGLE acelera a geração sem alterar o comportamento do modelo.
P-EAGLE no Amazon SageMaker JumpStart
O Amazon SageMaker JumpStart agora suporta nativamente o P-EAGLE para uma série de modelos de fundação populares. No lançamento, quatro modelos estão disponíveis com cabeçalhos P-EAGLE pré-treinados:
- GPT-OSS-120B
- GPT-OSS-20B
- Qwen3-Coder-30B-A3B-Instruct
- Gemma-4-31B-IT
Cada um desses modelos pode ser implantado diretamente do hub de modelos do JumpStart com o P-EAGLE pré-configurado — sem treinamento manual do drafter, contêineres customizados ou configuração manual do vLLM.
Pré-requisitos
Para seguir o processo de implantação, são necessários:
- Uma conta AWS com acesso ao Amazon SageMaker AI.
- Um domínio do Amazon SageMaker AI com pelo menos um perfil de usuário configurado.
- Cota de serviço para instância
ml.g7e.2xlarge(ou equivalente com GPU) para endpoints de inferência em tempo real do SageMaker.
Passo a passo de implantação
Passo 1 — Abrir o SageMaker Studio e navegar até o JumpStart. No console do Amazon SageMaker AI, selecione seu perfil de usuário, abra o Studio e navegue até JumpStart / Models na barra lateral esquerda.
Passo 2 — Buscar um modelo compatível com P-EAGLE. No hub de modelos do JumpStart, pesquise por Qwen3-Coder-30B-A3B-Instruct. Trata-se de um modelo de raciocínio de alto desempenho com configuração de mistura de especialistas (MoE — Mixture of Experts) de 3 bilhões de parâmetros ativos, tornando-o candidato ideal para aceleração por decodificação especulativa.
Passo 3 — Revisar o cartão do modelo e iniciar a implantação. Acesse o cartão do modelo para revisar destaques, informações de licença e opções de implantação suportadas. Em seguida, clique no botão Deploy no canto superior direito para iniciar o fluxo de implantação com o P-EAGLE pré-configurado.
Passo 4 — Configurar a implantação. Na página de configuração do endpoint, a seção Models exibe o modelo marcado como Inference Optimized, indicando que a decodificação especulativa P-EAGLE está pré-configurada. É possível expandir as variáveis de ambiente clicando na seta ao lado do nome do modelo.
Passo 5 — Verificar a configuração especulativa do P-EAGLE. Na seção de variáveis de ambiente, a chave de configuração central é SM_VLLM_SPECULATIVE_CONFIG, que vem pré-populada com o seguinte valor:
{"model": "/opt/ml/additional-model-data-sources/eagle", "method": "eagle3", "num_speculative_tokens": 3, "parallel_drafting": true}
Essa configuração instrui o servidor de inferência vLLM a carregar o cabeçalho do drafter P-EAGLE pré-treinado. O parâmetro "parallel_drafting": true ativa o pipeline P-EAGLE, que realiza automaticamente o drafting paralelo multi-token. O parâmetro num_speculative_tokens controla quantos tokens são rascunhados em cada passagem direta única.
Passo 6 — Aguardar o endpoint entrar em serviço. Após clicar em Deploy, o SageMaker AI provisiona a instância, baixa os artefatos do modelo e o cabeçalho do drafter P-EAGLE, e inicia o servidor de inferência vLLM. Após alguns minutos, o status do endpoint transita para In service (verde), confirmando que o modelo está pronto para aceitar requisições de inferência.
Passo 7 — Testar o endpoint no Playground. Na aba Playground da página do endpoint, é possível testar a inferência diretamente pelo console de gerenciamento da AWS. Um exemplo de payload no formato de chat completion compatível com vLLM:
{
"model": "qwen3-coder",
"messages": [
{
"role": "user",
"content": "What is deep learning?"
}
],
"max_tokens": 512,
"temperature": 0.3
}
A resposta aparece no painel Inference Result à direita, exibindo a completion gerada pelo modelo junto com métricas de latência. O endpoint está pronto para servir tráfego de produção com throughput aprimorado em relação à decodificação autorregressiva padrão.
Passo 8 — Limpeza. Endpoints de inferência em tempo real do SageMaker AI geram cobranças enquanto estão em execução, independentemente de estarem servindo requisições. Para evitar custos desnecessários, é importante excluir o endpoint quando não for mais necessário, acessando Deployments > Endpoints no SageMaker Studio e confirmando a exclusão.
Benefícios práticos para cargas de trabalho de raciocínio
LLMs modernos produzem saídas longas — com mediana em torno de 3.900 tokens e P90 em torno de 10.800 tokens. O framework de treinamento do P-EAGLE utiliza um algoritmo de particionamento de sequência que suporta treinamento em sequências de até 20 mil tokens, garantindo que o drafter corresponda aos tamanhos de contexto vistos no momento de inferência. Esse é um fator crítico: métodos treinados em sequências mais curtas podem sofrer degradação de até 25% na taxa de aceitação.
Ao combinar a otimização do P-EAGLE com o ambiente totalmente gerenciado do Amazon SageMaker AI, os times de desenvolvimento podem implantar endpoints de inferência acelerados por P-EAGLE que são até 1,69x mais rápidos que o EAGLE-3 — sem precisar gerenciar kernels CUDA complexos ou configurações de serving distribuído.
Conclusão
O P-EAGLE representa uma mudança fundamental na forma como a decodificação especulativa trata a geração de rascunhos. Ao substituir o pipeline de drafting autorregressivo sequencial pela predição paralela multi-token, o P-EAGLE remove a relação linear entre profundidade de especulação e latência do drafter — permitindo especulação mais profunda e agressiva sem custo adicional.
O resultado é uma melhoria de throughput de até 1,69x sobre o EAGLE-3 em cargas de trabalho de produção, sem comprometer a qualidade da saída. Com suporte nativo no Amazon SageMaker JumpStart, a implantação de modelos acelerados por P-EAGLE se torna uma experiência de um clique.
Para começar, acesse o console do Amazon SageMaker AI, navegue até o JumpStart e implante um dos modelos P-EAGLE suportados. Para mais informações sobre a arquitetura e metodologia de treinamento, consulte o paper do P-EAGLE no arXiv e o post de integração com o vLLM. Para aprender mais sobre implantação de modelos no Amazon SageMaker AI, veja a documentação oficial do Amazon SageMaker AI. Caso queira treinar um cabeçalho EAGLE com seus próprios dados, o Amazon SageMaker AI também suporta essa capacidade, lançada no ano passado.
Fonte
Parallelize speculative decoding with P-EAGLE on Amazon SageMaker AI (https://aws.amazon.com/blogs/machine-learning/parallelize-speculative-decoding-with-p-eagle-on-amazon-sagemaker-ai/)
Leave a Reply