Большинство open-source проектов в медицинском ИИ молча предполагают наличие NVIDIA-ускорителя: CUDA стала де-факто стандартом, а всё остальное оборудование воспринимается как экзотика. Проект MedQA, представленный на хакатоне AMD Developer Hackathon на платформе lablab.ai, намеренно ломает эту логику.

Авторы взяли базовую модель Qwen3-1.7B от Alibaba — компактный языковой ИИ на 1,7 млрд параметров — и дообучили её на задаче клинических тестовых вопросов с множественным выбором. Обучение прошло целиком на ускорителе AMD Instinct MI300X, который оснащён 192 ГБ памяти HBM3. Такой объём VRAM снимает главное ограничение при дообучении больших моделей: не нужно прибегать к 4-битной или 8-битной квантизации, можно работать в полном fp16.

ПараметрЗначение
Базовая модельQwen3-1.7B
Число параметров модели1 543 901 184
Обучаемых параметров (LoRA)2 228 224 (0,14%)
Ранг LoRA (r)8
lora_alpha16
Целевые модулиq_proj, v_proj
ДатасетMedMCQA
Обучающих примеров2 000
Эпох обучения2
Эффективный batch size16 (физический 4, накопление 4)
Learning rate2e-4
Формат точностиfp16
Время обучения~5 минут
УскорительAMD Instinct MI300X
VRAM192 ГБ HBM3

Для дообучения использовался метод LoRA (Low-Rank Adaptation) — подход, при котором в слои внимания модели встраиваются небольшие матрицы малого ранга, а исходные веса остаются замороженными. В данном случае обучалось лишь 2,2 млн параметров из 1,54 млрд — около 0,14% от общего числа. Это делает процесс быстрым и дешёвым: на 2000 примерах из датасета MedMCQA обучение заняло примерно 5 минут. MedMCQA — крупный датасет вопросов с вариантами ответов, составленный на основе индийских медицинских вступительных экзаменов (AIIMS и аналогов USMLE). Каждый пример содержит клинический вопрос, четыре варианта ответа и текстовое объяснение.

LoRA обучает лишь 2,2 млн из 1,54 млрд параметров модели — 0,14% от общего числа весов.

Ключевой технический результат проекта — демонстрация совместимости стека Hugging Face (Transformers, PEFT, TRL, Accelerate) с ROCm. Для переключения с CUDA потребовалось задать три переменные окружения: ROCR_VISIBLE_DEVICES, HIP_VISIBLE_DEVICES и HSA_OVERRIDE_GFX_VERSION. Код обучения не изменился ни на строчку. В процессе авторы столкнулись с проблемой NaN-потерь при использовании формата bfloat16 — она решилась переходом на стандартный fp16.

Модель обучена отвечать на вопросы в формате «буква ответа + клиническое объяснение». На примере с вопросом о первой линии лечения гипертонического криза модель корректно выбирает внутривенный лабеталол или нитропруссид и объясняет, почему пероральные препараты действуют слишком медленно для экстренной ситуации. Именно наличие объяснения, по мнению авторов, делает модель клинически полезной, а не просто классификатором.

Результирующий LoRA-адаптер занимает несколько мегабайт — против нескольких гигабайт для полного чекпойнта модели — и опубликован на Hugging Face Hub под идентификатором HK2184/medqa-qwen3-lora. Загрузить его можно напрямую, присоединив к базовой Qwen3-1.7B через библиотеку PEFT.

Ограничения проекта очевидны: 2000 обучающих примеров — намеренно маленькая выборка, выбранная ради скорости демонстрации, а не ради максимальной точности. Авторы не приводят метрик качества на тестовой выборке, что не позволяет сравнить модель с другими решениями на MedMCQA. Тем не менее для отрасли важен сам прецедент: полноценный пайплайн дообучения LLM на медицинских данных, работающий на AMD-железе без модификации кода, снижает зависимость исследователей от монополии NVIDIA в этом сегменте.