/ Модель

Характеристики

Контекст
262 144 токена
Размер весов
54,7 ГБ
Лицензия
Apache 2.0
Архитектура
qwen3_5 · dense
Базовая модель
Qwen3.6-27B
Опубликована
30 июл 2026

HealthGPT-Pro-27B

Генерация изображенийИзображение, текст → изображение3 профессии

Медицинская мультимодальная модель на базе Qwen3.6-27B для анализа медицинского текста, изображений и 3D-объёмов.

249скачиваний за 30 дней5лайковвеса обновлены31 июл 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

HealthGPT-Pro-27B — мультимодальная медицинская языковая модель, дообученная на базе Qwen3.6-27B. Она предназначена для анализа медицинского текста, двумерных изображений и трёхмерных объёмов; заявлены сценарии с КТ, МРТ, рентгеновскими снимками, УЗИ, офтальмологическими и дерматологическими изображениями, эндоскопией, микроскопией и гистопатологией. Модель сохраняет способность следовать общим инструкциям и поддерживает визуально-языковые задачи; для обработки 3D-объёмов README описывает преобразование объёма в последовательность кадров и подачу в формате видео.

Модель использует архитектуру Qwen3.5 с плотной конфигурацией и 27 млрд параметров, веса опубликованы в формате safetensors. В карточке перечислены английский и китайский языки. Разработчик описывает двухэтапное обучение с данными для выравнивания и дообучения инструкциям. Лицензия — Apache-2.0.

README позиционирует модель для исследовательского использования и предупреждает, что она не заменяет клиническое суждение, диагностику или лечение специалиста. Указанный в метаданных pipeline — image-text-to-image, но README описывает понимание и анализ текста и медицинских изображений, а не генерацию изображений; назначение модели поэтому следует трактовать с осторожностью.

Сценарии применения

  • ответы на вопросы по медицинским изображениям
  • анализ КТ и МРТ в формате последовательности срезов
  • объяснение рентгеновских снимков и УЗИ
  • разбор офтальмологических, дерматологических и эндоскопических изображений
  • ответы на вопросы по медицинским знаниям и текстам

Ограничения

Модель предназначена для исследований и не должна заменять профессиональную клиническую оценку, диагностику или лечение. Метаданные указывают задачу image-text-to-image, тогда как README описывает анализ и понимание медицинских входов, поэтому фактический режим применения требует проверки.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

🧭 0. Overview

HealthGPT-Pro is a SoTA medical multimodal large language model (Med-MLLM) built on Qwen3.6. It is designed for medical text, 2D medical image, and 3D medical volumes understanding and analysis, providing strong performance across broad medical text-based and vision-language tasks.

✨ Core features:

  • Multimodal input support: HealthGPT-Pro can process text, 2D images, and 3D volumetric data.
  • Efficient training: HealthGPT-Pro achieves SoTA performance through a two-stage training recipe, using 3M samples for alignment and 10M samples for SFT.
  • Instruction following: Unlike many medical Med-MLLMs tuned only on medical-domain data, HealthGPT-Pro preserves a substantial proportion of general data to maintain instruction-following ability.
  • Comprehensive modality coverage: (1) Computed Tomography (2) Digital Photography (3) Fundus Photography (4) Infrared Reflectance Imaging (5) Magnetic Resonance Imaging (6) Optical Coherence Tomography (7) Dermoscopy (8) Endoscopy (9) Microscopy (10) X-ray Imaging (11) Ultrasound Imaging (12) Histopathology (13) Colposcopy (14) Text.
  • Comprehensive task coverage: HealthGPT-Pro is trained on diverse medical and general tasks, with strong instruction-following behavior.

This model is intended for research use. It should not be used as a substitute for professional clinical judgment, diagnosis, or treatment.

📊 1. Performance Comparison

📝 Medical Text Benchmarks

