Запустите генерацию контента и выводы Gemma

При запуске модели Gemma необходимо принять два ключевых решения: 1) какой вариант Gemma вы хотите использовать и 2) какую платформу для выполнения ИИ вы будете применять? Ключевой вопрос при принятии обоих решений связан с тем, какое оборудование есть у вас и ваших пользователей для запуска модели.

Этот обзор поможет вам принять правильные решения и начать работу с моделями Gemma. Общие шаги для запуска модели Gemma следующие:

Выберите фреймворк

Модели Gemma совместимы с широким спектром инструментов экосистемы. Выбор подходящего инструмента зависит от имеющегося у вас оборудования (облачные графические процессоры или локальный ноутбук) и ваших предпочтений в интерфейсе (код Python или настольное приложение).

Воспользуйтесь следующей таблицей, чтобы быстро определить, какой инструмент лучше всего подходит для ваших нужд:

Если вы хотите... Рекомендуемая структура Лучше всего подходит для
Запуск локально с пользовательским интерфейсом чата. - LM Studio
- Оллама
Для начинающих или пользователей, желающих получить опыт работы на ноутбуке, аналогичный Gemini.
Эффективная работа в Edge - Gemma.cpp
- LiteRT-LM
- llama.cpp
- API вывода LLM от MediaPipe
- MLX
Высокопроизводительный локальный вывод с минимальными ресурсами.
Разработка/обучение программ на Python - Библиотека Gemma для JAX
- Обнимающие лица Трансформеры
- Керас
- PyTorch
- Бездельник
Исследователи и разработчики, создающие пользовательские приложения или дорабатывающие модели.
Развертывание в производственной/корпоративной средеGoogle Cloud Kubernetes Engine (GKE)
- Google Cloud Run
- Vertex AI
- vLLM
Масштабируемое, управляемое облачное развертывание с поддержкой корпоративной безопасности и MLOps.

Детали структуры

Ниже приведены инструкции по запуску моделей Gemma, сгруппированные по типу вашей среды развертывания.

1. Вывод данных на рабочем столе и локально (высокая эффективность)

Эти инструменты позволяют запускать Gemma на потребительском оборудовании (ноутбуках, настольных компьютерах) с использованием оптимизированных форматов (например, GGUF) или специальных аппаратных ускорителей.

  • LM Studio : Настольное приложение, позволяющее скачивать модели Gemma и общаться с ними в удобном интерфейсе. Программирование не требуется.
  • llama.cpp : Популярный порт Llama (и Gemma) на C++ с открытым исходным кодом, который невероятно быстро работает на процессорах и Apple Silicon.
  • LiteRT-LM : Предоставляет интерфейс командной строки ( CLI ) для запуска оптимизированных моделей Gemma в .litertlm на настольных компьютерах (Windows, Linux, macOS) на базе LiteRT (ранее TFLite).
  • MLX : фреймворк, разработанный специально для машинного обучения на процессорах Apple Silicon, идеально подходящий для пользователей Mac, которым нужна встроенная производительность.
  • Gemma.cpp : Легковесный автономный механизм вывода информации на C++, разработанный специально для Google.
  • Ollama : Инструмент для локального запуска открытых LLM-модулей, часто используемый для работы других приложений.

2. Разработка на Python (исследования и доработка)

Стандартные фреймворки для разработчиков ИИ, создающих приложения, конвейеры обработки данных или обучающие модели.

  • Hugging Face Transformers : отраслевой стандарт для быстрого доступа к моделям и рабочим процессам.
  • Unsloth : оптимизированная библиотека для тонкой настройки LLM-моделей. Она позволяет обучать модели Gemma в 2-5 раз быстрее, используя значительно меньше памяти, что делает возможной тонкую настройку на потребительских графических процессорах (например, в бесплатных версиях Google Colab).
  • Keras / JAX / PyTorch : основные библиотеки для исследований в области глубокого обучения и реализации пользовательских архитектур.

3. Развертывание на мобильных устройствах и периферийных устройствах (на самом устройстве)

Фреймворки, предназначенные для запуска программ с низким уровнем сложности (LLM) непосредственно на пользовательских устройствах (Android, iOS, Web) без подключения к интернету, часто с использованием нейронных процессоров (NPU).

  • LiteRT-LM : Полностью открытая платформа для разработки LLM-приложений на устройствах, обеспечивающая максимальную производительность и точный контроль, с прямой поддержкой ускорения на CPU, GPU и NPU на Android и iOS.
  • MediaPipe LLM Inference API : Самый простой способ интегрировать Gemma в кроссплатформенные приложения. Он предлагает высокоуровневый API, работающий на Android, iOS и в веб-среде.

4. Развертывание в облаке и в производственной среде

Управляемые сервисы для масштабирования вашего приложения до тысяч пользователей или доступа к огромным вычислительным мощностям.

  • Vertex AI : полностью управляемая платформа искусственного интеллекта от Google Cloud. Идеально подходит для корпоративных приложений, требующих соглашений об уровне обслуживания (SLA) и масштабируемости.
  • Google Cloud Kubernetes Engine (GKE) : Для оркестрации собственных кластеров обслуживания.
  • vLLM : Высокопроизводительный и экономичный с точки зрения использования памяти механизм вывода и обслуживания данных, часто используемый в облачных средах.

