Дообучение (Fine-Tuning) языковой модели Gemini (Google)
Google предоставляет fine-tuning для моделей семейства Gemini через Vertex AI и Google AI Studio. Дообучение доступно для Gemini 1.5 Flash и Gemini 1.5 Pro, а также для более новых версий в рамках Gemini 2.x серии. Vertex AI — production-grade платформа с MLOps-инфраструктурой, управлением версиями моделей и интеграцией с Google Cloud экосистемой.
Два пути к fine-tuning Gemini
Google AI Studio (Gemini API): быстрый старт для экспериментов. Доступно через веб-интерфейс и API. Подходит для небольших датасетов и прототипирования. Ограничения: меньше контроля над гиперпараметрами, нет SLA для enterprise.
Vertex AI Supervised Fine-Tuning: production-ready подход. Полный контроль над обучением, интеграция с Vertex AI Pipelines, мониторинг через Cloud Monitoring, версионирование через Model Registry. Именно этот путь используется для серьёзных продакшн-проектов.
Формат данных и требования
Gemini fine-tuning принимает данные в формате JSONL, где каждая строка — один пример разговора:
{
"contents": [
{
"role": "user",
"parts": [{"text": "Классифицируй обращение клиента по категории: 'Не могу войти в личный кабинет'"}]
},
{
"role": "model",
"parts": [{"text": "{\"category\": \"authentication\", \"priority\": \"high\", \"department\": \"tech_support\"}"}]
}
]
}
Минимальный объём: 100 примеров. Рекомендуемый для стабильного качества: 500–5000. Максимальный размер датасета: 1 ГБ.
Запуск через Vertex AI SDK
import vertexai
from vertexai.tuning import sft
vertexai.init(project="my-project", location="us-central1")
sft_tuning_job = sft.train(
source_model="gemini-1.5-flash-002",
train_dataset="gs://my-bucket/train.jsonl",
validation_dataset="gs://my-bucket/val.jsonl",
epochs=5,
adapter_size=4, # LoRA rank
learning_rate_multiplier=1.0,
tuned_model_display_name="gemini-flash-support-classifier"
)
print(sft_tuning_job.tuned_model_endpoint_name)
Обучение на Vertex AI использует LoRA-адаптеры (adapter_size соответствует rank), что делает процесс значительно дешевле full fine-tuning. Время обучения: от 30 минут до нескольких часов в зависимости от объёма данных.
Multimodal fine-tuning: работа с изображениями
Ключевое преимущество Gemini — нативная мультимодальность. Fine-tuning поддерживает обучающие примеры, содержащие изображения вместе с текстом:
{
"contents": [
{
"role": "user",
"parts": [
{"inline_data": {"mime_type": "image/jpeg", "data": "...base64..."}},
{"text": "Определи дефект на изображении детали"}
]
},
{
"role": "model",
"parts": [{"text": "{\"defect_type\": \"crack\", \"location\": \"top_left\", \"severity\": \"critical\"}"}]
}
]
}
Это открывает задачи, недоступные для текстовых моделей: инспекция качества на производстве, анализ медицинских снимков, классификация документов по визуальным признакам.
Практический результат: промышленная инспекция
Задача: классификация дефектов на сварных швах по фотографиям. Датасет: 2400 изображений с разметкой (7 классов дефектов).
До fine-tuning (Gemini 1.5 Flash с детальным промптом): accuracy 67%, много ложных срабатываний на класс «норма».
После fine-tuning (5 эпох, adapter_size=8): accuracy 91%, F1 по критическим дефектам 0.94. Время инференса — без изменений (~800мс на изображение через API).
Сравнение Gemini fine-tuning с альтернативами
| Критерий | Gemini (Vertex AI) | GPT-4o (OpenAI) | Llama (self-hosted) |
|---|---|---|---|
| Мультимодальность | Да (нативная) | Да | Зависит от модели |
| On-premise | Нет | Нет | Да |
| Контроль весов | Нет | Нет | Да |
| MLOps-интеграция | Google Cloud | Ограниченная | Self-managed |
| Минимальный датасет | 100 примеров | 50 примеров | 50–100 примеров |
Сроки проекта
- Подготовка и валидация датасета: 2–4 недели
- Обучение и подбор гиперпараметров: 1–2 недели
- Тестирование и интеграция: 1–2 недели
- Итого: 4–8 недель от старта до продакшна







