Recetas vLLM y NIM para DGX Spark

Cada receta es un YAML en recipes/ con los flags exactos que usamos en la ronda de octubre 2026. El comando docker run sale de scripts/recipe_to_docker.py y aplica el contexto (128K), los usuarios (4), la caché KV (FP8) y el --gpu-memory-utilization medidos.

¿Prefieres que un agente lo haga por ti? Usa el prompt para agentes.

git clone https://github.com/ctala/local-llm-agentic-workflows.git && cd local-llm-agentic-workflows
pip install pyyaml "huggingface_hub[cli]"
python3 scripts/recipe_to_docker.py recipes/<id>.yaml            # imprime el docker run
python3 scripts/recipe_to_docker.py recipes/<id>.yaml --ctx 262144 --users 2   # otra configuración
Receta1 usuario4 usuarios (total)MemoriaCapacidades
qwen36-35b-a3b-nvfp4-rapida-v031-mtp102.3 tok/s240.0 tok/s55.5 GBtext, image, video, tools, reasoning
gpt-oss-20b-v03196.2 tok/s150.6 tok/s25.7 GBtext, tools, reasoning
nemotron35-lightning-nvfp4-dspark-v03194.4 tok/s213.2 tok/s43.5 GBtext, tools, reasoning
qwen36-35b-a3b-nvfp4-rapida-v03178.1 tok/s196.6 tok/s47.0 GBtext, image, video, tools, reasoning
nemotron35-lightning-nvfp4-v03170.3 tok/s170.7 tok/s45.0 GBtext, tools, reasoning
qwen36-35b-a3b-nvfp4-rapida-v031-dflash67.8 tok/s148.6 tok/s71.8 GBtext, image, video, tools, reasoning
nim-gpt-oss-20b62.8 tok/s151.4 tok/s33.0 GBtext, tools, reasoning
gpt-oss-20b-eagle3-v03159.4 tok/s144.7 tok/s38.4 GBtext, tools, reasoning
nemotron3-nano-omni-nvfp4-v03158.8 tok/s184.6 tok/s43.6 GBtext, image, audio, video, tools, reasoning
gemma4-26b-a4b-nvfp4-mtp-v03156.5 tok/s186.6 tok/s45.1 GBtext, image, audio, video
nim-nemotron3-nano-omni-30b56.0 tok/s161.3 tok/s62.7 GBtext, image, audio, video, tools, reasoning
gpt-oss-120b-v03144.4 tok/s124.9 tok/s80.5 GBtext, tools, reasoning
gpt-oss-120b-eagle3-v03140.5 tok/s91.8 tok/s87.5 GBtext, tools, reasoning
gemma4-26b-a4b-nvfp4-v03130.8 tok/s114.0 tok/s39.9 GBtext, image, audio, video
gemma4-26b-a4b-nvfp430.7 tok/s108.5 tok/s39.4 GBtext, image, audio, video
qwen38-flash-next26.8 tok/s52.5 tok/s95.7 GBtext, image, video, tools, reasoning
nim-llama31-8b26.4 tok/s102.3 tok/s33.6 GBtext, tools
qwen3-8b-fp8-v03123.2 tok/s95.7 tok/s55.5 GBtext, tools, reasoning
nemotron3-super-120b-nvfp4-mtp-v03123.0 tok/s57.0 tok/s95.2 GBtext, tools, reasoning
qwen38-27b-nvfp4-mtp-v03119.0 tok/s67.0 tok/s59.5 GBtext, image, tools, reasoning
nemotron3-super-120b-nvfp4-v03116.1 tok/s42.8 tok/s94.3 GBtext, tools, reasoning
qwen38-27b-nvfp4-dspark-v03112.5 tok/s33.9 tok/s63.6 GBtext, image, tools, reasoning
qwen38-27b-nvfp4-base-v03111.0 tok/s39.6 tok/s47.0 GBtext, image, tools, reasoning

qwen36-35b-a3b-nvfp4-rapida-v031-mtp

Qwen3.6-35B-A3B NVFP4 (NVIDIA) + MTP k=2 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 102.3 tok/s con 1 usuario, 240.0 tok/s en total con 4, carga en 2.7 min, ≈55.5 GB de memoria unificada.

Descarga:

hf download nvidia/Qwen3.6-35B-A3B-NVFP4 --local-dir ~/vllm/qwen3.6-35b-a3b-nvfp4-nvidia

Arranque:

docker run -d \
  --name qwen36-35b-a3b-nvfp4-rapida-v031-mtp \
  --gpus all \
  --ipc host \
  --shm-size 64g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_TARGET_DEVICE=cuda \
  -e VLLM_TEST_FORCE_FP8_MARLIN=1 \
  -e VLLM_MARLIN_USE_ATOMIC_ADD=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/qwen3.6-35b-a3b-nvfp4-nvidia \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen3.6-35b-a3b \
  --trust-remote-code \
  --attention-backend=flashinfer \
  --moe-backend=marlin \
  --max-num-batched-tokens=32768 \
  --enable-chunked-prefill \
  --async-scheduling \
  --enable-prefix-caching \
  '--limit-mm-per-prompt={"image":4}' \
  --load-format=fastsafetensors \
  --enable-auto-tool-choice \
  --tool-call-parser=qwen3_coder \
  --reasoning-parser=qwen3 \
  '--speculative-config={"method":"mtp","num_speculative_tokens":2,"moe_backend":"triton"}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.5

gpt-oss-20b-v031

GPT-OSS-20B (MXFP4) · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 96.2 tok/s con 1 usuario, 150.6 tok/s en total con 4, carga en 2.9 min, ≈25.7 GB de memoria unificada.

Descarga:

hf download openai/gpt-oss-20b --local-dir ~/vllm/gpt-oss-20b-v031

Arranque:

docker run -d \
  --name gpt-oss-20b-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/gpt-oss-20b-v031 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name gpt-oss-20b \
  --enable-prefix-caching \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.25

nemotron35-lightning-nvfp4-dspark-v031

Nemotron 3.5 Lightning 30B-A3B NVFP4 + DSpark k=3 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 94.4 tok/s con 1 usuario, 213.2 tok/s en total con 4, carga en 4.5 min, ≈43.5 GB de memoria unificada.

Descarga:

hf download nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4 --local-dir ~/vllm/nemotron-3.5-lightning-nvfp4
hf download nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4-DSpark --local-dir ~/vllm/nemotron-3.5-lightning-dspark

Arranque:

docker run -d \
  --name nemotron35-lightning-nvfp4-dspark-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_NVFP4_GEMM_BACKEND=marlin \
  -e VLLM_USE_FLASHINFER_MOE_FP4=0 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/nemotron-3.5-lightning-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name nemotron-3.5-lightning \
  --enable-prefix-caching \
  --trust-remote-code \
  '--speculative-config={"method":"dspark","model":"/vllm/nemotron-3.5-lightning-dspark","num_speculative_tokens":3}' \
  --chat-template=/vllm/nemotron-3.5-lightning-nvfp4/chat_template.jinja \
  --reasoning-parser=nemotron_v3 \
  --tool-call-parser=qwen3_coder \
  --enable-auto-tool-choice \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.4

qwen36-35b-a3b-nvfp4-rapida-v031

Qwen3.6-35B-A3B NVFP4 (NVIDIA) · vLLM 0.31.0 estable + flags rápidos · estado: verificada (estable)

Medido el 2026-10-06: 78.1 tok/s con 1 usuario, 196.6 tok/s en total con 4, carga en 2.1 min, ≈47.0 GB de memoria unificada.

Descarga:

hf download nvidia/Qwen3.6-35B-A3B-NVFP4 --local-dir ~/vllm/qwen3.6-35b-a3b-nvfp4-nvidia

Arranque:

docker run -d \
  --name qwen36-35b-a3b-nvfp4-rapida-v031 \
  --gpus all \
  --ipc host \
  --shm-size 64g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_TARGET_DEVICE=cuda \
  -e VLLM_TEST_FORCE_FP8_MARLIN=1 \
  -e VLLM_MARLIN_USE_ATOMIC_ADD=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/qwen3.6-35b-a3b-nvfp4-nvidia \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen3.6-35b-a3b \
  --trust-remote-code \
  --attention-backend=flashinfer \
  --moe-backend=marlin \
  --max-num-batched-tokens=32768 \
  --enable-chunked-prefill \
  --async-scheduling \
  --enable-prefix-caching \
  '--limit-mm-per-prompt={"image":4}' \
  --load-format=fastsafetensors \
  --enable-auto-tool-choice \
  --tool-call-parser=qwen3_coder \
  --reasoning-parser=qwen3 \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.4

