Skip to content

feat: add MiniMax-M3 model support#10837

Open
nandanadileep wants to merge 1 commit into
mudler:masterfrom
nandanadileep:fix/minimax-m3-support
Open

feat: add MiniMax-M3 model support#10837
nandanadileep wants to merge 1 commit into
mudler:masterfrom
nandanadileep:fix/minimax-m3-support

Conversation

@nandanadileep

Copy link
Copy Markdown

Description

Fixes #10820

MiniMax-M3 GGUF models cannot be loaded because the pinned llama.cpp version does not recognize the minimax-m3 architecture.

This PR updates the llama.cpp dependency to include preliminary MiniMax-M3 support via upstream PR ggml-org/llama.cpp#24523, and adds inference parameter defaults for the minimax-m3 model family.

Changes

  1. backend/cpp/llama-cpp/Makefile: Updated the llama.cpp target to fetch a specific refspec (PR ref) in addition to tags. This allows pinning to an unmerged PR branch until upstream merges. Once Preliminary MiniMax-M3 support ggml-org/llama.cpp#24523 is merged, the LLAMA_VERSION can be updated to the merged commit hash.

  2. core/config/inference_defaults.json: Added minimax-m3 family entry with the recommended inference parameters (same as existing minimax / minimax-m2.7 entries: temperature=1.0, top_p=0.95, top_k=40). Added to patterns list before minimax-m2.7 for correct longest-match-first ordering.

Verification

  • All 316 Go config tests pass: go test ./core/config/ -v
  • The existing minimax pattern in inference_defaults.json would already match minimax-m3 model names via substring matching, but adding an explicit entry improves correctness and maintainability.

Notes

  • This is gated on upstream Preliminary MiniMax-M3 support ggml-org/llama.cpp#24523 being merged. Once merged, update LLAMA_VERSION in the Makefile to the merged commit hash and revert the Makefile changes.
  • MiniMax Sparse Attention is not yet supported by upstream llama.cpp (the PR implements dense attention fallback only).
  • Vision/Multimodal support is not included (the upstream PR is text-only).

Assisted-by: Claude:claude-opus-4-8 [WebFetch] [WebSearch] [Task] [Bash] [Edit]

Updates the llama.cpp pinned version to include preliminary MiniMax-M3
support via upstream PR #24523, and adds inference parameter defaults
for the minimax-m3 model family.

Changes:
- backend/cpp/llama-cpp/Makefile: update checkout logic to support
  fetching PR refspecs from the upstream repo. The target now fetches
  all tags plus the specific LLAMA_VERSION refspec, and falls back to
  checking out the version directly if FETCH_HEAD is unavailable.
- core/config/inference_defaults.json: add minimax-m3 family entry
  (temperature=1.0, top_p=0.95, top_k=40, min_p=0.01,
  repeat_penalty=1.0, matching the existing minimax defaults) and
  register it in the patterns list before the shorter minimax-m2.7
  entry for correct longest-match-first ordering.

Upstream: depends on ggml-org/llama.cpp#24523
Closes: mudler#10820
@mudler

mudler commented Jul 15, 2026

Copy link
Copy Markdown
Owner

@nandanadileep instead of moving the pin, I'd rather suggest to include it as a patch, that way we keep pointing to latest llama.cpp

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.

MiniMax-M3 GGUF model cannot be loaded - unknown model architecture 'minimax-m3'

2 participants