# Gemma 4 (26B MoE, 4B активных)

{% hint style="info" %}
**Статус (апрель 2026):** Gemma 4 была выпущена **2 апреля 2026 года** Google как следующее поколение семейства open-weight Gemma. Поставляются две версии: **31B dense** модель (`google/gemma-4-31b-it`) и **26B MoE с \~4B активных параметров** (`google/gemma-4-26b-it`). Оба опубликованы на стандартных условиях **Gemma terms of use** на [huggingface.co/google/gemma-4-26b-it](https://huggingface.co/google/gemma-4-26b-it) и [huggingface.co/google/gemma-4-31b-it](https://huggingface.co/google/gemma-4-31b-it).
{% endhint %}

Gemma 4 — это первый MoE-вариант Google в линейке Gemma и первый релиз Gemma, поднявшийся в верхнюю часть LMSYS Arena (по данным производителя **#3 в общем зачёте на момент релиза**, обойдя несколько закрытых моделей по фактичности и следованию инструкциям). Главный показатель — MoE-версия: **26B всего параметров, \~4B активных на токен**, что даёт почти передовой уровень следования инструкциям при стоимости инференса как у небольшой dense-модели.

Для пользователей Clore.ai практический вывод прост — 26B MoE комфортно работает на одной **RTX 4090 (24GB)** с FP8 или 4-битной квантизацией (\~10 tok/s) и выдаёт производительность уровня продакшена на одной **H100 80GB** (\~40+ tok/s), делая качество Gemma по следованию инструкциям доступным примерно за $0.5–2/день на маркетплейсе. 31B dense-вариант — более способный, но и более дорогой собрат, которому для обслуживания нужны 2× RTX 4090 или 1× H100.

## Ключевые особенности

* **Архитектура MoE (вариант 26B)** — 26B всего параметров, \~4B активируется на токен; платите за инференс уровня 4B, получая качество уровня 26B
* **Запасной dense-вариант (31B)** — для команд, которые предпочитают предсказуемость и зрелость инструментов dense-инференса
* **Контекстное окно 128K** — вопросы и ответы по длинным документам, RAG по средним кодовым базам, многошаговые агентные циклы
* **Сильное следование инструкциям** — Gemma 4 явно настроена на использование инструментов, структурированный вывод и точное соблюдение ограничений
* **Мультиязычность** — сохранено полное мультиязычное покрытие Gemma 3, плюс расширенный набор бенчмарков для неанглийских языков
* **Open weights, Gemma terms** — бесплатно для большинства коммерческих применений; перед запуском ознакомьтесь с [Политикой запрещённого использования Gemma](https://ai.google.dev/gemma/prohibited_use_policy) перед публикацией
* **Инструменты первого класса** — поддерживается из коробки в vLLM, SGLang, Ollama и Hugging Face Transformers

## Выберите вашу версию

| Версия                                   | Всего параметров | Активно       | Контекст | Рекомендуемая квантизация | Рекомендуемая GPU Clore                                                                                                        |
| ---------------------------------------- | ---------------- | ------------- | -------- | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| **Gemma 4 26B MoE** (`gemma-4-26b-it`)   | 26B              | \~4B на токен | 128K     | FP8 или 4-бит GPTQ        | 1× [RTX 4090](https://clore.ai/rent-4090.html?utm_source=docs\&utm_medium=guide\&utm_campaign=gemma4) (24GB, квантизированная) |
| **Gemma 4 31B Dense** (`gemma-4-31b-it`) | 31B              | 31B (все)     | 128K     | FP8 или BF16              | 1× [H100](https://clore.ai/rent-h100.html?utm_source=docs\&utm_medium=guide\&utm_campaign=gemma4) (80GB, BF16)                 |

{% hint style="success" %}
**Практический выбор:** Для 90% развёртываний на одной GPU выбирайте **Gemma 4 26B MoE на FP8**. Вы получаете качество уровня Arena при \~10–15 tok/s на 4090 и \~40+ tok/s на H100, без задержек, характерных для dense-инференса 31B.
{% endhint %}

***

## Требования к серверу

| Компонент     | 26B MoE (4-bit, 4090)        | 26B MoE (FP8, H100)      | 31B Dense (BF16, H100)   |
| ------------- | ---------------------------- | ------------------------ | ------------------------ |
| VRAM GPU      | 24GB                         | 80GB                     | 80GB                     |
| Системная RAM | 32GB                         | 64GB                     | 64GB                     |
| Диск          | 60GB NVMe                    | 80GB NVMe                | 90GB NVMe                |
| Сеть          | 100 Мбит/с для загрузки с HF | предпочтительно 1 Гбит/с | предпочтительно 1 Гбит/с |
| CUDA          | 12.1+                        | 12.4+                    | 12.4+                    |
| Драйвер       | 550+                         | 555+                     | 555+                     |

Заложите дополнительно \~20% запаса VRAM сверх статического объёма весов, чтобы покрыть KV cache на длинных контекстах. Установка `--gpu-memory-utilization 0.90` в vLLM — хороший вариант по умолчанию.

***

## Быстрое развёртывание на CLORE.AI

Самый быстрый путь: арендовать одну GPU, загрузить стандартный образ `vllm/vllm-openai` и обслуживать модель через API, совместимый с OpenAI. Ниже показан шаблон docker-compose, используемый в остальных руководствах — измените имя модели и размер tensor-parallel в зависимости от выбранной выше версии.

### Вариант A — Gemma 4 26B MoE на одной GPU (vLLM, FP8)

```yaml
version: "3.8"
services:
  vllm:
    image: vllm/vllm-openai:latest
    ports:
      - "8000:8000"
    environment:
      - HUGGING_FACE_HUB_TOKEN=${HF_TOKEN}
    volumes:
      - hf_cache:/root/.cache/huggingface
    command: >
      --model google/gemma-4-26b-it
      --quantization fp8
      --max-model-len 32768
      --gpu-memory-utilization 0.90
      --served-model-name gemma-4-26b
      --trust-remote-code
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    shm_size: "8gb"

volumes:
  hf_cache:
```

```bash
# Запустить
HF_TOKEN=hf_xxx docker compose up -d

# Следить за логами, пока загружаются веса
docker compose logs -f vllm
```

{% hint style="info" %}
**Ограничение по лицензии:** Модели Gemma на Hugging Face требуют однократного принятия условий Google для каждого аккаунта. Откройте страницу модели в браузере, нажмите "Acknowledge license", затем экспортируйте `HF_TOKEN` чтобы контейнер мог скачать веса.
{% endhint %}

### Вариант B — Gemma 4 31B Dense на H100 (vLLM, BF16)

```bash
docker run --gpus all -p 8000:8000 \
  -e HUGGING_FACE_HUB_TOKEN=$HF_TOKEN \
  -v ~/.cache/huggingface:/root/.cache/huggingface \
  --ipc=host \
  vllm/vllm-openai:latest \
  --model google/gemma-4-31b-it \
  --dtype bfloat16 \
  --max-model-len 32768 \
  --gpu-memory-utilization 0.90 \
  --served-model-name gemma-4-31b
```

### Вариант C — Gemma 4 31B Dense на 2× RTX 4090 (FP8, tensor-parallel)

```bash
docker run --gpus all -p 8000:8000 \
  -e HUGGING_FACE_HUB_TOKEN=$HF_TOKEN \
  -v ~/.cache/huggingface:/root/.cache/huggingface \
  --ipc=host \
  vllm/vllm-openai:latest \
  --model google/gemma-4-31b-it \
  --quantization fp8 \
  --tensor-parallel-size 2 \
  --max-model-len 16384 \
  --gpu-memory-utilization 0.90 \
  --served-model-name gemma-4-31b
```

### Вариант D — Быстрое локальное тестирование с Ollama

Для экспериментов на уровне ноутбука Ollama оборачивает сборки GGUF от сообщества. Ожидайте, что квантизованные версии появятся через несколько дней после официального релиза.

```bash
# Как только будет опубликован GGUF-сборка от сообщества
ollama pull gemma4:26b-moe-q4_k_m
ollama run gemma4:26b-moe-q4_k_m

# API, совместимый с OpenAI, на :11434
curl http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemma4:26b-moe-q4_k_m",
    "messages": [{"role":"user","content":"Summarize the MoE routing approach in two sentences."}]
  }'
```

См. [руководство по Ollama](/guides/guides_v2-ru/yazykovye-modeli/ollama.md) для общей настройки, управления моделями и советов по сохранению.

***

## Примеры использования

Контейнер vLLM предоставляет API, совместимый с OpenAI, на `:8000`. Всё, что понимает схему chat-completions OpenAI, работает напрямую.

### Curl completion чата

```bash
curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemma-4-26b",
    "messages": [
      {"role": "system", "content": "You are a careful technical writer."},
      {"role": "user", "content": "Explain MoE routing in three sentences without using analogies."}
    ],
    "max_tokens": 512,
    "temperature": 0.7
  }'
```

### Python (клиент OpenAI)

```python
from openai import OpenAI

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

resp = client.chat.completions.create(
    model="gemma-4-26b",
    messages=[
        {"role": "system", "content": "You answer in plain text, no markdown."},
        {"role": "user", "content": "Give me a 5-bullet code review checklist for a Go HTTP handler."},
    ],
    temperature=0.7,
    max_tokens=1024,
)
print(resp.choices[0].message.content)
```

### Потоковые ответы

```python
from openai import OpenAI

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

stream = client.chat.completions.create(
    model="gemma-4-26b",
    messages=[{"role": "user", "content": "Write a haiku about distributed inference."}],
    stream=True,
    max_tokens=128,
)

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

### Hugging Face Transformers (офлайн-использование)

```python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "google/gemma-4-26b-it"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.bfloat16,
    device_map="auto",
    load_in_4bit=True,  # Помещает MoE на одну карту 24GB
)

messages = [
    {"role": "user", "content": "Refactor this Python function for readability:\n\ndef f(x): return [i for i in x if i%2==0 and i>10]"},
]
input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt").to(model.device)
output = model.generate(input_ids, max_new_tokens=512, do_sample=True, temperature=0.7)
print(tokenizer.decode(output[0][input_ids.shape[-1]:], skip_special_tokens=True))
```

***

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

* **Используйте FP8 на Hopper.** На H100 чекпойнт FP8 занимает примерно вдвое меньше памяти, чем BF16, без заметной потери качества для задач следования инструкциям. Передайте `--quantization fp8` в vLLM.
* **Используйте 4-бит GPTQ на Ada (RTX 4090).** Для MoE-варианта на одной 4090 практический оптимум — community GPTQ 4-bit сборка: ожидайте \~10–15 tok/s. Сборки Ollama Q4\_K\_M GGUF дают похожее качество при более простой эксплуатации.
* **Tensor parallelism для 31B Dense.** На 2× RTX 4090 передайте `--tensor-parallel-size 2`. Зафиксируйте контекст на реально нужном размере (`--max-model-len 16384`) — каждое удвоение контекста примерно удваивает объём KV cache.
* **Expert parallelism для MoE.** На многогPU-конфигурациях для 26B MoE vLLM `--enable-expert-parallel` может заметно увеличить пропускную способность при больших размерах батча. Для одной GPU это избыточно.
* **Chunked prefill для длинных контекстов.** При работе свыше 32K добавьте `--enable-chunked-prefill` в vLLM. Это удерживает задержку prefill на приемлемом уровне и предотвращает зависания на этапе decode.
* **Загружайте веса заранее.** Для краткосрочной аренды Clore подключите постоянный том в `/root/.cache/huggingface` чтобы последующие запуски пропускали скачивание 50–60GB.
* **Выберите правильный backend для обслуживания.** vLLM — безопасный выбор по умолчанию. SGLang часто выигрывает на Hopper при высоких нагрузках с большой конкуренцией; см. [руководство по vLLM](/guides/guides_v2-ru/yazykovye-modeli/vllm.md) для более широкого сравнения.

***

## Бенчмарки

{% hint style="warning" %}
**Числа, опубликованные производителем — независимая проверка ожидается.** Показатели ниже взяты из материалов запуска Google от 2 апреля 2026 года. Независимые воспроизведения на приватных оценках всё ещё поступают. Считайте рейтинг Arena и оценки фактичности ориентировочными, а не абсолютными.
{% endhint %}

| Бенчмарк                             | Gemma 4 26B MoE                                                     | Gemma 4 31B Dense                                             | Референс                |
| ------------------------------------ | ------------------------------------------------------------------- | ------------------------------------------------------------- | ----------------------- |
| LMSYS Arena (общий)                  | #3 на момент релиза                                                 | \~#5 на момент релиза                                         | по данным производителя |
| Следование инструкциям (IFEval)      | по данным производителя — сильный рост по сравнению с Gemma 3       | по данным производителя — сильный рост по сравнению с Gemma 3 | по данным производителя |
| Фактичность (SimpleQA / аналогичные) | по данным Google превосходит несколько закрытых моделей             | сопоставимо                                                   | по данным производителя |
| Мультиязычность (Global-MMLU)        | по данным производителя — паритет с гораздо более крупными моделями | лучший результат Gemma на сегодняшний день                    | по данным производителя |

Аргумент позиционирования Gemma 4 — это «больше пользы на активный параметр», а не «сырой король HumanEval». Если вам нужна чистая генерация кода, сравните с [GLM-5.1](/guides/guides_v2-ru/yazykovye-modeli/glm-5-1.md) (frontier coding) или [Qwen3.5](/guides/guides_v2-ru/yazykovye-modeli/qwen35.md) (лучший dense-класс 35B). Если вам нужны длинные агентные циклы, GLM-5.1 всё ещё более точный инструмент.

***

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

| Проблема                                          | Решение                                                                                                                                                                                                                       |
| ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `OutOfMemoryError` при загрузке 26B MoE на 24GB   | Переключитесь на FP8 (`--quantization fp8`) или 4-bit (`load_in_4bit=True` в Transformers). Уменьшите `--max-model-len` до 16384, чтобы уменьшить KV cache.                                                                   |
| `OutOfMemoryError` загрузка 31B Dense на H100     | BF16 при контексте 32K находится прямо на грани для 80GB. Уменьшите `--max-model-len` до 16384 или перейдите на FP8.                                                                                                          |
| Скачивание с Hugging Face завершается ошибкой 403 | Вы не приняли лицензию Gemma на странице модели. Откройте URL в браузере, примите условия, затем повторно загрузите с токеном, у которого есть `read` область доступа.                                                        |
| Очень медленный первый токен                      | Холодная загрузка весов (\~30–60с на первый запрос) плюс prefill на длинных входах. После запуска сервера выполните тестовый прогревочный запрос. Добавьте `--enable-chunked-prefill` для длинноконтекстных рабочих нагрузок. |
| Искажённый вывод / петли повторов                 | Проверьте chat template — `tokenizer.apply_chat_template` обязателен; не объединяйте строки `system`+`user` вручную. Установите `temperature=0.7` и `top_p=0.95` для общего использования.                                    |
| Ненадёжный вывод инструментов / JSON              | Используйте `--guided-decoding-backend` vLLM или передайте JSON-схему через `response_format`. Модель хорошо соблюдает ограничения, но неструктурированные промпты всё равно могут уводить её в сторону.                      |
| `неподдерживаемая квантизация` ошибка в vLLM      | Обновитесь до версии vLLM, выпущенной после апреля 2026 года (`pip install -U vllm --pre`). Архитектуре Gemma 4 нужны самые новые парсеры конфигов.                                                                           |

***

## FAQ

**Gemma 4 vs Llama 4?** Разные формы для разных задач. [Llama 4 Scout](/guides/guides_v2-ru/yazykovye-modeli/llama4.md) — это 109B/17B-active с заголовочным контекстом 10M — отлично, когда нужно подавать модели огромные входные данные. Gemma 4 26B MoE намного меньше по общему числу параметров (26B против 109B), активирует меньше параметров на токен (4B против 17B) и сильнее настроена на следование инструкциям и фактичность. При жёстком бюджете VRAM и приоритете качества на параметр Gemma 4 выигрывает. Для абсурдно длинного контекста выигрывает Llama 4 Scout.

**Сколько VRAM нужно для Gemma 4 26B MoE?**

* 4-bit GGUF / GPTQ: помещается в **24GB** (одна RTX 4090), \~10–15 tok/s.
* FP8: комфортно на **40GB**, быстро на **80GB** (H100) при \~40+ tok/s.
* Полный BF16: \~55GB весов плюс KV cache — планируйте **80GB** карту.

**Можно ли использовать Gemma 4 коммерчески?** Да, на стандартных условиях использования Gemma. Перед развёртыванием ознакомьтесь с [Политикой запрещённого использования Gemma](https://ai.google.dev/gemma/prohibited_use_policy) — там есть ограничения по отдельным сценариям использования (обман, создание CSAM, незаконная деятельность), и вы должны передавать уведомления о лицензии дальше вашим пользователям. Это не модель под Apache 2.0 / MIT — это open-weight с политикой использования. Если вам нужна полностью неограниченная лицензия, [Qwen3.5](/guides/guides_v2-ru/yazykovye-modeli/qwen35.md) (Apache 2.0) или [GLM-5.1](/guides/guides_v2-ru/yazykovye-modeli/glm-5-1.md) (MIT) — альтернативы.

**Gemma 4 vs DeepSeek-V4?** [DeepSeek-V4](/guides/guides_v2-ru/yazykovye-modeli/deepseek-v4.md) — это другой весовой класс: \~1T параметров, мультимодальная, контекст 1M. Используйте DeepSeek-V4, когда нужна максимальная мощность и у вас есть серьёзный GPU-стойка. Используйте Gemma 4 26B MoE, когда вам нужно сильное следование инструкциям на **одной GPU** и важна аренда примерно за $1–2/день на Clore. Gemma 4 — кандидат на «лучшая модель, которая помещается на 4090»; DeepSeek-V4 — кандидат на «я заплачу за 8× H200».

**Поддерживает ли Gemma 4 vision / мультимодальные входы?** Главный релиз Gemma 4 — это текстовая instruction-tuned версия (`*-it`). Исторически Google выпускала после текстовых релизов vision-варианты PaliGemma — следите за [huggingface.co/google](https://huggingface.co/google) для обновлений. Если вам сегодня нужна открытая модель с поддержкой изображений, посмотрите на [Kimi K2.5](/guides/guides_v2-ru/yazykovye-modeli/kimi-k2.md) или [Llama 4 Scout](/guides/guides_v2-ru/yazykovye-modeli/llama4.md).

***

## Связанные руководства

* [vLLM](/guides/guides_v2-ru/yazykovye-modeli/vllm.md) — production-serving backend, используемый в этом руководстве
* [Ollama](/guides/guides_v2-ru/yazykovye-modeli/ollama.md) — самый быстрый путь к локальному тестированию со сборками GGUF
* [Llama 4](/guides/guides_v2-ru/yazykovye-modeli/llama4.md) — MoE-альтернатива от Meta с контекстом 10M
* [GLM-5.1](/guides/guides_v2-ru/yazykovye-modeli/glm-5-1.md) — frontier-class coding MoE (744B/40B-active), когда размера Gemma недостаточно
* [Qwen3.5](/guides/guides_v2-ru/yazykovye-modeli/qwen35.md) — Apache-2.0 35B dense, ещё один сильный вариант на одной GPU
* [Gemma 3](/guides/guides_v2-ru/yazykovye-modeli/gemma3.md) — предыдущее поколение, полезная базовая точка для миграции

### Ссылки

* [Gemma 4 26B MoE на Hugging Face](https://huggingface.co/google/gemma-4-26b-it)
* [Gemma 4 31B Dense на Hugging Face](https://huggingface.co/google/gemma-4-31b-it)
* [Gemma terms of use](https://ai.google.dev/gemma/terms)
* [Политикой запрещённого использования Gemma](https://ai.google.dev/gemma/prohibited_use_policy)
* [Документация vLLM](https://docs.vllm.ai)
* [Репозиторий SGLang](https://github.com/sgl-project/sglang)


---

# Agent Instructions: 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:

```
GET https://docs.clore.ai/guides/guides_v2-ru/yazykovye-modeli/gemma4.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
