recipe.toml 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. engine = "vllm"
  2. name = "DeepSeek V4 Flash (vLLM)"
  3. docker_image = "aidendle94/sparkrun-vllm-ds4-gb10:production-v2"
  4. model = "deepseek-ai/DeepSeek-V4-Flash"
  5. required_nodes = 2
  6. tensor_parallel_size = 2
  7. pipeline_parallel_size = 1
  8. distributed_backend = "mp"
  9. # --privileged makes --shm-size redundant; kept for documentation
  10. # shm_size = "64gb"
  11. entrypoint = ["vllm", "serve"]
  12. args = [
  13. "--kv-cache-dtype", "fp8",
  14. "--block-size", "256",
  15. "--max-model-len", "524288",
  16. "--max-num-seqs", "8",
  17. "--max-num-batched-tokens", "8192",
  18. "--enable-chunked-prefill",
  19. "--gpu-memory-utilization", "0.85",
  20. "--compilation-config", """
  21. '{"cudagraph_mode":"FULL_AND_PIECEWISE","custom_ops":["all"]}'""",
  22. "--enable-prefix-caching",
  23. "--load-format", "safetensors",
  24. "--speculative-config", """
  25. '{"method":"mtp","num_speculative_tokens":2}'""",
  26. "--tokenizer-mode", "deepseek_v4",
  27. "--tool-call-parser", "deepseek_v4",
  28. "--enable-auto-tool-choice",
  29. "--reasoning-parser", "deepseek_v4",
  30. "--reasoning-config", """
  31. '{"reasoning_parser":"deepseek_v4","reasoning_start_str":"","reasoning_end_str":""}'""",
  32. "--default-chat-template-kwargs", """
  33. '{"thinking":true,"preserve_thinking":true}'""",
  34. "--default-chat-template-kwargs.reasoning_effort", "high",
  35. "--enable-flashinfer-autotune",
  36. "--trust-remote-code",
  37. "--served-model-name", "deepseek-v4-flash", "default",
  38. ]
  39. [env]
  40. # Ray memory management — prevents OOM during cudagraph compilation
  41. RAY_memory_monitor_refresh_ms = "0"
  42. RAY_num_prestart_python_workers = "0"
  43. RAY_object_store_memory = "1073741824"
  44. # vLLM features for DeepSeek V4 on Blackwell (GB10 / sm_120)
  45. VLLM_ALLOW_LONG_MAX_MODEL_LEN = "1"
  46. VLLM_USE_B12X_MOE = "1"
  47. VLLM_SPARSE_INDEXER_MAX_LOGITS_MB = "256"
  48. # Compile-time arch hints for PyTorch and FlashInfer on GB10
  49. TORCH_CUDA_ARCH_LIST = "12.1a"
  50. FLASHINFER_CUDA_ARCH_LIST = "12.1a"
  51. CUDA_HOME = "/opt/env/targets/sbsa-linux"
  52. FLASHINFER_DISABLE_VERSION_CHECK = "1"
  53. TILELANG_CLEANUP_TEMP_FILES = "1"
  54. DG_JIT_USE_NVRTC = "0"
  55. DG_JIT_PRINT_COMPILER_COMMAND = "1"
  56. VLLM_NCCL_SO_PATH = "/opt/env/lib/python3.12/site-packages/nvidia/nccl/lib/libnccl.so.2"
  57. HF_HUB_OFFLINE = "1"
  58. TRANSFORMERS_OFFLINE = "1"