Configuração recomendada do runtime vLLM

Use os parâmetros de inicialização recomendados do vLLM ao implantar modelos de fundação suportados para o IBM Bob auto-hospedado.

Use os parâmetros de inicialização recomendados do vLLM ao implantar modelos de fundação suportados para o IBM Bob auto-hospedado.

As configurações recomendadas focam em:

  • Decodificação especulativa para reduzir a latência.
  • Cache de prefixo e prefill fragmentado para melhorar o desempenho em contextos longos.
  • Backends de aceleração específicos do modelo para throughput ideal.
  • Utilização eficiente de memória para suportar janelas de contexto grandes e maior concorrência.
Nota:

Os argumentos de inicialização do vLLM nesta seção são baseados em testes de validação internos realizados com GPUs NVIDIA H200 e são fornecidos como valores de configuração recomendados. Essas configurações não são requisitos fixos e podem não ser adequadas para todos os cenários de implantação. Avalie e ajuste os valores de configuração para acomodar a plataforma de hardware específica, a variante do modelo, os objetivos de desempenho e as características da carga de trabalho do seu ambiente antes de implantar em produção.

Importante:

Os modelos listados nesta página suportam apenas entradas baseadas em texto e não suportam processamento de imagens ou análise de imagens multimodais. Não envie capturas de tela, diagramas de arquitetura, diagramas de aplicação, documentos digitalizados ou outro conteúdo baseado em imagens como entrada para o modelo. Se as informações estiverem contidas em uma imagem, converta-as em texto antes de submetê-las ao modelo.

Nvidia Nemotron 3 Ultra (FP8, NV-FP4)

O Nemotron 3 Ultra 550B é um modelo híbrido de space-state model (SSM) e atenção. As variantes FP8 e NV-FP4 usam a mesma configuração do vLLM. Apenas a localização do modelo e o nome do modelo servido diferem entre as variantes.

Para desempenho ideal, habilite a decodificação especulativa e as otimizações específicas do Mamba.

Configuração FP8

args:
  - --tensor-parallel-size=8
  - --enable-expert-parallel
  - --max-model-len=262144
  - --max-num-seqs=32
  - --max-num-batched-tokens=32768
  - --gpu-memory-utilization=0.90
  - --enable-chunked-prefill
  - --enable-prefix-caching
  - --mamba-cache-mode=align
  - --mamba-ssm-cache-dtype=float16
  - --mamba-backend=flashinfer
  - --enable-mamba-cache-stochastic-rounding
  - --mamba-cache-philox-rounds=5
  - '--speculative-config={"method": "nemotron_h_mtp", "num_speculative_tokens": 5}'
  - '--model-loader-extra-config={"enable_multithread_load": true, "num_threads": 64}'
  - --reasoning-parser=nemotron_v3
  - --tool-call-parser=qwen3_coder
  - --enable-auto-tool-choice
  - --enable-prompt-tokens-details
  - --trust-remote-code

Configuração NV-FP4

args:
  - --tensor-parallel-size=8
  - --enable-expert-parallel
  - --max-model-len=262144
  - --max-num-seqs=32
  - --max-num-batched-tokens=32768
  - --gpu-memory-utilization=0.90
  - --enable-chunked-prefill
  - --enable-prefix-caching
  - --mamba-cache-mode=align
  - --mamba-ssm-cache-dtype=float16
  - --mamba-backend=flashinfer
  - --enable-mamba-cache-stochastic-rounding
  - --mamba-cache-philox-rounds=5
  - '--speculative-config={"method": "nemotron_h_mtp", "num_speculative_tokens": 5}'
  - '--model-loader-extra-config={"enable_multithread_load": true, "num_threads": 64}'
  - --reasoning-parser=nemotron_v3
  - --tool-call-parser=qwen3_coder
  - --enable-auto-tool-choice
  - --enable-prompt-tokens-details
  - --trust-remote-code

Por que essas configurações são usadas

  • Decodificação especulativa: o método de decodificação especulativa nemotron_h_mtp gera tokens de rascunho e os verifica em uma única passagem. Essa configuração pode melhorar a latência de resposta e reduzir o tempo até o primeiro token (TTFT) sob cargas de trabalho concorrentes.
  • Backend Mamba: o backend flashinfer é recomendado para as camadas SSM híbridas do Nemotron. Combinado com arredondamento estocástico, ajuda a fornecer throughput estável e consumo de memória previsível.
  • Prefill fragmentado e cache de prefixo: o prefill fragmentado processa prompts grandes em segmentos menores, enquanto o cache de prefixo reutiliza prefixos de prompts previamente computados. Essas opções ajudam a melhorar o desempenho para cargas de trabalho com contexto longo.
  • Carregamento de modelo com múltiplas threads: usar 64 threads de carregamento pode reduzir os tempos de inicialização do modelo quando os pesos do modelo estão armazenados em armazenamento persistente. Essa configuração não afeta o desempenho de inferência após o modelo ser carregado.

Laguna S 2.1 (FP8)

O Laguna S 2.1 é um modelo mixture-of-experts (MoE) que usa decodificação especulativa dFlash. A configuração a seguir foi validada com pesos quantizados em FP8 em oito GPUs.

Configuração

args:
  - --trust-remote-code
  - --tensor-parallel-size=8
  - --tool-call-parser=poolside_v1
  - --enable-auto-tool-choice
  - --reasoning-parser=poolside_v1
  - --enable-prompt-tokens-details
  - --max-num-batched-tokens=16384
  - --enable-prefix-caching
  - '--default-chat-template-kwargs={"preserve_thinking": true, "enable_thinking": true}'
  - '--speculative-config={"num_speculative_tokens": 7, "method": "dflash", "model": "/mnt/models/dflash-fp8"}'
  - --moe-backend=triton

Por que essas configurações são usadas

  • Decodificação especulativa dFlash: o modelo de rascunho dFlash gera sete tokens especulativos para cada etapa de decodificação. O modelo principal valida esses tokens em uma única passagem, reduzindo a latência e melhorando o throughput.
  • Backend MoE Triton: o backend triton é otimizado para cargas de trabalho mixture-of-experts e pode fornecer desempenho mais estável sob carga concorrente.
  • Cache de prefixo: o cache de prefixo reduz a computação redundante reutilizando prefixos de prompt comuns entre múltiplas solicitações.

Mistral Medium 3.5 (FP8)

O Mistral Medium 3.5 é um modelo denso que usa decodificação especulativa Eagle.

Configuração

args:
  - --tensor-parallel-size=8
  - --tool-call-parser=mistral
  - --enable-auto-tool-choice
  - --reasoning-parser=mistral
  - --max-num-batched-tokens=32768
  - --max-num-seqs=32
  - --kv-cache-dtype=fp8
  - --max-model-len=234800
  - --gpu-memory-utilization=0.92
  - '--speculative-config={"model": "/mnt/models/eagle", "num_speculative_tokens": 3, "method": "eagle"}'

Por que essas configurações são usadas

  • Compressão de KV-cache FP8: a configuração --kv-cache-dtype=fp8 reduz os requisitos de memória do KV-cache, permitindo suporte a janelas de contexto grandes sem modificar os pesos do modelo.
  • Decodificação especulativa Eagle: o modelo de rascunho Eagle prevê três tokens à frente do modelo principal. O modelo principal verifica os tokens gerados em uma única passagem, ajudando a reduzir o tempo até o primeiro token e a latência de resposta.
  • Utilização de memória da GPU: uma meta de utilização de memória da GPU de 92% maximiza os recursos de GPU disponíveis enquanto mantém operação estável para a carga de trabalho testada.

Ajuste de desempenho

Pode ser necessário ajustar os seguintes parâmetros para atender aos seus requisitos de desempenho e capacidade:

ParâmetroDescrição
--tensor-parallel-sizeEscala a inferência em múltiplas GPUs.
--max-model-lenControla o comprimento máximo de contexto suportado.
--max-num-seqsAumenta ou diminui a capacidade de solicitações concorrentes.
--max-num-batched-tokensControla o comportamento de batching.
--gpu-memory-utilizationEquilibra uso de memória e estabilidade.
--speculative-configOtimiza latência e throughput.
--enable-prefix-cachingMelhora o desempenho para prompts repetidos.
--enable-chunked-prefillMelhora o processamento de prompts grandes.

Após a implantação, monitore a latência, o throughput, a utilização da GPU e o consumo de memória, e ajuste os valores de configuração conforme necessário para sua carga de trabalho.

Como está este tópico?