Убедитесь, что выбранный вами формат модели Gemma для развертывания, например, встроенный формат Keras, Safetensors или GGUF, поддерживается выбранной вами платформой.

Выберите вариант Gemma

Модели Gemma доступны в нескольких вариантах и ​​размерах, включая базовые или основные модели Gemma, а также более специализированные варианты, такие как PaliGemma и DataGemma , и множество вариантов, созданных сообществом разработчиков ИИ на таких сайтах, как Kaggle и Hugging Face . Если вы не уверены, с какого варианта начать, выберите последнюю базовую модель Gemma, оптимизированную по инструкциям (IT), с наименьшим количеством параметров. Этот тип модели Gemma имеет низкие вычислительные требования и способен реагировать на широкий спектр запросов без дополнительной разработки.

При выборе варианта Gemma следует учитывать следующие факторы:

  • Gemma core и другие семейства вариантов, такие как PaliGemma, CodeGemma : Рекомендуем Gemma (core). Варианты Gemma, выходящие за рамки базовой версии, имеют ту же архитектуру, что и основная модель, и обучены лучше справляться с конкретными задачами. Если ваше приложение или цели не соответствуют специализации конкретного варианта Gemma, лучше начать с базовой модели Gemma.
  • Инструкционно-настроенный (IT), предварительно обученный (PT), тонко настроенный (FT), смешанный (mix) : Рекомендуется IT.
    • Варианты модели Gemma , настроенные на выполнение инструкций (Instruction-tuned , IT), — это модели, обученные реагировать на различные инструкции или запросы на человеческом языке. Эти варианты моделей — лучшее начало, поскольку они могут реагировать на подсказки без дополнительного обучения.
    • Предварительно обученные (ПТ) варианты Gemma — это модели, которые были обучены делать выводы о языке или других данных, но не были обучены следовать инструкциям человека. Эти модели требуют дополнительного обучения или настройки для эффективного выполнения задач и предназначены для исследователей или разработчиков, которые хотят изучить или развить возможности модели и ее архитектуры.
    • Тонко настроенные (FT) варианты Gemma можно рассматривать как IT-варианты, но обычно они обучаются для выполнения конкретной задачи или показывают хорошие результаты на конкретном эталонном тесте генеративного ИИ. Семейство вариантов PaliGemma включает в себя ряд тонко настроенных вариантов.
    • Варианты Gemma смешанного типа (mix) — это версии моделей PaliGemma, которые были доработаны с учетом различных инструкций и подходят для общего использования.
  • Параметры : Рекомендуется использовать наименьшее доступное количество параметров . В целом, чем больше параметров у модели, тем она мощнее. Однако запуск более крупных моделей требует больших и сложных вычислительных ресурсов и, как правило, замедляет разработку приложения ИИ. Если вы еще не определили, что более компактная модель Gemma не может удовлетворить ваши потребности, выберите модель с небольшим количеством параметров.
  • Уровни квантизации: Рекомендуется половинная точность (16 бит), за исключением случаев настройки . Квантизация — сложная тема, которая сводится к определению размера и точности данных, и, следовательно, к объему памяти, используемой генеративной моделью ИИ для вычислений и генерации ответов. После обучения модели на данных высокой точности, обычно 32-битных данных с плавающей запятой, модели, подобные Gemma, могут быть модифицированы для использования данных более низкой точности, таких как 16, 8 или 4 бита. Эти квантованные модели Gemma могут по-прежнему хорошо работать в зависимости от сложности задач, используя при этом значительно меньше вычислительных ресурсов и памяти. Однако инструменты для настройки квантованных моделей ограничены и могут быть недоступны в выбранной вами среде разработки ИИ. Как правило, необходимо выполнить тонкую настройку модели, подобной Gemma, с полной точностью, а затем квантовать полученную модель.

Список ключевых моделей Gemma, опубликованных Google, можно найти в разделе «Начало работы с моделями Gemma» , «Список моделей Gemma».

Запросы на генерацию и вывод результатов выполнения

После выбора платформы выполнения ИИ и варианта Gemma вы можете запустить модель и дать ей команду на генерацию контента или выполнение задач. Более подробную информацию о запуске Gemma с конкретной платформой см. в руководствах, ссылки на которые приведены в разделе «Выбор платформы» .

Подсказка по форматированию

Все оптимизированные для инструкций варианты Gemma имеют специфические требования к форматированию подсказок. Некоторые из этих требований к форматированию обрабатываются автоматически используемой вами платформой для запуска моделей Gemma, но при отправке данных подсказки непосредственно в токенизатор необходимо добавить определенные теги, и требования к тегированию могут меняться в зависимости от используемого варианта Gemma. Информацию о форматировании подсказок и системных инструкциях для вариантов Gemma см. в следующих руководствах: