- GPT-OSS-120B, um LLM open source da OpenAI, foi otimizado em ambiente de GPU NVIDIA para processar mais de 500 tokens por segundo
- Foram feitos testes paralelos com vários frameworks de inferência como TensorRT-LLM, vLLM e SGLang, com suporte às arquiteturas Hopper e Blackwell
- Corrigiram-se bugs de compatibilidade, integraram-se novidades como o formato de resposta Harmony, roteamento ciente do KV cache e decodificação especulativa baseada no Eagle, entre outras otimizações
- Depois de comparar Tensor Parallelism e Expert Parallelism, escolheu-se Tensor Parallelism para menor latência e o backend TensorRT-LLM MoE no Blackwell
- Há planos de otimizações futuras com maior desempenho, incluindo decodificação especulativa (Speculative) com modelos “draft” menores
Visão geral
- Quando o GPT-OSS-120B, o novo LLM open source da OpenAI, foi lançado, a Baseten buscou implementar desempenho de ponta
- A Baseten é a parceira oficial de lançamento da OpenAI
- Dados de usuários reais publicados pela OpenRouter comprovaram desempenho superior em ambiente baseado em GPUs NVIDIA em relação a terceiros
- Com o Flexible Inference Stack e a expertise da equipe de engenharia de modelos, patches de otimização foram aplicados rapidamente em ritmo de horas
- Em poucas horas de escrita do artigo, houve ainda aumento adicional de 100 tokens por segundo e manutenção de 100% de uptime
Esforços de otimização de desempenho
- Foram realizados testes e benchmarks em diversos frameworks de inferência, como TensorRT-LLM, vLLM e SGLang
- Em paralelo, garantiu-se compatibilidade com as arquiteturas de GPU Hopper e Blackwell
- Foi feita integração com componentes centrais como o Flexible Inference Stack da Baseten e NVIDIA Dynamo
- Aplicaram-se técnicas de otimização validadas continuamente, como roteamento ciente de KV cache e Speculative decoding (baseado em Eagle)
Abaixo estão as etapas principais para alcançar desempenho SOTA e suporte à janela de contexto completa
Etapa 1: Execução da inferência inicial
- O ponto de partida foi rodar a inferência inicial (baseline inference) o mais rápido possível, independentemente da abordagem
- Com foco em GPU, vários engenheiros conduziram experimentos paralelos com vLLM, SGLang e TensorRT-LLM
- O TensorRT-LLM com melhor desempenho foi colocado em funcionamento rapidamente
- Foi garantido suporte ao TensorRT-LLM em Hopper (onde há mais GPUs H100) e Blackwell (acelera melhor com GPUs B200)
- Graças à flexibilidade do Baseten Inference Runtime, foi simples substituir ferramentas dentro da stack e atender a novos modelos de arquitetura
Etapa 2: Correção de bugs de compatibilidade
- Novas arquiteturas de modelo trazem com frequência bugs recorrentes durante integração de frameworks
- O GPT OSS trouxe novos recursos, como o novo formato de resposta Harmony, gerando bugs na integração com frameworks existentes
- Para preservar velocidade e precisão, foram feitas revisões e testes repetidos, e as melhorias eficazes foram contribuídas de volta ao open source
- A colaboração da comunidade open source global faz com que diferentes caminhos de otimização e correções de bugs aconteçam rapidamente
Etapa 3: Otimização da configuração do modelo
- A OpenAI informa que o GPT OSS 120B funciona em um único H100, mas, na prática, a paralelização em 4 a 8 GPUs é mais vantajosa para desempenho
- Tensor Parallelism favorece a latência, enquanto Expert Parallelism favorece o throughput de sistema
- Como objetivo da Baseten é otimizar latência, escolheu-se Tensor Parallelism
- No Blackwell, foi aplicado o backend TensorRT-LLM MoE para melhorar o desempenho do kernel CUDA em relação ao backend Triton anterior
- Foram divulgadas configurações otimizadas para os ambientes Hopper e Blackwell, e a Model API adotou a configuração baseada em Blackwell
Otimizações de desempenho adicionais
- Mesmo apenas com a otimização inicial, já foi alcançado throughput e latência em nível SOTA, mas ainda há espaço significativo para melhoria
- A atualização principal prevista é a adoção de Speculative Decoding
- Nesse formato, um modelo de “draft” menor e mais rápido gera os tokens previstos, enquanto o modelo principal valida
- A Baseten recomenda o Eagle 3, mas mantém mais de 10 algoritmos no stack de inferência para operar de forma dinâmica conforme cada cenário
- A decodificação especulativa conduz inferência de múltiplos tokens de uma só vez, trazendo ganho de velocidade de forma eficiente
Ainda não há comentários.