Skip to content

feat: upgrade MiniMax default model to M3#15

Open
octo-patch wants to merge 1 commit into
scrya-com:mainfrom
octo-patch:feature/upgrade-minimax-m3
Open

feat: upgrade MiniMax default model to M3#15
octo-patch wants to merge 1 commit into
scrya-com:mainfrom
octo-patch:feature/upgrade-minimax-m3

Conversation

@octo-patch

Copy link
Copy Markdown

Summary

Upgrade the MiniMax KV-cache compression validation target to the new flagship MiniMax-M3 while keeping MiniMax-M2.7 available as a fallback. M3 shares the same MoE attention layout (head_dim=128, num_kv_heads=8, num_layers=62, 204K context, GQA 48/8), so the existing IsoQuant / PlanarQuant / LiteratiQuant test surface covers both checkpoints without architecture changes.

Changes

  • turboquant/validate_minimax_m2.py
    • Replace the single MODEL_NAME constant with SUPPORTED_MODELS = ("MiniMax-M3", "MiniMax-M2.7") and DEFAULT_MODEL = "MiniMax-M3".
    • Add --model {MiniMax-M3,MiniMax-M2.7} CLI arg (defaults to M3); thread it through run_model_validation and print_memory_estimate.
    • Update module/function docstrings and CLI help text to mention M3 as the new default.
  • tests/test_minimax_m2.py
    • Refresh docstrings/comments to describe the shared M3 / M2.7 dimensions; no architectural constants or test bodies changed (all 7 test classes, 18 test functions intact).
  • README.md
    • Rename the "## MiniMax-M2.7 Compatibility" section to "## MiniMax-M3 / M2.7 Compatibility" and document --model MiniMax-M2.7 for legacy validation.

Why

MiniMax-M3 is the new flagship in the MiniMaxAI MiniMax family and supersedes M2.7 as the default reference architecture. Surfacing it as the default validation target keeps the project's compatibility story aligned with the latest checkpoint while preserving the M2.7 path so existing users can keep validating against the previous flagship.

Testing

  • python -m py_compile turboquant/validate_minimax_m2.py tests/test_minimax_m2.py — both files parse cleanly.
  • AST inspection confirms the test module still exposes 7 classes / 18 test functions and the validate module exposes the expected SUPPORTED_MODELS, DEFAULT_MODEL, HEAD_DIM, etc.
  • Synthetic benchmark and unit tests are dimension-driven (head_dim=128) and unchanged in logic, so they continue to validate both M3 and M2.7 KV cache compression behavior.

- Add MiniMax-M3 as the new default target for validate_minimax_m2.py
- Keep MiniMax-M2.7 available via --model MiniMax-M2.7 (legacy fallback)
- Refactor MODEL_NAME constant to SUPPORTED_MODELS / DEFAULT_MODEL pair
- Update README compatibility section to highlight M3 as new flagship
  while documenting M2.7 as fallback
- Update test docstrings to reflect M3 / M2.7 dual targeting

The architecture constants (head_dim=128, num_kv_heads=8, num_layers=62)
remain unchanged because the MiniMax-M3 MoE attention layout matches
MiniMax-M2.7, so existing IsoQuant / PlanarQuant block-rotation tests
continue to validate both checkpoints with no code changes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant