NVIDIA Nemotron 3.5 Lightning vLLM Day-0 지원

TL;DR

NVIDIA는 vLLM 서빙 엔진에서 300억 개의 파라미터를 가진 Nemotron 3.5 Lightning 모델에 대한 Day-0 지원을 발표했습니다. 하이브리드 MoE 설계와 세 가지 추측적 디코딩(Speculative Decoding) 방식(Multi-Token Prediction, DFlash, DSpark)을 통해 상시 가동되는 에이전트를 위해 최대 4배 높은 처리량을 제공합니다.


에이전트 워크로드에 Nemotron 3.5 Lightning이 중요한 이유

Nemotron 3.5 Lightning은 현대적인 에이전트 파이프라인에서 "second-tier" 역할을 목표로 합니다. 즉, 대규모 프론티어 모델이 고수준 계획을 수행하는 동안, 빈번하고 범위가 명확한 단계를 처리하는 경량 모델입니다. 하이브리드 MoE 아키텍처는 토큰당 총 30B 파라미터 중 3B만 활성화하여, 토큰당 연산량을 줄이고 1M 토큰의 컨텍스트 창을 가능하게 합니다. Multi-token prediction과 결합되면, 이 모델은 비슷한 크기의 오픈 모델보다 최대 4배 높은 처리량을 제공하여 데이터센터, 클라우드 또는 엣지 환경에서 대량의 상시 가동 에이전트를 운영하는 데 경제적으로 유효합니다.


핵심 기술 사양

Feature Detail
Architecture Hybrid mixture-of-experts (MoE) with 30B total parameters, 3B active per token
Context length Up to 1 million tokens
Modalities Text input → text output
Speculative decoding Multi-Token Prediction (MTP), DFlash, DSpark
Reasoning control Per-request enable/disable with configurable reasoning-token budget
Training lineage Distilled from NVIDIA Nemotron 3 Ultra; fine-tuned on popular agent harnesses
Customization Open model; supports post-training on domain-specific data
Precision formats at launch BF16 and NVFP4
Supported hardware NVIDIA DGX Spark, DGX Station, RTX PRO/RTX, Jetson, H100, H200, A100, L40S, B200/GB200, B300/GB300

vLLM 시작하기

vLLM 컨테이너 설치

docker pull vllm/vllm-openai:v0.27.1

docker run --rm -it \
  --gpus all \
  --ipc=host \
  --network=host \
  --entrypoint /bin/bash \
  vllm/vllm-openai:v0.27.1

Nemotron 3.5 Lightning 서빙 (예시: 1x H100)

vllm serve nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-BF16 \
  --max-num-seqs 256 \
  --max-num-batched-tokens 32768 \
  --enable-prefix-caching \
  --async-scheduling \
  --mamba-backend flashinfer \
  --moe-backend humming \
  --linear-backend humming \
  --mamba-ssu-algorithm horizontal \
  --mamba-cache-mode align \
  --mamba-ssm-cache-dtype float16 \
  --enable-mamba-cache-stochastic-rounding \
  --mamba-cache-philox-rounds 5 \
  --reasoning-parser nemotron_v3 \
  --tool-call-parser qwen3_coder \
  --enable-auto-tool-choice \
  --host 0.0.0.0 \
  --port 8000

OpenAI 호환 클라이언트 호출 샘플

from openai import OpenAI

client = OpenAI(base_url="http://127.0.0.1:8000/v1", api_key="null")

resp = client.chat.completions.create(
    model="nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-BF16",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Briefly explain: what is vLLM?"},
    ],
    temperature=1.0,
    top_p=0.95,
    max_tokens=1024,
)

choice = resp.choices[0]
print("Reasoning:", choice.message.reasoning)
print("Content:", choice.message.content)

추측적 디코딩 기술

Multi-Token Prediction (MTP)

MTP는 미래의 토큰 블록을 제안하는 경량 예측 헤드를 추가합니다. 타겟 모델이 이 블록을 검증하여 순차적 단계를 줄입니다.

vllm serve ... \
  --speculative_config.method mtp \
  --speculative_config.num_speculative_tokens 3

DFlash

DFlash는 전용 확산(diffusion) 초안 모델을 사용하여 전체 후보 블록을 병렬로 생성합니다. 별도의 초안(draft) 체크포인트가 필요합니다.

vllm serve ... \
  --speculative_config.model nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4-DFlash \
  --speculative_config.num_speculative_tokens 3

Draft checkpoint: nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4-DFlash.

DSpark

DSpark는 자기회귀(autoregressive)와 확산(diffusion) 스타일의 초안 작성을 혼합하여 MTP와 DFlash 사이의 중간 지점을 제공합니다. DGX Spark에서 최상의 레이턴시-처리량 트레이드오프를 제공합니다.

vllm serve ... \
  --speculative_config.method dspark \
  --speculative_config.model nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4-DSpark \
  --speculative_config.num_speculative_tokens 3

Draft checkpoint: nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4-DSpark.


vLLM 업스트림 성능 기여

  • DSpark speculator를 Nemotron 모델 정의에 통합했습니다.
  • DSpark draft head를 W4A16으로 양자화하여 메모리 사용량과 레이턴시를 줄였습니다.
  • Draft-and-verify 루프에서 host-device 동기화를 제거하고 비동기 스케줄링을 활성화했습니다.
  • MoE 및 dense 레이어에 대해 기본 Marlin backend를 Hopper-optimized Humming backend로 교체하여 처리량을 약 20% 향상시켰습니다.
  • Mamba2 state-space 레이어에 대해 ReplaySSM 지원을 추가하여 순환 경로 오버헤드를 줄였습니다.

하드웨어별 배포 가이드

DGX Spark (단일 사용자)

vllm serve ... \
  --max-num-batched-tokens 16384 \
  --compilation_config.cudagraph_capture_sizes '[1,2,4,8,16,24,32,40,48,56,64,72,80,88,96,104,112,120,128,136,144,152,160,168,176,184,192,200,208,216,224,232,240,248,256,1024,2048,4096,8192]' \
  --speculative_config.method dspark \
  --speculative_config.model nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4-DSpark

Pareto chart of inference performance on DGX Spark

NVIDIA H100 (단일 사용자)

vllm serve ... \
  --moe-backend humming \
  --linear-backend humming \
  --max-num-seqs 256 \
  --max-num-batched-tokens 32768 \
  --async-scheduling

Pareto chart of inference performance on H100 GPUs

NVIDIA Jetson (엣지)

vllm serve nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4 \
  --reasoning-parser nemotron_v3 \
  --kv-cache-dtype fp8 \
  --trust-remote-code \
  --max-num-batched-tokens 16384 \
  --enable-prefix-caching \
  --mamba-backend flashinfer \
  --mamba-ssm-cache-dtype float16 \
  --enable-mamba-cache-stochastic-rounding \
  --mamba-cache-philox-rounds 5 \
  --mamba-cache-mode align

정확도와 효율성의 경계선

Nemotron 3.5 Lightning은 Nemotron 3 Ultra의 기능을 계승하고 에이전트 중심 데이터셋으로 미세 조정되었습니다. 벤치마크(PinchBench) 결과, 이 모델은 Qwen 3.6 35B와 같은 더 큰 모델과 유사한 정확도를 달성하면서도 작업을 10,000개 완료하는 데 최대 30% 더 빠른 속도를 보여줍니다. Efficiency frontier line chart


모델 획득 방법


Nemotron 3 Nano와의 비교

Nemotron 3 Nano는 하이브리드 Mamba-Transformer MoE 설계를 도입했습니다. Nemotron 3.5 Lightning은 이를 다음과 같이 확장합니다:

  1. Nemotron 3 Ultra의 프론티어 모델 기능을 디스틸링(distilling)했습니다.
  2. 에이전트 하네스(agent harnesses) 및 다중 턴 워크플로우를 위해 훈련을 최적화했습니다.
  3. 세 가지 추측적 디코딩(speculative decoding) 경로(MTP, DFlash, DSpark)를 추가하여 생성을 가세대합니다. 최종 효과는 에이전트 작업에 대한 더 높은 정확도와 최대 4배의 처리량 개선입니다.

Acknowledgements

NVIDIA contributors: Nirmal Kumar Juluru, Anusha Pant, Amir Klein, Faradawn Yang, Nave Assaf, Ryan Stewart, Alex Steiner, Bita Rouhani.

Sources

관련

  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch