MedGemma 27B: руководство по настройке и кейсы для анализа EHR и снимков | AiManual
AiManual Logo Ai / Manual.
12 Апр 2026 Инструмент

MedGemma 27B Multimodal: настройка и практическое применение для медицинских данных

Пошаговое руководство по установке MedGemma 27B Multimodal для анализа медицинских текстов и изображений. Практические примеры, код и сравнение с аналогами.

От 7B к 27B: что изменилось в новой мультимодальной версии

Помните те первые, почти игрушечные версии MedGemma на 2 и 7 миллиардов параметров? Они были как учебник по анатомии для первокурсника – базово, понятно, но до клинической практики далеко. MedGemma 27B Multimodal, анонсированная в конце 2025 года, это уже полноценный цифровой ординатор. Модель не просто выросла в размерах – она научилась смотреть. И понимать то, что видит.

На 12.04.2026 MedGemma 27B Multimodal – самая большая открытая модель в семействе. Она объединяет текстовый движок на 27B параметров с доработанной версией архитектуры MedSigLIP для анализа медицинских изображений. Поддерживает контекст до 128k токенов.

Основная фишка – настоящая мультимодальность. Не просто «загрузи картинку и получи описание», а сложные рассуждения на стыке данных. Модель может, например, прочитать историю болезни, изучить серию рентгеновских снимков и ответить на вопрос: «Согласуются ли рентгенологические находки с предполагаемым диагнозом хронического бронхита?».

Железо, софт и первый запуск

Тут начинается самое интересное (и дорогое). 27 миллиардов параметров – это не шутка. Для полноценной работы в FP16 модели нужно около 54 ГБ VRAM. Реальность такова, что без квантования не обойтись.

1 Подготовка окружения: ставим всё с нуля

Забудьте про старые трансформеры. Для MedGemma 27B нужна последняя версия библиотек, оптимизированная под Flash Attention 3 и новое API Google.

# Создаем чистое окружение (Python 3.11+ обязательно)
python3.11 -m venv medgemma_env
source medgemma_env/bin/activate

# Ставим актуальные на апрель 2026 года пакеты
pip install torch==2.4.0+cu121 --index-url https://download.pytorch.org/whl/cu121
pip install "transformers==5.2.0" "accelerate==0.32.0" "bitsandbytes==0.43.0"
pip install pillow pillow-heif  # для работы с DICOM и HEIC
💡
Если у вас меньше 24 ГБ VRAM (например, RTX 4090), сразу настраивайтесь на квантование в формате Q4_K_M. Полную инструкцию по выбору формата смотрите в нашей статье F16 vs Q8_0.

2 Загрузка модели с квантованием «на лету»

Тянуть 50+ гигабайт весов – удовольствие сомнительное. Гораздо умнее использовать загрузку с Hugging Face с автоматическим квантованием через bitsandbytes.

from transformers import AutoProcessor, AutoModelForVision2Seq
import torch

model_id = "google/medgemma-27b-multimodal"

# Критически важные настройки для экономии памяти
torch_dtype = torch.bfloat16 if torch.cuda.get_device_properties(0).total_memory >= 24e9 else torch.float16

model = AutoModelForVision2Seq.from_pretrained(
    model_id,
    torch_dtype=torch_dtype,
    device_map="auto",
    load_in_4bit=True,  # Активируем 4-битное квантование
    bnb_4bit_compute_dtype=torch_dtype,
    bnb_4bit_use_double_quant=True,
    trust_remote_code=True  # Требуется для кастомных слоев MedSigLIP
)
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)

Если скрипт упал с ошибкой «CUDA out of memory», не паникуйте. Уменьшайте разрешение загружаемых изображений через параметр `size` в процессоре или переходите на более агрессивное квантование (`load_in_4bit=True` меняем на `load_in_8bit=False` и используем `BitsAndBytesConfig` для 3-битного). Да, будет менее точно. Такие компромиссы.

Практика: три реальных кейса из больничной жизни

Кейс 1. Сводный отчет из разрозненных EHR

Ситуация: у вас есть текст выписки из стационара, PDF-файл с лабораторными анализами и сканы ЭКГ за последний год. Задача – одной командой получить структурированную хронологию событий.

# Грузим и обрабатываем мультимодальные данные
medical_text = open("выписка.txt", "r", encoding="utf-8").read()
ecg_image = Image.open("ecg_2026_03.png")
lab_pdf = convert_pdf_to_images("lab_results.pdf")[0]  # первая страница PDF