nemotron35-lightning-nvfp4-v031

Nemotron 3.5 Lightning 30B-A3B NVFP4 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 70.3 tok/s con 1 usuario, 170.7 tok/s en total con 4, carga en 3.9 min, ≈45.0 GB de memoria unificada.

Descarga:

hf download nvidia/NVIDIA-Nemotron-3.5-Lightning-30B-A3B-NVFP4 --local-dir ~/vllm/nemotron-3.5-lightning-nvfp4

Arranque:

docker run -d \
  --name nemotron35-lightning-nvfp4-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_NVFP4_GEMM_BACKEND=marlin \
  -e VLLM_USE_FLASHINFER_MOE_FP4=0 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/nemotron-3.5-lightning-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name nemotron-3.5-lightning \
  --enable-prefix-caching \
  --trust-remote-code \
  --chat-template=/vllm/nemotron-3.5-lightning-nvfp4/chat_template.jinja \
  --reasoning-parser=nemotron_v3 \
  --tool-call-parser=qwen3_coder \
  --enable-auto-tool-choice \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.4

qwen36-35b-a3b-nvfp4-rapida-v031-dflash

Qwen3.6-35B-A3B NVFP4 (NVIDIA) + DFlash k=11 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 67.8 tok/s con 1 usuario, 148.6 tok/s en total con 4, carga en 3.4 min, ≈71.8 GB de memoria unificada.

Descarga:

hf download nvidia/Qwen3.6-35B-A3B-NVFP4 --local-dir ~/vllm/qwen3.6-35b-a3b-nvfp4-nvidia
hf download z-lab/Qwen3.6-35B-A3B-DFlash --local-dir ~/vllm/qwen36-dflash

Arranque:

docker run -d \
  --name qwen36-35b-a3b-nvfp4-rapida-v031-dflash \
  --gpus all \
  --ipc host \
  --shm-size 64g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_TARGET_DEVICE=cuda \
  -e VLLM_TEST_FORCE_FP8_MARLIN=1 \
  -e VLLM_MARLIN_USE_ATOMIC_ADD=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/qwen3.6-35b-a3b-nvfp4-nvidia \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen3.6-35b-a3b \
  --trust-remote-code \
  --attention-backend=flashinfer \
  --moe-backend=marlin \
  --max-num-batched-tokens=32768 \
  --enable-chunked-prefill \
  --async-scheduling \
  --enable-prefix-caching \
  '--limit-mm-per-prompt={"image":4}' \
  --load-format=fastsafetensors \
  --enable-auto-tool-choice \
  --tool-call-parser=qwen3_coder \
  --reasoning-parser=qwen3 \
  '--speculative-config={"method":"dflash","model":"/vllm/qwen36-dflash","num_speculative_tokens":11}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.6

nim-gpt-oss-20b

GPT-OSS-20B · NIM oficial · estado: verificada (estable)

Medido el 2026-10-06: 62.8 tok/s con 1 usuario, 151.4 tok/s en total con 4, carga en 4.8 min, ≈33.0 GB de memoria unificada.

Descarga:

docker pull nvcr.io/nim/openai/gpt-oss-20b:2.0.9  # NIM: downloads weights on first start (needs NGC_API_KEY)

Arranque:

docker run -d \
  --name nim-gpt-oss-20b \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e NIM_SERVED_MODEL_NAME=gpt-oss-20b \
  -e NGC_API_KEY \
  -v "$HOME/.cache/nim:/opt/nim/.cache" \
  nvcr.io/nim/openai/gpt-oss-20b:2.0.9 \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.3

gpt-oss-20b-eagle3-v031

GPT-OSS-20B (MXFP4) + Eagle3 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 59.4 tok/s con 1 usuario, 144.7 tok/s en total con 4, carga en 2.7 min, ≈38.4 GB de memoria unificada.

Descarga:

hf download RedHatAI/gpt-oss-20b-speculator.eagle3 --local-dir ~/vllm/gpt-oss-20b-eagle3

Arranque:

