A working version for DGX Spark

#9
by seddonm1 - opened

Here is a working version for a single user on DGX Spark. Note kv_cache_dtype: fp8 is essential for DFlash.

Using this base:
https://github.com/eugr/spark-vllm-docker

# Recipe: poolside/Laguna-S-2.1-NVFP4
# poolside Laguna-S-2.1 (117.6B total / 8.5B active MoE) in NVFP4 (W4A4) with DFlash
# draft speculation. Fits a single DGX Spark. Requires a recent vLLM (main) build
# with the poolside architecture + dflash speculative method.


recipe_version: "1"
name: Laguna-S-2.1
description: vLLM serving poolside/Laguna-S-2.1-NVFP4 with DFlash speculation

# HuggingFace model to download (optional, for --download-model)
model: poolside/Laguna-S-2.1-NVFP4

# ~80-90GB weights fit one Spark's 128GB unified memory (SWA layers keep the KV small)
solo_only: true

# Container image to use
container: vllm-node

# No mods required
mods: []

# Default settings (can be overridden via CLI)
defaults:
  port: 8000
  host: 0.0.0.0
  tensor_parallel: 1
  gpu_memory_utilization: 0.90
  max_model_len: 262144
  max_num_batched_tokens: 2048
  max_num_seqs: 1
  num_speculative_tokens: 3
  kv_cache_dtype: fp8

# Environment variables
env:
  TORCH_CUDA_ARCH_LIST: 12.1f
  CUTE_DSL_ARCH: sm_121a
  VLLM_USE_FLASHINFER_SAMPLER: "1"
  MAX_JOBS: "4"

# The vLLM serve command template
command: |
  vllm serve poolside/Laguna-S-2.1-NVFP4 \
    --served-model-name poolside/Laguna-S-2.1 \
    --host {host} \
    --port {port} \
    --max-model-len {max_model_len} \
    --max-num-batched-tokens {max_num_batched_tokens} \
    --max-num-seqs {max_num_seqs} \
    --gpu-memory-utilization {gpu_memory_utilization} \
    --tensor-parallel-size {tensor_parallel} \
    --enable-chunked-prefill \
    --enable-prefix-caching \
    --enable-auto-tool-choice \
    --tool-call-parser poolside_v1 \
    --reasoning-parser poolside_v1 \
    --kv-cache-dtype {kv_cache_dtype} \
    --trust-remote-code \
    --speculative-config '{{"method": "dflash", "model": "poolside/Laguna-S-2.1-DFlash-NVFP4", "num_speculative_tokens": {num_speculative_tokens}}}' \
    --default-chat-template-kwargs '{{"enable_thinking": true}}' \
    --override-generation-config '{{"temperature": 0.7, "top_p": 0.95}}'

Sign up or log in to comment