Image-Text-to-Text
Transformers
Safetensors
mimo_v2
text-generation
Mixture of Experts
pruned
expert-pruning
reap
hope
mxfp4
fp8
multimodal
vision
audio
video
mtp
custom_code
conversational
8-bit precision
Instructions to use patrickbdevaney/MiMo-V2.6-Flash-REAP50 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use patrickbdevaney/MiMo-V2.6-Flash-REAP50 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="patrickbdevaney/MiMo-V2.6-Flash-REAP50", trust_remote_code=True) messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoModelForCausalLM model = AutoModelForCausalLM.from_pretrained("patrickbdevaney/MiMo-V2.6-Flash-REAP50", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use patrickbdevaney/MiMo-V2.6-Flash-REAP50 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "patrickbdevaney/MiMo-V2.6-Flash-REAP50" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "patrickbdevaney/MiMo-V2.6-Flash-REAP50", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/patrickbdevaney/MiMo-V2.6-Flash-REAP50
- SGLang
How to use patrickbdevaney/MiMo-V2.6-Flash-REAP50 with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "patrickbdevaney/MiMo-V2.6-Flash-REAP50" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "patrickbdevaney/MiMo-V2.6-Flash-REAP50", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "patrickbdevaney/MiMo-V2.6-Flash-REAP50" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "patrickbdevaney/MiMo-V2.6-Flash-REAP50", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }' - Docker Model Runner
How to use patrickbdevaney/MiMo-V2.6-Flash-REAP50 with Docker Model Runner:
docker model run hf.co/patrickbdevaney/MiMo-V2.6-Flash-REAP50
Remove stale README_upstream.md draft; card updated (2026-11-06)
Browse files- README.md +0 -1
- README_upstream.md +0 -75
README.md
CHANGED
|
@@ -140,7 +140,6 @@ Code, gates and the method write-ups are in the pipeline repository: [patrickbde
|
|
| 140 |
- **Long context is unverified.** Calibration never saw more than 4,095 tokens, and the 1M figure is config plus memory arithmetic.
|
| 141 |
- **Multimodal inputs are untested.** The towers are unchanged, and the calibration fed real image, audio and video through them. No multimodal output from the pruned model has been checked.
|
| 142 |
- **Draft heads.** The base repo's separate `dflash/` speculative-decoding drafter is **not** included: it was trained against the unpruned model, and nobody has checked it against this one. The 3 native MTP layers are included unchanged; their acceptance rate on the pruned trunk has not been measured.
|
| 143 |
-
- `README_upstream.md` in this repo is an early draft of this card, not Xiaomi's model card. Some of its wording (for example "fits and serves") was never verified. Use this README instead.
|
| 144 |
- Calibration covered the nine domains above. Other domains and languages were not measured.
|
| 145 |
|
| 146 |
## Changelog / corrections
|
|
|
|
| 140 |
- **Long context is unverified.** Calibration never saw more than 4,095 tokens, and the 1M figure is config plus memory arithmetic.
|
| 141 |
- **Multimodal inputs are untested.** The towers are unchanged, and the calibration fed real image, audio and video through them. No multimodal output from the pruned model has been checked.
|
| 142 |
- **Draft heads.** The base repo's separate `dflash/` speculative-decoding drafter is **not** included: it was trained against the unpruned model, and nobody has checked it against this one. The 3 native MTP layers are included unchanged; their acceptance rate on the pruned trunk has not been measured.
|
|
|
|
| 143 |
- Calibration covered the nine domains above. Other domains and languages were not measured.
|
| 144 |
|
| 145 |
## Changelog / corrections
|
README_upstream.md
DELETED
|
@@ -1,75 +0,0 @@
|
|
| 1 |
-
---
|
| 2 |
-
license: mit
|
| 3 |
-
base_model: XiaomiMiMo/MiMo-V2.6-Flash-RL
|
| 4 |
-
library_name: transformers
|
| 5 |
-
tags:
|
| 6 |
-
- moe
|
| 7 |
-
- pruned
|
| 8 |
-
- reap
|
| 9 |
-
- hope
|
| 10 |
-
- mimo_v2
|
| 11 |
-
- multimodal
|
| 12 |
-
---
|
| 13 |
-
|
| 14 |
-
# MiMo-V2.6-Flash-REAP50
|
| 15 |
-
|
| 16 |
-
`XiaomiMiMo/MiMo-V2.6-Flash-RL` with **50% of its routed experts removed** — 256
|
| 17 |
-
experts per layer down to **128** — so that it fits and serves on a single
|
| 18 |
-
NVIDIA Jetson AGX Thor (117 GiB unified memory). 86.1 GiB across 65 shards.
|
| 19 |
-
|
| 20 |
-
Vision, audio and video input are preserved; `audio_tokenizer/` ships with the checkpoint.
|
| 21 |
-
|
| 22 |
-
## How the experts were chosen
|
| 23 |
-
|
| 24 |
-
Not by activation frequency. Expert saliency was accumulated over a calibration corpus and the
|
| 25 |
-
prune set was solved with **HOPE**, which minimises the output error a prune set actually causes
|
| 26 |
-
including the *interaction* terms between experts — REAP is the same objective with the
|
| 27 |
-
off-diagonal zeroed, and that off-diagonal cannot be recovered after the pass.
|
| 28 |
-
|
| 29 |
-
| setting | value |
|
| 30 |
-
|---|---|
|
| 31 |
-
| objective | `hope` |
|
| 32 |
-
| saliency criterion | `reap_1_1_1` |
|
| 33 |
-
| prune ratio | 0.50, uniform across layers |
|
| 34 |
-
| per-domain protection | top 8% of every domain held out of the prune set |
|
| 35 |
-
| worst domain retained | 0.9935 (audio) |
|
| 36 |
-
| mean retained | 0.9964 |
|
| 37 |
-
| HOPE objective pᵀFp | 0.01624 |
|
| 38 |
-
|
| 39 |
-
Selection is scored per domain and ranked by the **worst** one, never the mean: an average is
|
| 40 |
-
how a criterion that destroys one capability outscores one that preserves all of them.
|
| 41 |
-
|
| 42 |
-
### Retained gated output mass, by calibration domain
|
| 43 |
-
|
| 44 |
-
| domain | retention |
|
| 45 |
-
|---|---|
|
| 46 |
-
| audio | 0.9935 |
|
| 47 |
-
| image | 0.9937 |
|
| 48 |
-
| video | 0.9938 |
|
| 49 |
-
| science | 0.9973 |
|
| 50 |
-
| math | 0.9974 |
|
| 51 |
-
| finance | 0.9974 |
|
| 52 |
-
| ballast | 0.9976 |
|
| 53 |
-
| code | 0.9983 |
|
| 54 |
-
| agentic | 0.9983 |
|
| 55 |
-
|
| 56 |
-
## Routers
|
| 57 |
-
|
| 58 |
-
Pruning an expert leaves its router column behind. The routers were refitted by output matching
|
| 59 |
-
against the unpruned teacher, routers only, every expert frozen: 47 routers refitted; all 47 kept at the teacher weights (the fit did not beat the baseline).
|
| 60 |
-
|
| 61 |
-
A refit that failed to beat the untouched baseline was discarded in favour of the baseline, so
|
| 62 |
-
no router here is worse than simply slicing the teacher's.
|
| 63 |
-
|
| 64 |
-
## Limitations
|
| 65 |
-
|
| 66 |
-
- Calibration was English/Chinese text, code, math, science, finance, agentic traces, and
|
| 67 |
-
image/audio/video captions. Domains outside that mix were not measured.
|
| 68 |
-
- The `dflash/` speculative-decoding draft head from the source repo is **not** included: it was
|
| 69 |
-
trained against the unpruned expert set and is not valid for this checkpoint.
|
| 70 |
-
- Pruned MoE experts do not come back. This is a lossy, irreversible transform of the base model.
|
| 71 |
-
|
| 72 |
-
## Provenance
|
| 73 |
-
|
| 74 |
-
Produced by [patrickbdevaney/xiaomi-2.6-flash-REAP](https://github.com/patrickbdevaney/xiaomi-2.6-flash-REAP)
|
| 75 |
-
on a single Jetson AGX Thor. MIT, inherited from the base model — attribution to Xiaomi MiMo.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|