> For the complete documentation index, see [llms.txt](https://docs.clore.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.clore.ai/guides/guides_v2-ru/yazykovye-modeli/mimo-v2-flash.md).

# MiMo-V2-Flash

> MiMo-V2-Flash — это **смесь-экспертов (Mixture-of-Experts) с 309 миллиардами параметров** языковая модель, которая активирует 15B параметров на токен. Построенная с использованием продвинутого спекулятивного декодирования (EAGLE/MTP), она обеспечивает **150+ токенов/секунду** на 8×H100 при сохранении передовых показателей. Выпущена под **лицензией MIT**, она представляет собой передовой рубеж эффективного масштабного вывода.

## Кратко

* **Размер модели**: 309B всего / 15B активных параметров (MoE)
* **Лицензия**: MIT (полностью коммерческая)
* **Контекст**: 32K токенов
* **Производительность**: Передовые результаты на бенчмарках по рассуждению
* **VRAM**: \~320GB FP16 (минимум 4×A100 80GB)
* **Скорость**: 150+ ток/с на 8×H100 со спекулятивным декодированием

## Почему MiMo-V2-Flash?

**Прорывная скорость**: MiMo-V2-Flash достигает беспрецедентной скорости вывода благодаря EAGLE (Extrapolation Algorithm for Greater Language model Efficiency) и MTP (Multi-Token Prediction). В то время как традиционные модели генерируют по одному токену за раз, MiMo-V2 предсказывает и проверяет несколько токенов параллельно.

**Готовность к продакшну**: При 309B параметров MiMo-V2-Flash конкурирует с крупнейшими передовыми моделями, оставаясь при этом развёртываемой на реалистичных конфигурациях железа. 15B активных параметров обеспечивают эффективный вывод несмотря на огромное количество параметров.

**Продвинутая архитектура**: Помимо стандартного MoE, MiMo-V2-Flash нативно интегрирует спекулятивное декодирование в архитектуру модели. Это не пост-тренировочная оптимизация — это заложено в основу, что обеспечивает гарантированные ускорения.

**Качество на уровне предприятия**: Лицензирование MIT без ограничений на использование. Разворачивайте в масштабе, дообучайте или интегрируйте в коммерческие продукты без лицензионных проблем.

## Рекомендации по GPU

| Конфигурация    | VRAM  | Производительность | Ежедневная стоимость\* |
| --------------- | ----- | ------------------ | ---------------------- |
| **4×A100 80GB** | 320GB | \~80 ток/с         | \~$16.00               |
| **8×A100 40GB** | 320GB | \~70 ток/с         | \~$28.00               |
| **2×H100**      | 160GB | \~90 ток/с         | \~$12.00               |
| **8×H100**      | 640GB | **150+ ток/с**     | \~$48.00               |
| 4×H200          | 564GB | \~120 ток/с        | \~$32.00               |

**Лучшая ценность**: 4×A100 80GB обеспечивает отличное соотношение производительности и цены. **Максимальная производительность**: 8×H100 раскрывает весь потенциал спекулятивного декодирования.

\*Оценочные цены на маркетплейсе Clore.ai

## Развёртывание с SGLang (рекомендуется)

SGLang обеспечивает лучшую поддержку функций спекулятивного декодирования MiMo-V2-Flash:

### Установите SGLang

```bash
pip install "sglang[all]>=0.3.0"
# или последняя версия
pip install git+https://github.com/sgl-project/sglang.git
```

### Многопроцессорная настройка с MTP

```bash
python -m sglang.launch_server \
  --model-path mimo-ai/MiMo-V2-Flash \
  --tp-size 8 \
  --enable-mtp \
  --mtp-max-draft-tokens 8 \
  --mtp-acceptance-rate 0.8 \
  --mem-fraction-static 0.85 \
  --dtype float16 \
  --context-length 32768 \
  --served-model-name mimo-v2-flash
```

### Запрос через OpenAI API

```python
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:30000/v1", 
    api_key="EMPTY"
)

response = client.chat.completions.create(
    model="mimo-v2-flash",
    messages=[
        {"role": "system", "content": "You are an expert AI researcher."},
        {"role": "user", "content": "Explain the EAGLE speculative decoding algorithm and why it enables faster inference"}
    ],
    max_tokens=1024,
    temperature=0.7,
    stream=True  # Рекомендуется для минимальной задержки
)

for chunk in response:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end='', flush=True)
```

## Развёртывание с vLLM

vLLM также поддерживает MiMo-V2-Flash со спекулятивным декодированием:

```bash
pip install vllm>=0.6.0

vllm serve mimo-ai/MiMo-V2-Flash \
  --tensor-parallel-size 8 \
  --speculative-model mimo-ai/MiMo-V2-Flash-Draft \
  --speculative-max-model-len 32768 \
  --speculative-draft-tensor-parallel-size 2 \
  --use-v2-block-manager \
  --dtype float16 \
  --served-model-name mimo-v2-flash \
  --trust-remote-code
```

## Шаблон Docker

```dockerfile
FROM nvidia/cuda:12.1-devel-ubuntu22.04

# Установите зависимости
RUN apt-get update && \
    apt-get install -y python3.10 python3-pip git && \
    rm -rf /var/lib/apt/lists/*

# Установите SGLang с поддержкой MTP
RUN pip install "sglang[all]>=0.3.0" transformers

# Установите переменные окружения
ENV PYTHONUNBUFFERED=1
ENV CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7

# Предварительная загрузка модели (опционально, экономит время запуска)
# RUN python3 -c "from transformers import AutoModel; AutoModel.from_pretrained('mimo-ai/MiMo-V2-Flash', trust_remote_code=True)"

EXPOSE 30000

CMD ["python", "-m", "sglang.launch_server", \
     "--model-path", "mimo-ai/MiMo-V2-Flash", \
     "--host", "0.0.0.0", \
     "--port", "30000", \
     "--tp-size", "8", \
     "--enable-mtp", \
     "--mtp-max-draft-tokens", "8", \
     "--dtype", "float16"]
```

Запуск со всеми GPU:

```bash
docker build -t mimo-v2-flash .
docker run --gpus all -p 30000:30000 \
  --shm-size=64g \
  --ulimit memlock=-1 \
  --ulimit stack=67108864 \
  mimo-v2-flash
```

## Продвинутая настройка

### Оптимизация спекулятивного декодирования

Дообучайте параметры спекуляции в зависимости от рабочей нагрузки:

```bash
# Для генерации кода (более высокий уровень принятия)
python -m sglang.launch_server \
  --model-path mimo-ai/MiMo-V2-Flash \
  --tp-size 8 \
  --enable-mtp \
  --mtp-max-draft-tokens 12 \
  --mtp-acceptance-rate 0.9 \
  --temperature 0.1

# Для творческого письма (ниже уровень принятия)
python -m sglang.launch_server \
  --model-path mimo-ai/MiMo-V2-Flash \
  --tp-size 8 \
  --enable-mtp \
  --mtp-max-draft-tokens 6 \
  --mtp-acceptance-rate 0.7 \
  --temperature 0.8
```

### Оптимизация памяти

Для конфигураций с ограниченной памятью:

```bash
# Снизьте использование памяти (медленнее, но помещается на 4×A100)
python -m sglang.launch_server \
  --model-path mimo-ai/MiMo-V2-Flash \
  --tp-size 4 \
  --mem-fraction-static 0.75 \
  --context-length 16384 \
  --dtype float16 \
  --disable-cuda-graph  # Экономит VRAM
```

## Пример бенчмарка

Проверьте преимущество скорости MiMo-V2-Flash:

```python
import time
from openai import OpenAI

client = OpenAI(base_url="http://localhost:30000/v1", api_key="EMPTY")

def benchmark_generation():
    start_time = time.time()
    
    response = client.chat.completions.create(
        model="mimo-v2-flash",
        messages=[
            {"role": "user", "content": "Write a detailed explanation of quantum computing in exactly 500 words"}
        ],
        max_tokens=600,
        temperature=0.1,
        stream=False
    )
    
    end_time = time.time()
    content = response.choices[0].message.content
    
    tokens = len(content.split())  # Приблизительная оценка токенов
    duration = end_time - start_time
    tokens_per_second = tokens / duration
    
    print(f"Generated {tokens} tokens in {duration:.2f}s")
    print(f"Speed: {tokens_per_second:.1f} tokens/second")
    
    return tokens_per_second

# Запустить бенчмарк
speed = benchmark_generation()
print(f"\nMiMo-V2-Flash achieved {speed:.1f} tok/s")
```

## Советы для пользователей Clore.ai

* **Необходимость Multi-GPU**: MiMo-V2-Flash требует минимум 4×A100 80GB. Развёртывание на одном GPU нецелесообразно.
* **Преимущество NVLink**: Выбирайте хосты Clore.ai с NVLink между GPU для оптимальной коммуникации в многопроцессорной конфигурации.
* **Требования к RAM**: Обеспечьте 256GB+ системной ОЗУ для плавной работы с 8 GPU.
* **Настройка спекуляции**: Отрегулируйте `mtp-max-draft-tokens` в зависимости от вашего случая использования — выше для повторяющихся задач, ниже для творческих задач.
* **Длина контекста**: 32K контекста оптимальна. Более длинные контексты уменьшают эффективность спекулятивного декодирования.

## Устранение неполадок

| Проблема                       | Решение                                                                            |
| ------------------------------ | ---------------------------------------------------------------------------------- |
| `OutOfMemoryError` при запуске | Уменьшите `mem-fraction-static` или `tp-size`                                      |
| Медленная меж-GPU коммуникация | Проверьте NVLink: `nvidia-ml-py3` или `nvidia-smi topo -m`                         |
| MTP не ускоряет                | Проверьте `mtp-acceptance-rate` — слишком высокие значения отключают спекуляцию    |
| Таймаут при загрузке модели    | Предварительная загрузка: `huggingface-cli download mimo-ai/MiMo-V2-Flash`         |
| Плохое принятие токенов        | Проверьте настройки температуры — слишком низкие/высокие значения снижают принятие |

## Сравнение производительности

| Модель            | Размер   | Скорость (8×H100) | Качество |
| ----------------- | -------- | ----------------- | -------- |
| GPT-4 Turbo       | \~1.7T   | \~15-25 ток/с     | ★★★★★    |
| Claude Sonnet 3.5 | \~200B   | \~25-35 ток/с     | ★★★★★    |
| **MiMo-V2-Flash** | **309B** | **150+ ток/с**    | ★★★★☆    |
| Llama 3.1 405B    | 405B     | \~30-45 ток/с     | ★★★★☆    |

MiMo-V2-Flash достигает ускорения в 3–5× по сравнению с сопоставимыми моделями при сохранении конкурентного качества.

## Ресурсы

* [MiMo-V2-Flash на Hugging Face](https://huggingface.co/mimo-ai/MiMo-V2-Flash)
* [Статья EAGLE](https://arxiv.org/abs/2401.15077)
* [Документация SGLang](https://sgl-project.github.io/start/install.html)
* [Multi-Token Prediction](https://arxiv.org/abs/2404.19737)
* [Руководство по спекулятивному декодированию](https://huggingface.co/blog/assisted-generation)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.clore.ai/guides/guides_v2-ru/yazykovye-modeli/mimo-v2-flash.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