# Формируем промпт для модели
prompt = """Проанализируй предоставленные медицинские данные: историю болезни, результаты лабораторных анализов и электрокардиограмму. 
Создай сводную таблицу в формате JSON со следующими полями:
1. Основные диагнозы с датами установки.
2. Критичные отклонения в анализах (значение, норма, интерпретация).
3. Заключение по динамике ЭКГ.
4. Список рекомендованных контрольных обследований.
"""

inputs = processor(
    text=prompt,
    images=[ecg_image, lab_pdf],
    medical_context=medical_text,
    return_tensors="pt"
).to(model.device)

# Генерация ответа с медицинской конкретикой
output = model.generate(
    **inputs,
    max_new_tokens=1024,
    temperature=0.1,  # Низкая температура для точности фактов
    do_sample=False
)

report = processor.decode(output[0], skip_special_tokens=True)
print(report)

Модель вернет готовый JSON, который можно сразу загрузить в систему учета. Главное – проверить цифры. MedGemma иногда «додумывает» референсные значения лабораторий, если они нечётко видны на скане.

Кейс 2. Второе мнение по рентгенограмме грудной клетки

Загружаем DICOM-файл. Модель, в отличие от чисто визуальных аналогов, может учитывать текстовые анамнестические данные.

from PIL import Image
import pydicom

ds = pydicom.dcmread("chest_xray.dcm")
xray_image = Image.fromarray(ds.pixel_array)

prompt = """Пациент 68 лет, курит 40 лет. Поступил с жалобами на нарастающую одышку и продуктивный кашель. 
Опиши рентгенологическую картину. Обрати особое внимание на признаки, характерные для ХОБЛ и возможной пневмонии. 
Сформулируй заключение для лечащего врача."""

inputs = processor(text=prompt, images=xray_image, return_tensors="pt").to(model.device)

with torch.no_grad():
    output = model.generate(**inputs, max_new_tokens=512)

finding = processor.decode(output[0], skip_special_tokens=True)
print(finding)

Важно! MedGemma 27B Multimodal обучена на аннотированных данных и не является диагностическим устройством. Её заключение – это предположение, основанное на статистических паттернах. Всегда требуется верификация сертифицированным специалистом.

С кем конкурирует 27B-монстр в 2026 году?

МодельРазмерМультимодальностьГлавный козырьСлабое место
MedGemma 27B Multimodal27BТекст + изображения (DICOM, рентген)Глубокие медицинские онтологии, понимание контекста EHRТребует мощного GPU, медленная инференс
Baichuan-M3-235B235BТолько текстНевероятная точность в диагностических цепочках рассужденийТолько для облака или кластера, нет зрения
Gemini 3.5 Pro (Medical Tuning)~100B+Текст, изображения, аудиоAPI, простота интеграции, высокая скоростьДанные уходят в Google, дорого при больших объемах
MRI-GPT (локальный стек)7B-13BТекст + МРТ (узкая специализация)Работает на среднем железе, открытый код и данныеТолько нейровизуализация, нельзя обобщать

Выбор простой. Если нужна максимальная точность по тексту и есть инфраструктура – Baichuan-M3. Если задача – анализ снимков в условиях строгой конфиденциальности (та самая проблема, с которой началась история MedGemma), то 27B Multimodal вне конкуренции. Gemini и аналоги – для тех, кому важнее скорость и нет ресурсов на локальное развертывание.

Кому затевать это всё в 2026 году?

MedGemma 27B – инструмент не для всех. Он для тех, кто уже пережил боль установки первых версий и хочет большего.

  • Исследовательские группы в медицинских вузах. Для анализа анонимизированных наборов данных (EHR, снимки) без отправки в сторонние API. Идеально для подготовки публикаций.
  • Разработчики медицинских информационных систем (МИС). Для встраивания функций автоматического составления предварительных заключений и поиска противоречий в историях болезни. Модель работает за фаерволом.
  • Врачи-исследователи в частных клиниках. Для аудита качества ведения записей и быстрой предварительной сортировки исследований. Но только как помощник, напоминаю.

Если же вы просто хотите поиграться с медицинским ИИ, начните с малого – с той самой первой MedGemma на 7B. Её и на RTX 4060 запустить можно. А 27B – это уже серьезная работа, требующая или RTX 6000 Ada, или двух карт, или терпения к долгой генерации на CPU с RAM-диском.

Прогноз? К концу 2026 года появятся эффективные 6-битные методы квантования специально для мультимодальных моделей. И тогда MedGemma 27B поселится на серверах районных поликлиник. Пока же это мощный, но требовательный инструмент для пионеров.

Подписаться на канал