ModelMMLU-MedMMLU-Pro-MedMMedBenchMedBulletsMedMCQAMedQAMedXpertQA-TextPubMedQASuperGPQA-MedicalAvg.
Qwen3-VL-4B74.350.760.546.456.060.512.675.629.651.8
Qwen3-VL-8B79.857.465.951.361.165.912.876.230.255.6
Lingshu-7B75.853.564.557.856.664.416.976.829.955.1
HealthGPT-14B80.263.463.239.863.466.211.368.025.753.5
HuatuoGPT-V-34B74.751.860.742.754.758.811.454.726.548.4
Hulu-Med-4B78.658.666.759.464.871.916.877.629.558.2
Hulu-Med-7B79.560.672.861.567.673.519.677.431.160.4
HealthGPT-Pro-4B80.458.471.658.064.471.516.278.431.458.9
HealthGPT-Pro-8B83.164.171.460.668.571.318.379.235.461.3
Lingshu-32B85.570.480.870.265.674.322.679.243.865.8
Hulu-Med-32B88.173.083.671.072.380.425.080.645.468.8
HealthGPT-Pro-27B93.273.785.080.774.984.835.080.947.272.8

🖼️ Medical Multimodal Benchmarks

ModelMMMU-MedVQA-RADSLAKEPathVQAMedXpertQA-MultimodalMedFrameQAOmniMedVQA-MiniPMC-VQAM3D-MCQCT-RATE-MCQAMOS-MM-MCQAvg.
Qwen3-VL-4B44.359.977.053.013.440.674.753.057.258.849.252.8
Qwen3-VL-8B46.563.480.258.318.746.473.055.659.561.651.255.9
Lingshu-7B47.366.781.961.025.552.682.457.264.168.362.760.9
HealthGPT-14B45.562.664.256.024.145.370.256.455.257.346.553.0
HuatuoGPT-V-34B50.160.368.347.721.549.669.756.650.154.948.752.5
Hulu-Med-4B45.872.681.759.724.654.275.153.176.070.169.162.0
Hulu-Med-7B50.577.285.864.228.357.477.757.380.476.270.566.0
HealthGPT-Pro-4B52.076.683.966.720.861.478.260.081.086.271.167.1
HealthGPT-Pro-8B54.778.485.070.725.363.680.261.181.686.072.269.0
Lingshu-32B62.168.989.985.830.460.383.565.264.874.365.968.3
Hulu-Med-32B42.872.991.690.035.760.981.264.379.382.875.070.6
HealthGPT-Pro-27B68.368.992.687.244.162.679.870.084.989.980.375.3

⚙️ 2. Environment Setup

The recommended inference environment is provided as follows:

# Create and activate a clean Python 3.11 environment
conda create -n healthgpt-pro python=3.11 -y
conda activate healthgpt-pro

# Install PyTorch with CUDA support. Choose the wheel matching your CUDA/runtime.
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128

# Install inference dependencies
pip install transformers accelerate qwen-vl-utils pillow

# Optional: install FlashAttention for faster attention if your CUDA/PyTorch stack supports it.
pip install flash-attn --no-build-isolation --upgrade

🚀 3. Inference

🧩 Load Model and Processor

import numpy as np
import torch
from PIL import Image
from transformers import AutoProcessor, Qwen3_5ForConditionalGeneration
from qwen_vl_utils import process_vision_info

model_id = "lintw/HealthGPT-Pro-27B"

model = Qwen3_5ForConditionalGeneration.from_pretrained(
    model_id,
    dtype=torch.bfloat16,
    attn_implementation="flash_attention_2",
    device_map="auto",
)
processor = AutoProcessor.from_pretrained(model_id)

💬 Text-Only Inference

messages = [
    {
        "role": "user",
        "content": [
            {"type": "text", "text": "Explain the key symptoms and common risk factors of pneumonia."},
        ],
    }
]

inputs = processor.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    return_dict=True,
    return_tensors="pt",
).to(model.device)

generated_ids = model.generate(**inputs, max_new_tokens=256)
generated_ids_trimmed = [
    out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
    generated_ids_trimmed,
    skip_special_tokens=True,
    clean_up_tokenization_spaces=False,
)
print(output_text[0])

🩻 Single-Image Inference

messages = [
    {
        "role": "user",
        "content": [
            {"type": "image", "image": "examples/chest_xray.png"},
            {"type": "text", "text": "Describe the main radiological findings in this image."},
        ],
    }
]

inputs = processor.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    return_dict=True,
    return_tensors="pt",
).to(model.device)

generated_ids = model.generate(**inputs, max_new_tokens=256)
generated_ids_trimmed = [
    out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
    generated_ids_trimmed,
    skip_special_tokens=True,
    clean_up_tokenization_spaces=False,
)
print(output_text[0])

🖼️ Multi-Image Inference

messages = [
    {
        "role": "user",
        "content": [
            {"type": "image", "image": "examples/image_1.png"},
            {"type": "image", "image": "examples/image_2.png"},
            {"type": "text", "text": "Compare these two medical images and summarize the key differences."},
        ],
    }
]

inputs = processor.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    return_dict=True,
    return_tensors="pt",
).to(model.device)

generated_ids = model.generate(**inputs, max_new_tokens=256)
generated_ids_trimmed = [
    out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
    generated_ids_trimmed,
    skip_special_tokens=True,
    clean_up_tokenization_spaces=False,
)
print(output_text[0])

🧠 3D Volume Inference

The repository inference path converts a 3D .npy volume into a sequence of 2D frames and sends it as a video-style input.

def ct_to_video(ct_path: str):
    ct_pixels = np.load(ct_path)
    ct_u8 = np.clip(ct_pixels * 255, 0, 255).astype(np.uint8)

    frames = []
    idx = np.linspace(1, len(ct_u8) - 2, 10, dtype=int)
    for i in idx:
        rgb = np.stack([ct_u8[i]] * 3, axis=-1)
        frames.append(Image.fromarray(rgb, mode="RGB"))
    return frames

volume_frames = ct_to_video("examples/ct_volume.npy")
messages = [
    {
        "role": "user",
        "content": [
            {"type": "video", "video": volume_frames, "sample_fps": 2.0},
            {"type": "text", "text": "Analyze this CT volume and summarize the main findings."},
        ],
    }
]

text = processor.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
)
images, videos, video_kwargs = process_vision_info(
    messages,
    image_patch_size=16,
    return_video_kwargs=True,
    return_video_metadata=True,
)
if videos is not None:
    videos, video_metadatas = zip(*videos)
    videos, video_metadatas = list(videos), list(video_metadatas)
else:
    video_metadatas = None

inputs = processor(
    text=text,
    images=images,
    videos=videos,
    video_metadata=video_metadatas,
    return_tensors="pt",
    do_resize=False,
    **video_kwargs,
).to(model.device)

generated_ids = model.generate(**inputs, max_new_tokens=256)
generated_ids_trimmed = [
    out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
    generated_ids_trimmed,
    skip_special_tokens=True,
    clean_up_tokenization_spaces=False,
)
print(output_text[0])

📚 4. Citation

If you find this model useful for your research, please cite:

@misc{lin2025healthgptmedicallargevisionlanguage,
      title={HealthGPT: A Medical Large Vision-Language Model for Unifying Comprehension and Generation via Heterogeneous Knowledge Adaptation}, 
      author={Tianwei Lin and Wenqiao Zhang and Sijing Li and Yuqian Yuan and Binhe Yu and Haoyuan Li and Wanggui He and Hao Jiang and Mengze Li and Xiaohui Song and Siliang Tang and Jun Xiao and Hui Lin and Yueting Zhuang and Beng Chin Ooi},
      year={2025},
      eprint={2502.09838},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2502.09838}, 
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Нельзя запустить

Задача «image-text-to-image» пока не поддерживается рантаймом.

Класс архитектуры
Qwen3_5ForConditionalGeneration
Ревизия весов
b9f5dea

0 моделей