docker run -d \
  --name gpt-oss-20b-eagle3-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/gpt-oss-20b-eagle3-v031 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name gpt-oss-20b \
  --attention-backend=TRITON_ATTN \
  --enable-prefix-caching \
  '--speculative-config={"method":"eagle3","model":"/vllm/gpt-oss-20b-eagle3","num_speculative_tokens":3}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.35

nemotron3-nano-omni-nvfp4-v031

Nemotron 3 Nano Omni 30B-A3B NVFP4 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 58.8 tok/s con 1 usuario, 184.6 tok/s en total con 4, carga en 4.1 min, ≈43.6 GB de memoria unificada.

Descarga:

hf download nvidia/Nemotron-3-Nano-Omni-30B-A3B-Reasoning-NVFP4 --local-dir ~/vllm/nemotron3-nano-omni-30b-a3b-reasoning-nvfp4

Arranque:

docker run -d \
  --name nemotron3-nano-omni-nvfp4-v031 \
  --gpus all \
  --ipc host \
  --shm-size 64g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/nemotron3-nano-omni-30b-a3b-reasoning-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name nemotron-3-nano-omni \
  --chat-template=/vllm/nemotron3-nano-omni-30b-a3b-reasoning-nvfp4/chat_template.jinja \
  --tool-call-parser=qwen3_coder \
  --enable-auto-tool-choice \
  --reasoning-parser=nemotron_v3 \
  --quantization=modelopt_fp4 \
  --moe-backend=marlin \
  --max-num-batched-tokens=8192 \
  --enable-prefix-caching \
  --mamba-cache-mode=align \
  --trust-remote-code \
  --enable-chunked-prefill \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.4

gemma4-26b-a4b-nvfp4-mtp-v031

Gemma 4 26B-A4B NVFP4 + drafter MTP oficial · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 56.5 tok/s con 1 usuario, 186.6 tok/s en total con 4, carga en 4.8 min, ≈45.1 GB de memoria unificada.

Descarga:

hf download nvidia/Gemma-4-26B-A4B-NVFP4 --local-dir ~/vllm/gemma4-26b-a4b-nvfp4
hf download google/gemma-4-26B-A4B-it-assistant --local-dir ~/vllm/gemma4-26b-a4b-assistant

Arranque:

docker run -d \
  --name gemma4-26b-a4b-nvfp4-mtp-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_NVFP4_GEMM_BACKEND=marlin \
  -e VLLM_USE_FLASHINFER_MOE_FP4=0 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/gemma4-26b-a4b-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name gemma-4-26b-a4b \
  --enable-prefix-caching \
  --max-num-batched-tokens=8192 \
  '--speculative-config={"method":"mtp","model":"/vllm/gemma4-26b-a4b-assistant","num_speculative_tokens":3}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.4

nim-nemotron3-nano-omni-30b

Nemotron 3 Nano Omni 30B-A3B · NIM oficial · estado: verificada (estable)

Medido el 2026-10-06: 56.0 tok/s con 1 usuario, 161.3 tok/s en total con 4, carga en 6.7 min, ≈62.7 GB de memoria unificada.

Descarga:

docker pull nvcr.io/nim/nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:2.0.13  # NIM: downloads weights on first start (needs NGC_API_KEY)

Arranque:

docker run -d \
  --name nim-nemotron3-nano-omni-30b \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e NIM_SERVED_MODEL_NAME=nemotron-3-nano-omni \
  -e NGC_API_KEY \
  -v "$HOME/.cache/nim:/opt/nim/.cache" \
  nvcr.io/nim/nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:2.0.13 \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.55

gpt-oss-120b-v031

GPT-OSS-120B (MXFP4) · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 44.4 tok/s con 1 usuario, 124.9 tok/s en total con 4, carga en 9.3 min, ≈80.5 GB de memoria unificada.

Descarga:

hf download openai/gpt-oss-120b --local-dir ~/vllm/gpt-oss-120b-v031

Arranque:

docker run -d \
  --name gpt-oss-120b-v031 \
  --gpus all \
  --ipc host \
  --shm-size 32g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/gpt-oss-120b-v031 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name gpt-oss-120b \
  --enable-prefix-caching \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.7

gpt-oss-120b-eagle3-v031

