MiniMax-M3-GGUF / README.md
bartowski's picture
Update README.md
2ee48e5 verified
|
Raw
History Blame Contribute Delete
11.7 kB
---
quantized_by: bartowski
pipeline_tag: image-text-to-text
license_link: LICENSE
tags:
- multimodal
- moe
- agent
- coding
- video
base_model_relation: quantized
license: other
license_name: minimax-community
base_model: MiniMaxAI/MiniMax-M3
---
## Llamacpp imatrix Quantizations of MiniMax-M3 by MiniMaxAI
Using <a href="https://github.com/ggml-org/llama.cpp/">llama.cpp</a> release <a href="https://github.com/ggml-org/llama.cpp/releases/tag/b10141">b10141</a> for quantization.
Original model: https://huggingface.co/MiniMaxAI/MiniMax-M3
**Model details:**
- Parameter count: 427B
- Input support: text, image (with mmproj file) - [details](#multimodal)
- MTP: no
- imatrix: yes - [details](#imatrix)
[How to run](#how-to-run)
## Prompt format
```
]~!b[]~b]system
Your model version is MiniMax-M3, developed by MiniMax. Knowledge cutoff: January 2026. Founded in early 2022, MiniMax is a global AI foundation model company committed to advancing the frontiers of AI towards AGI.
<thinking_instructions>
You have a thinking capability that allows you to reason step by step before responding. When thinking is enabled, wrap your reasoning in <mm:think></mm:think> tags before your response. When thinking is disabled, begin your response directly after the </mm:think> prefix. When thinking is adaptive, decide on your own whether to think for the current turn.
Current thinking mode: adaptive. You are encouraged to think for complex decision-making, multi-step reasoning, or when analyzing function/tool results.
</thinking_instructions>[e~[
]~b]developer
{system_prompt}[e~[
]~b]user
{prompt}[e~[
]~b]ai
```
**Don't know which to choose?** Grab [Q4_K_M](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q4_K_M) (261.28GB) - usually a good mix of size and performance. Download instructions available [here](#downloading-using-the-hugging-face-cli)
## Available files:
| Filename | Quant type | File Size | Split | Description |
| -------- | ---------- | --------- | ----- | ----------- |
| [MiniMax-M3-Q8_0.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q8_0) | Q8_0 | 453.61GB | true | Extremely high quality, generally unneeded but max available quant. |
| [MiniMax-M3-Q6_K.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q6_K) | Q6_K | 369.40GB | true | Very high quality, near perfect, *recommended*. |
| [MiniMax-M3-Q5_K_M.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q5_K_M) | Q5_K_M | 305.35GB | true | High quality, *recommended*. |
| [MiniMax-M3-Q5_K_S.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q5_K_S) | Q5_K_S | 295.23GB | true | High quality, *recommended*. |
| [MiniMax-M3-Q4_1.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q4_1) | Q4_1 | 268.89GB | true | Legacy format, similar performance to Q4_K_S but with improved tokens/watt on Apple silicon. |
| [MiniMax-M3-Q4_K_M.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q4_K_M) | Q4_K_M | 261.28GB | true | Good quality, default size for most use cases, *recommended*. |
| [MiniMax-M3-Q4_K_S.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q4_K_S) | Q4_K_S | 251.36GB | true | Slightly lower quality with more space savings, *recommended*. |
| [MiniMax-M3-Q4_0.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q4_0) | Q4_0 | 243.64GB | true | Legacy format, kept for compatibility with older tools. |
| [MiniMax-M3-IQ4_NL.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ4_NL) | IQ4_NL | 242.75GB | true | Similar to IQ4_XS, but slightly larger. |
| [MiniMax-M3-IQ4_XS.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ4_XS) | IQ4_XS | 229.69GB | true | Decent quality, smaller than Q4_K_S with similar performance, *recommended*. |
| [MiniMax-M3-Q3_K_XL.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q3_K_XL) | Q3_K_XL | 206.05GB | true | Uses Q8_0 for embed and output weights. Lower quality but usable, good for low RAM availability. |
| [MiniMax-M3-IQ3_M.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ3_M) | IQ3_M | 205.52GB | true | Medium-low quality, new method with decent performance comparable to Q3_K_M. |
| [MiniMax-M3-Q3_K_L.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q3_K_L) | Q3_K_L | 204.97GB | true | Lower quality but usable, good for low RAM availability. |
| [MiniMax-M3-Q3_K_M.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q3_K_M) | Q3_K_M | 196.61GB | true | Low quality. |
| [MiniMax-M3-IQ3_XS.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ3_XS) | IQ3_XS | 196.36GB | true | Lower quality, new method with decent performance, slightly better than Q3_K_S. |
| [MiniMax-M3-Q3_K_S.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q3_K_S) | Q3_K_S | 187.25GB | true | Low quality, not recommended. |
| [MiniMax-M3-IQ3_XXS.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ3_XXS) | IQ3_XXS | 180.01GB | true | Lower quality, new method with decent performance, comparable to Q3 quants. |
| [MiniMax-M3-Q2_K_L.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q2_K_L) | Q2_K_L | 153.09GB | true | Uses Q8_0 for embed and output weights. Very low quality but surprisingly usable. |
| [MiniMax-M3-Q2_K.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-Q2_K) | Q2_K | 151.89GB | true | Very low quality but surprisingly usable. |
| [MiniMax-M3-IQ2_M.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ2_M) | IQ2_M | 145.58GB | true | Relatively low quality, uses SOTA techniques to be surprisingly usable. |
| [MiniMax-M3-IQ2_S.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ2_S) | IQ2_S | 132.14GB | true | Low quality, uses SOTA techniques to be usable. |
| [MiniMax-M3-IQ2_XS.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ2_XS) | IQ2_XS | 129.52GB | true | Low quality, uses SOTA techniques to be usable. |
| [MiniMax-M3-IQ2_XXS.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ2_XXS) | IQ2_XXS | 116.61GB | true | Very low quality, uses SOTA techniques to be usable. |
| [MiniMax-M3-IQ1_M.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ1_M) | IQ1_M | 100.74GB | true | Extremely low quality, *not* recommended. |
| [MiniMax-M3-IQ1_S.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/tree/main/MiniMax-M3-IQ1_S) | IQ1_S | 90.53GB | true | Extremely low quality, *not* recommended. |
## Downloading using the Hugging Face CLI
<details>
<summary>Click to view download instructions</summary>
First, make sure you have the Hugging Face CLI installed:
```
pip install -U "huggingface_hub[cli]"
```
The files marked `true` in the Split column above are stored as multiple parts in a folder. To download all the parts to a local folder, run:
```
hf download bartowski/MiniMax-M3-GGUF --include "MiniMax-M3-Q8_0/*" --local-dir ./
```
You can either specify a new local-dir (MiniMax-M3-Q8_0) or download them all in place (./)
</details>
## How to run
These quants run with [llama.cpp](https://github.com/ggml-org/llama.cpp) - installable in one line via [llama.app](https://llama.app/):
```
curl -LsSf https://llama.app/install.sh | sh
llama-server -hf bartowski/MiniMax-M3-GGUF:Q4_K_M
```
llama-server includes a built-in chat web UI, served at http://localhost:8080 by default.
These quants were made with llama.cpp release b10141 - if this model's architecture is newly supported, you'll need that release or newer to run them.
They also work in: [LM Studio](https://lmstudio.ai/) · [koboldcpp](https://github.com/LostRuins/koboldcpp) · [ramalama](https://github.com/containers/ramalama) · [Jan AI](https://www.jan.ai/) · [Text Generation Web UI](https://github.com/oobabooga/text-generation-webui) · [LoLLMs](https://github.com/ParisNeo/lollms) · [Atomic Chat](https://atomic.chat/)
## Multimodal
This model supports multimodal input. Alongside the quants, this repo includes the multimodal projector files [mmproj-MiniMax-M3-f16.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/blob/main/mmproj-MiniMax-M3-f16.gguf) and [mmproj-MiniMax-M3-bf16.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/blob/main/mmproj-MiniMax-M3-bf16.gguf), which pair with any quant above.
llama.cpp downloads the mmproj automatically when using `-hf` as shown above; if you're loading files manually, pass it with `--mmproj`.
## imatrix
All quants made using imatrix option with dataset from [here](https://gist.github.com/bartowski1182/82ae9b520227f57d79ba04add13d0d0d). The imatrix is available here: [MiniMax-M3-imatrix.gguf](https://huggingface.co/bartowski/MiniMax-M3-GGUF/blob/main/MiniMax-M3-imatrix.gguf).
## Embed/output weights
Some of these quants (Q3_K_XL, Q4_K_L etc) are the standard quantization method with the embeddings and output weights quantized to Q8_0 instead of what they would normally default to.
## ARM/AVX information
llama.cpp automatically "repacks" weights into an interleaved layout at load time for faster inference on ARM and AVX machines - details in [this PR](https://github.com/ggml-org/llama.cpp/pull/9921). This once required downloading special Q4_0_4_4/4_8/8_8 files; those are long gone. Online repacking now covers Q4_0, IQ4_NL, and most K-quants, so no special quant choice is needed for CPU inference.
## Which file should I choose?
<details>
<summary>Click here for details</summary>
An older (early 2024) but still useful write-up with charts comparing quant performances is provided by Artefact2 [here](https://gist.github.com/Artefact2/b5f810600771265fc1e39442288e8ec9)
The first thing to figure out is how big a model you can run. To do this, you'll need to figure out how much RAM and/or VRAM you have.
If you want your model running as FAST as possible, you'll want to fit the whole thing on your GPU's VRAM. Aim for a quant with a file size 1-2GB smaller than your GPU's total VRAM.
If you want the absolute maximum quality, add both your system RAM and your GPU's VRAM together, then similarly grab a quant with a file size 1-2GB Smaller than that total.
Hugging Face can also do this math for you: add your hardware in your [Local Apps settings](https://huggingface.co/settings/local-apps) and the model page will show which files fit.
Next, you'll need to decide if you want to use an 'I-quant' or a 'K-quant'.
If you don't want to think too much, grab one of the K-quants. These are in format 'QX_K_X', like Q5_K_M.
If you want to get more into the weeds, you can check out this extremely useful feature chart:
[llama.cpp feature matrix](https://github.com/ggml-org/llama.cpp/wiki/Feature-matrix)
But basically, if you're aiming for below Q4, and you're running cuBLAS (Nvidia) or rocBLAS (AMD), you should look towards the I-quants. These are in format IQX_X, like IQ3_M. These are newer and offer better performance for their size.
These I-quants can also be used on CPU, but will be slower than their K-quant equivalent, so speed vs performance is a tradeoff you'll have to decide.
</details>
## Credits
Thank you kalomaze and Dampf for assistance in creating the imatrix calibration dataset.
Thank you ZeroWw for the inspiration to experiment with embed/output.
Want to support my work? Visit my ko-fi page here: https://ko-fi.com/bartowski