推荐的 vLLM 运行时配置

在为 IBM Bob 自托管部署受支持的基础模型时,使用推荐的 vLLM 启动参数。

在为 IBM Bob 自托管部署受支持的基础模型时,使用推荐的 vLLM 启动参数。

推荐配置重点关注以下方面:

  • 投机解码(Speculative decoding)以降低延迟。
  • 前缀缓存(Prefix caching)和分块预填充(Chunked prefill)以提升长上下文性能。
  • 特定于模型的加速后端以实现最优吞吐量。
  • 高效的内存利用,以支持大上下文窗口和更高并发。
注意:

本节中的 vLLM 启动参数基于使用 NVIDIA H200 GPU 进行的内部验证测试,作为推荐配置值提供。这些设置并非硬性要求,可能不适用于所有部署场景。在生产部署前,请评估并调整配置值,以适应你的环境的具体硬件平台、模型变体、性能目标和工作负载特性。

重要:

本页列出的模型仅支持基于文本的输入,不支持图像处理或多模态图像分析。请勿将截图、架构图、应用程序图表、扫描文档或其他基于图像的内容作为模型输入上传。如果信息包含在图像中,请在提交给模型之前将其转换为文本。

Nvidia Nemotron 3 Ultra(FP8、NV-FP4)

Nemotron 3 Ultra 550B 是一种混合状态空间模型(SSM)和基于注意力机制的模型。FP8 和 NV-FP4 变体使用相同的 vLLM 配置,两者之间仅模型位置和服务模型名称不同。

为获得最佳性能,请启用投机解码和 Mamba 专用优化。

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

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

这些设置的使用原因

  • 投机解码:nemotron_h_mtp 投机解码方法生成草稿 token 并在单次传递中对其进行验证。此配置可以改善响应延迟并降低并发工作负载下的首 token 时间(TTFT)。
  • Mamba 后端:推荐对 Nemotron 混合 SSM 层使用 flashinfer 后端。结合随机舍入,有助于提供稳定的吞吐量和可预测的内存消耗。
  • 分块预填充和前缀缓存:分块预填充将大型提示词分段处理,而前缀缓存则重用之前计算过的提示词前缀。这些选项有助于提升长上下文工作负载的性能。
  • 多线程模型加载:当模型权重存储在持久化存储上时,使用 64 个加载线程可以减少模型启动时间。该设置不影响模型加载后的推理性能。

Laguna S 2.1(FP8)

Laguna S 2.1 是一种混合专家(MoE)模型,使用 dFlash 投机解码。以下配置在八个 GPU 上使用 FP8 量化权重进行了验证。

配置

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

这些设置的使用原因

  • dFlash 投机解码:dFlash 草稿模型为每个解码步骤生成 7 个投机 token。主模型在单次传递中验证这些 token,从而降低延迟并提高吞吐量。
  • Triton MoE 后端:triton 后端针对混合专家工作负载进行了优化,在并发负载下可提供更稳定的性能。
  • 前缀缓存:前缀缓存通过在多个请求之间重用公共提示词前缀来减少冗余计算。

Mistral Medium 3.5(FP8)

Mistral Medium 3.5 是一种密集型模型,使用 Eagle 投机解码。

配置

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"}'

这些设置的使用原因

  • FP8 KV 缓存压缩:--kv-cache-dtype=fp8 设置可降低 KV 缓存内存需求,在不修改模型权重的情况下支持大上下文窗口。
  • Eagle 投机解码:Eagle 草稿模型比主模型提前预测三个 token。主模型在单次传递中验证生成的 token,有助于降低首 token 时间和响应延迟。
  • GPU 内存利用率:92% 的 GPU 内存利用率目标可最大化可用 GPU 资源,同时在测试工作负载下保持稳定运行。

性能调优

你可能需要调整以下参数以满足性能和容量需求:

参数描述
--tensor-parallel-size跨多个 GPU 扩展推理。
--max-model-len控制最大支持的上下文长度。
--max-num-seqs增加或减少并发请求容量。
--max-num-batched-tokens控制批处理行为。
--gpu-memory-utilization平衡内存使用与稳定性。
--speculative-config优化延迟和吞吐量。
--enable-prefix-caching提升重复提示词的性能。
--enable-chunked-prefill改善大型提示词的处理。

部署后,监控延迟、吞吐量、GPU 利用率和内存消耗,并根据你的工作负载需求调整配置值。

这个主题怎么样?