GPT-OSS-120B (MXFP4) + Eagle3 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 40.5 tok/s con 1 usuario, 91.8 tok/s en total con 4, carga en 9.2 min, ≈87.5 GB de memoria unificada.

Descarga:

hf download nvidia/gpt-oss-120b-Eagle3-long-context --local-dir ~/vllm/gpt-oss-120b-eagle3-long

Arranque:

docker run -d \
  --name gpt-oss-120b-eagle3-v031 \
  --gpus all \
  --ipc host \
  --shm-size 32g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/gpt-oss-120b-eagle3-v031 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name gpt-oss-120b \
  --attention-backend=TRITON_ATTN \
  --enable-prefix-caching \
  '--speculative-config={"method":"eagle3","model":"/vllm/gpt-oss-120b-eagle3-long","num_speculative_tokens":3}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.75

gemma4-26b-a4b-nvfp4-v031

Gemma 4 26B-A4B NVFP4 (NVIDIA) · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 30.8 tok/s con 1 usuario, 114.0 tok/s en total con 4, carga en 4.3 min, ≈39.9 GB de memoria unificada.

Descarga:

hf download nvidia/Gemma-4-26B-A4B-NVFP4 --local-dir ~/vllm/gemma4-26b-a4b-nvfp4

Arranque:

docker run -d \
  --name gemma4-26b-a4b-nvfp4-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_NVFP4_GEMM_BACKEND=marlin \
  -e VLLM_USE_FLASHINFER_MOE_FP4=0 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/gemma4-26b-a4b-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name gemma-4-26b-a4b \
  --enable-prefix-caching \
  --max-num-batched-tokens=8192 \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.35

gemma4-26b-a4b-nvfp4

Gemma 4 26B-A4B NVFP4 (NVIDIA) · vLLM · estado: verificada (estable)

Medido el 2026-10-06: 30.7 tok/s con 1 usuario, 108.5 tok/s en total con 4, carga en 3.8 min, ≈39.4 GB de memoria unificada.

Descarga:

hf download nvidia/Gemma-4-26B-A4B-NVFP4 --local-dir ~/vllm/gemma4-26b-a4b-nvfp4

Arranque:

docker run -d \
  --name gemma4-26b-a4b-nvfp4 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_NVFP4_GEMM_BACKEND=marlin \
  -e VLLM_USE_FLASHINFER_MOE_FP4=0 \
  vllm/vllm-openai:gemma4-0505-cu130 \
  /vllm/gemma4-26b-a4b-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name gemma-4-26b-a4b \
  --enable-prefix-caching \
  --max-num-batched-tokens=8192 \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.35

qwen38-flash-next

Qwen3.8-Flash-Next NVFP4 (RadixArk) en vLLM con MTP — contexto largo 256K · estado: verificada (estable)

Medido el 2026-10-06: 26.8 tok/s con 1 usuario, 52.5 tok/s en total con 4, carga en 13.8 min, ≈95.7 GB de memoria unificada.

Descarga:

hf download RadixArk/Qwen3.8-Flash-Next-NVFP4  # served from the Hugging Face cache

Arranque:

docker run -d \
  --name qwen38-flash-next \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_ALLOW_LONG_MAX_MODEL_LEN=0 \
  -e VLLM_PLE_MMAP=1 \
  -e VLLM_PLE_MMAP_WORKERS=32 \
  -e VLLM_PLE_MMAP_PREWARM=0 \
  -e VLLM_QSA_EXACT_TOPK=1 \
  -e VLLM_USE_FLASHINFER_SAMPLER=1 \
  qwen38-flash-dgx:latest \
  /root/.cache/huggingface/hub/models--RadixArk--Qwen3.8-Flash-Next-NVFP4/snapshots/7b719225242aacd3dbd3f9407468c2ee9a9d2594 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen3.8-flash-next \
  --load-format=safetensors \
  --enable-prefix-caching \
  --enable-chunked-prefill \
  --max-num-batched-tokens=8192 \
  -cc.cudagraph_mode=PIECEWISE \
  '-cc.splitting_ops=["vllm::unified_attention_with_output","vllm::unified_mla_attention_with_output","vllm::mamba_mixer2","vllm::mamba_mixer","vllm::short_conv","vllm::qwen3_8_flash_next_ple_short_conv","vllm::qwen3_8_flash_next_qsa_with_output","vllm::linear_attention","vllm::qwen_gdn_attention_core","vllm::qwen_gdn_attention_core_fused_norm_packed","vllm::sparse_attn_indexer","vllm::ple_mmap_lookup"]' \
  --no-enable-flashinfer-autotune \
  --enable-auto-tool-choice \
  --tool-call-parser=qwen3_coder \
  --reasoning-parser=qwen3 \
  '--speculative-config={"method":"mtp","num_speculative_tokens":2}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.8

