Дата публикации
ai_products

Gemma на Mac: мультимодальный тюнер, который не требует NVIDIA

Что появилось / что изменилось

Gemma Multimodal Fine-Tuner — это тулкит, который позволяет дообучать семейство Gemma 3n и Gemma 4 прямо на Mac с Apple Silicon. Главное: всё крутится на M1/M2/M3 через MPS, без NVIDIA и без аренды H100.

Конкретно он умеет:

  • Текст + картинки (LoRA)

    • Дообучение Gemma на captioning и VQA по локальному CSV.
    • Работает с Gemma 4 (E2B/E4B, instruct и base) и Gemma 3n (E2B/E4B, instruct).
  • Аудио + текст (LoRA)

    • Дообучение Gemma на аудио-транскрипцию и задачи ASR.
    • Это единственный путь, который нативно работает на Apple Silicon без CUDA.
  • Только текст (LoRA)

    • Инструкционное дообучение или completion по CSV.
    • Достаточно выставить modality = text и положить сплиты в data/datasets/<name>/.
  • Стриминг датасетов из облака

    • Поддержка Google Cloud Storage и BigQuery.
    • Можно тренировать на терабайтах данных, не забивая SSD: даталоадер подкачивает шарды по запросу.
  • Полная нативность под Apple Silicon

    • Тренировка идёт через MPS, NVIDIA GPU не нужен.
    • Для Gemma 4 нужны отдельные зависимости из requirements/requirements-gemma4.txt.

Тулкит заточен под конкретные чекпоинты на Hugging Face: от компактных Gemma 3n ~2B до Gemma 4 ~4B. Большие веса 26B и 31B Gemma 4 пока не поддерживаются.

Как это работает

Под капотом — стандартный стек Hugging Face плюс PEFT LoRA.

  • Модели
    В конфиге config/config.ini лежат профили вида [model:gemma-4-e2b-it] с полем base_model.
    Например, google/gemma-4-E2B-it или google/gemma-3n-E4B-it.
    Тренер подхватывает их через gemma_tuner/models/gemma/finetune.py.

  • LoRA-дообучение
    Тулкит не трогает базовые веса Gemma.
    Он обучает только LoRA-адаптеры поверх чекпоинтов на Hugging Face.
    После обучения всё можно слить в единое дерево HF / SafeTensors через gemma_tuner/scripts/export.py.

  • Мультимодальность
    Режим задаётся в профиле: modality = text, image или audio.
    Для картинок есть параметры image_sub_mode и image_token_budget, которые контролируют формат и размер визуального ввода.
    В первой версии image-тренинг работает только с локальными CSV, как и текст.

  • Облако без копирования датасета
    Если данные лежат в GCS или BigQuery, даталоадер стримит их кусками.
    Это позволяет тренировать модели на терабайтах логов или записей, держа на диске только временные шардовые выборки.

  • Интеграция с Core ML и GGUF
    После экспорта в HF / SafeTensors можно пройти по гайдам в README/guides/README.md и собрать Core ML-модель или GGUF для локального инференса.

Что это значит для вас

Если вы работаете на Mac с Apple Silicon и хотите дообучать Gemma, этот тулкит закрывает почти весь цикл — от текста до аудио.

Где он особенно полезен:

  • Доменный ASR
    У вас есть записи медицинских диктовок, юридических заседаний или колл-центра, где Whisper или базовая Gemma путают термины.
    Вы собираете CSV с аудио и текстом, дообучаете Gemma и получаете модель, которая знает вашу терминологию.

  • Специализированное компьютерное зрение
    Чеки, графики, скриншоты интерфейсов, дефекты на производстве, медицинские снимки.
    Можно обучить captioning или VQA под свой тип изображений, где универсальные модели часто галлюцинируют.

  • Понимание документов и экранов
    Пары «скриншот → структурированный JSON» для UI-агентов, OCR-пайплайнов или анализа отчётов.
    Вы обучаете модель отвечать на вопросы по конкретной вёрстке ваших интерфейсов и отчётов.

  • Акценты, диалекты и низкоресурсные языки
    Если у вас есть размеченное аудио, можно адаптировать Gemma под локальные акценты и языки, которые слабо покрыты в открытых моделях.

  • Мультимодальные ассистенты под свои пайплайны
    Текстовое рассуждение Gemma можно «приземлить» на картинки и аудио: транскрипция, подписи к изображениям, Q&A по медиа.
    Всё это живёт локально на Mac, без передачи данных во внешние API.

Где тулкит не подойдёт:

  • Если вам нужны гигантские Gemma 4 на 26B или 31B параметров — этот тренер их пока не поддерживает.
  • Если у вас нет доступа к GCS/BigQuery, вы не сможете использовать облачный стриминг, но локальный CSV по-прежнему работает.
  • Если вы ждёте «из коробки» UI, здесь придётся работать с конфигами и Python.

Для России есть нюанс: Hugging Face и Google Cloud могут требовать VPN или обходные пути, особенно для загрузки базовых весов и доступа к GCS/BigQuery.

Место на рынке

Gemma Multimodal Fine-Tuner живёт в нише «дообучение Gemma на Mac» и конкурирует с несколькими стек‑решениями.

В сравнении по возможностям:

  • MLX-LM
    Хорошо работает с текстовым дообучением Gemma на Apple Silicon.
    Но мультимодальное дообучение (картинки + текст, аудио + текст) зависит от конкретных реализаций и часто ограничено.

  • Unsloth
    Фокусируется на ускорении текстового fine-tuning.
    Для Gemma текст-only CSV поддерживается, но мультимодальные сценарии для Apple Silicon не закрыты.

  • axolotl
    Подходит для дообучения больших языковых моделей, но мультимодальность и Apple Silicon — слабое место.
    Аудио + текст для Gemma у axolotl доступен только через CUDA и NVIDIA GPU.

На этом фоне у Gemma Multimodal Fine-Tuner есть несколько чётких преимуществ:

  • Полный стек текст + изображение + аудио именно для Gemma 3n и Gemma 4.
  • Полная нативная работа на Apple Silicon (MPS), без NVIDIA.
  • Возможность стримить данные из GCS/BigQuery, тренируясь на терабайтных датасетах, не забивая SSD.

Минус — он жёстко привязан к архитектуре Gemma и не работает с большими 26B/31B весами. Если вам нужен универсальный тренер под разные модели и огромные чекпоинты, придётся смотреть на другие тулкиты или собирать свой пайплайн.


Читайте также