recipe.toml 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. engine = "vllm"
  2. name = "MiniMax M3 NVFP (vLLM)"
  3. docker_image = "vllm/vllm-openai:minimax-m3"
  4. model = "Mapika/MiniMax-M3-NVFP4"
  5. parent_model = "MiniMaxAI/MiniMax-M3"
  6. required_nodes = 4
  7. tensor_parallel_size = 4
  8. pipeline_parallel_size = 1
  9. distributed_backend = "mp"
  10. # NVFP4 quantized MiniMax M3 (~440B params, ~23B active).
  11. # 4 nodes × 1 GPU (DGX Spark GB10 Blackwell), TP=4 across nodes.
  12. # MSA sparse attention requires --block-size 128.
  13. # Text-only mode skips the vision encoder to save VRAM.
  14. #entrypoint = ["vllm", "serve"]
  15. args = [
  16. "--block-size", "128",
  17. "--kv-cache-dtype", "fp8",
  18. "--gpu-memory-utilization", "0.85",
  19. "--load-format", "safetensors",
  20. "--enable-prefix-caching",
  21. "--tool-call-parser", "minimax_m3",
  22. "--reasoning-parser", "minimax_m3",
  23. "--enable-auto-tool-choice",
  24. "--language-model-only",
  25. "--enable-expert-parallel",
  26. "--trust-remote-code",
  27. "--served-model-name", "minimax-m3", "default",
  28. ]
  29. [env]
  30. # M3 supports thinking via chat_template_kwargs.thinking_mode
  31. # enabled / adaptive / disabled — pass per-request in extra_body
  32. SAFETENSORS_FAST_GPU = "1"
  33. VLLM_ALLOW_LONG_MAX_MODEL_LEN = "1"
  34. VLLM_USE_B12X_MOE = "1"