nim-llama31-8b

Llama 3.1 8B Instruct · NIM oficial · estado: verificada (estable)

Medido el 2026-10-06: 26.4 tok/s con 1 usuario, 102.3 tok/s en total con 4, carga en 5.1 min, ≈33.6 GB de memoria unificada.

Descarga:

docker pull nvcr.io/nim/meta/llama-3.1-8b-instruct:2.0.9  # NIM: downloads weights on first start (needs NGC_API_KEY)

Arranque:

docker run -d \
  --name nim-llama31-8b \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e NIM_SERVED_MODEL_NAME=llama-3.1-8b \
  -e NGC_API_KEY \
  -v "$HOME/.cache/nim:/opt/nim/.cache" \
  nvcr.io/nim/meta/llama-3.1-8b-instruct:2.0.9 \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.3

qwen3-8b-fp8-v031

Qwen3-8B FP8 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 23.2 tok/s con 1 usuario, 95.7 tok/s en total con 4, carga en 2.8 min, ≈55.5 GB de memoria unificada.

Descarga:

hf download Qwen/Qwen3-8B-FP8 --local-dir ~/vllm/qwen3-8b-fp8-v031

Arranque:

docker run -d \
  --name qwen3-8b-fp8-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_ALLOW_LONG_MAX_MODEL_LEN=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/qwen3-8b-fp8-v031 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen3-8b \
  --enable-prefix-caching \
  --enable-auto-tool-choice \
  --tool-call-parser=hermes \
  --reasoning-parser=qwen3 \
  '--hf-overrides={"rope_parameters":{"rope_type":"yarn","factor":4.0,"original_max_position_embeddings":32768,"rope_theta":1000000},"max_position_embeddings":131072}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.5

nemotron3-super-120b-nvfp4-mtp-v031

Nemotron 3 Super 120B-A12B NVFP4 + MTP k=3 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 23.0 tok/s con 1 usuario, 57.0 tok/s en total con 4, carga en 13.4 min, ≈95.2 GB de memoria unificada.

Descarga:

hf download nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-NVFP4 --local-dir ~/vllm/nemotron3-super-120b-a12b-nvfp4

Arranque:

docker run -d \
  --name nemotron3-super-120b-nvfp4-mtp-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_NVFP4_GEMM_BACKEND=marlin \
  -e VLLM_USE_FLASHINFER_MOE_FP4=0 \
  -e VLLM_ALLOW_LONG_MAX_MODEL_LEN=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/nemotron3-super-120b-a12b-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name nemotron-3-super \
  --enable-prefix-caching \
  --trust-remote-code \
  '--speculative-config={"method":"mtp","num_speculative_tokens":3,"moe_backend":"triton"}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.8

qwen38-27b-nvfp4-mtp-v031

Qwen3.8-27B NVFP4 + MTP k=2 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 19.0 tok/s con 1 usuario, 67.0 tok/s en total con 4, carga en 7.7 min, ≈59.5 GB de memoria unificada.

Descarga:

hf download unsloth/Qwen3.8-27B-NVFP4 --local-dir ~/vllm/qwen3.8-27b-nvfp4

Arranque:

docker run -d \
  --name qwen38-27b-nvfp4-mtp-v031 \
  --gpus all \
  --ipc host \
  --shm-size 64g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_TARGET_DEVICE=cuda \
  -e VLLM_FLOAT32_MATMUL_PRECISION=high \
  -e CUTE_DSL_ARCH=sm_121a \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/qwen3.8-27b-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen3.8-27b \
  --max-num-batched-tokens=16384 \
  --enable-prefix-caching \
  --reasoning-parser=qwen3 \
  --tool-call-parser=qwen3_xml \
  --enable-auto-tool-choice \
  --limit-mm-per-prompt.image=2 \
  --limit-mm-per-prompt.video=0 \
  '--speculative-config={"method":"mtp","num_speculative_tokens":2}' \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.5

nemotron3-super-120b-nvfp4-v031

Nemotron 3 Super 120B-A12B NVFP4 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 16.1 tok/s con 1 usuario, 42.8 tok/s en total con 4, carga en 10.3 min, ≈94.3 GB de memoria unificada.

Descarga:

hf download nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-NVFP4 --local-dir ~/vllm/nemotron3-super-120b-a12b-nvfp4

Arranque:

docker run -d \
  --name nemotron3-super-120b-nvfp4-v031 \
  --gpus all \
  --ipc host \
  --shm-size 16g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_NVFP4_GEMM_BACKEND=marlin \
  -e VLLM_USE_FLASHINFER_MOE_FP4=0 \
  -e VLLM_ALLOW_LONG_MAX_MODEL_LEN=1 \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/nemotron3-super-120b-a12b-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name nemotron-3-super \
  --enable-prefix-caching \
  --trust-remote-code \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.8

qwen38-27b-nvfp4-dspark-v031

Qwen3.8-27B NVFP4 + DSpark k=14 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 12.5 tok/s con 1 usuario, 33.9 tok/s en total con 4, carga en 8.8 min, ≈63.6 GB de memoria unificada.

Descarga:

hf download unsloth/Qwen3.8-27B-NVFP4 --local-dir ~/vllm/qwen3.8-27b-nvfp4
hf download Doopeworld/Qwen3.8-27B-DSpark-vLLM --local-dir ~/vllm/qwen3.8-dspark

Arranque:

docker run -d \
  --name qwen38-27b-nvfp4-dspark-v031 \
  --gpus all \
  --ipc host \
  --shm-size 64g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_TARGET_DEVICE=cuda \
  -e VLLM_FLOAT32_MATMUL_PRECISION=high \
  -e CUTE_DSL_ARCH=sm_121a \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/qwen3.8-27b-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen3.8-27b \
  --max-num-batched-tokens=16384 \
  --enable-prefix-caching \
  '--speculative-config={"method":"dspark","model":"/vllm/qwen3.8-dspark","num_speculative_tokens":14,"draft_sample_method":"probabilistic"}' \
  --reasoning-parser=qwen3 \
  --tool-call-parser=qwen3_xml \
  --enable-auto-tool-choice \
  --limit-mm-per-prompt.image=2 \
  --limit-mm-per-prompt.video=0 \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.55

qwen38-27b-nvfp4-base-v031

Qwen3.8-27B NVFP4 · vLLM 0.31.0 · estado: verificada (estable)

Medido el 2026-10-06: 11.0 tok/s con 1 usuario, 39.6 tok/s en total con 4, carga en 6.6 min, ≈47.0 GB de memoria unificada.

Descarga:

hf download unsloth/Qwen3.8-27B-NVFP4 --local-dir ~/vllm/qwen3.8-27b-nvfp4

Arranque:

docker run -d \
  --name qwen38-27b-nvfp4-base-v031 \
  --gpus all \
  --ipc host \
  --shm-size 64g \
  -p 8000:8000 \
  -v "$HOME/.cache/huggingface:/root/.cache/huggingface" \
  -v "$HOME/vllm:/vllm:ro" \
  -e HF_HUB_OFFLINE=1 \
  -e VLLM_TARGET_DEVICE=cuda \
  -e VLLM_FLOAT32_MATMUL_PRECISION=high \
  -e CUTE_DSL_ARCH=sm_121a \
  vllm/vllm-openai:v0.31.0-aarch64 \
  /vllm/qwen3.8-27b-nvfp4 \
  --host 0.0.0.0 \
  --port 8000 \
  --served-model-name qwen3.8-27b \
  --max-num-batched-tokens=16384 \
  --enable-prefix-caching \
  --reasoning-parser=qwen3 \
  --tool-call-parser=qwen3_xml \
  --enable-auto-tool-choice \
  --limit-mm-per-prompt.image=2 \
  --limit-mm-per-prompt.video=0 \
  --max-model-len=131072 \
  --max-num-seqs=4 \
  --kv-cache-dtype=fp8 \
  --gpu-memory-utilization=0.4