Dockerfile 1.3 KB

1234567891011121314151617181920212223242526
  1. # syntax=docker/dockerfile:1
  2. # Mistral Large 4 1T A52B NVFP4 — SGLang day-0 image (thin FROM wrapper).
  3. #
  4. # The official lmsysorg/sglang:mistral-large-4 ships SGLang's day-0 Mistral
  5. # Large 4 support with mistral-common 1.13.0+ (required for the checkpoint's
  6. # tekken.json). SGLang loads the bundled DSpark draft from the checkpoint
  7. # (3 drafted tokens, 4-token verify) without --speculative-draft-model-path.
  8. # On Blackwell/Vera Rubin the latent KV cache defaults to FP8 (E4M3).
  9. #
  10. # The multi-arch manifest covers arm64 — the digest pin below IS the arm64
  11. # variant (the cookbook notes the mistral-large-4 image is amd64 + arm64).
  12. # GB10 (sm_121a) is not in the vendor-verified matrix: first boot on the
  13. # cluster is the real test.
  14. #
  15. # One baked layer (the barrier-timeout patch): the wrapper exists so the
  16. # launcher can stamp its sm121.checksum label and sync the image
  17. # node-to-node like every other lane.
  18. ARG BASE_IMAGE
  19. FROM ${BASE_IMAGE}
  20. # Make the post-load monitored_barrier timeout launcher-tunable (the NVFP4
  21. # boot's per-rank load time varies from ~40 min warm to 3.5 h cold on GB10;
  22. # the stock 480 s barrier murders slow-but-fine ranks). Anchor-based patch,
  23. # see patch_barrier_timeout.py.
  24. COPY patch_barrier_timeout.py /tmp/patch_barrier_timeout.py
  25. RUN python3 /tmp/patch_barrier_timeout.py && rm /tmp/patch_barrier_timeout.py