MedMO: Grounding and Understanding Multimodal Large Language Model for Medical Images

April 8, 2026 ยท View on GitHub

Paper Model Model Model Model License

MedMO Logo

MedMO-8B-Next is the latest and most powerful iteration of the MedMO family โ€” an open-source multimodal foundation model purpose-built for comprehensive medical image understanding and grounding. Trained on 26M+ diverse medical samples across 45 datasets, MedMO-8B-Next achieves state-of-the-art performance across all major medical imaging benchmarks, outperforming both open-source and closed-source competitors on VQA, Text QA, grounding, and report generation tasks.

๐ŸŽฏ Capabilities

MedMO excels at a comprehensive range of medical imaging tasks:

  • Visual Question Answering (VQA): Answer complex questions about medical images across radiology, pathology, ophthalmology, and dermatology
  • Text-Based Medical QA: Clinical reasoning and medical knowledge question answering
  • Radiology Report Generation: Generate detailed, clinically accurate radiology reports from medical images
  • Disease Localization with Bounding Boxes: Precise spatial detection and localization of pathological findings
  • Anatomical Grounding: Spatial localization and grounding of anatomical structures
  • Clinical Reasoning: Step-by-step diagnostic reasoning and clinical decision support
  • Diagnostic Classification: Multi-class disease classification across diverse imaging modalities
  • Spatial Object Detection: Fine-grained detection in microscopy, pathology slides, and cellular imaging
  • Medical Report Summarization: Extract and summarize key clinical findings from complex medical reports

Supported Modalities

  • Radiology (X-ray, CT, MRI, Ultrasound)
  • Pathology & Microscopy
  • Ophthalmology (Fundus, OCT)
  • Dermatology
  • Nuclear Medicine (PET, SPECT)

๐Ÿ† Benchmark Performance

VQA & Text QA Results

MedMO-8B-Next sets a new state-of-the-art across the board, achieving the highest average scores on both medical VQA and Text QA benchmarks โ€” surpassing strong baselines including Lingshu-7B and Fleming-VL-8B.

OMIVQA = OmniMedVQA ยท MedXQA = MedXpertQA ยท Medbullets reported as op4/op5

Medical VQA Benchmarks

ModelMMMU-MedVQA-RAD (closed/all)SLAKE (closed/all)PathVQAPMC-VQAOmniMedVQAMedXpertQAAvg.
Lingshu-7B54.077.2 / 43.082.4 / 33.241.954.282.926.955.1
Fleming-VL-8B63.378.4 / 56.486.9 / 80.056.564.388.221.666.1
MediX-R1-8B63.375.2/51.670.3/54.441.055.373.824.957.1
MedMO-4B54.650.9 / 35.041.0 / 30.042.450.679.724.845.4
MedMO-8B64.672.3 / 64.770.6 / 70.056.359.484.826.263.2
MedMO-4B-Next58.779.7 / 59.678.0 / 74.073.375.790.627.068.5
MedMO-8B-Next69.386.4 / 68.083.0 / 81.656.374.193.342.972.7

Medical Text QA Benchmarks

ModelMMLU-MedPubMedQAMedMCQAMedQAMedbullets (op4/op5)MedXpertQASGPQAAvg.
Lingshu-7B69.675.856.363.562.0 / 53.816.427.553.1
Fleming-VL-8B71.874.051.853.740.5 / 37.312.124.945.7
MediX-R1-8B79.073.460.185.855.1/47.014.434.356.1
MedMO-4B75.778.058.078.557.5 / 47.716.429.455.1
MedMO-8B81.077.665.084.366.5 / 60.219.936.061.3
MedMO-4B-Next74.878.258.178.357.4 / 47.616.529.555.0
MedMO-8B-Next80.275.662.083.865.2 / 57.820.935.560.1

Bold = best result, underline = second-best result.

  • Benchmarked on AMD MI210 GPU.

๐Ÿš€ Quick Start

Installation

pip install transformers torch qwen-vl-utils

Basic Usage

from transformers import Qwen3VLForConditionalGeneration, AutoProcessor
from qwen_vl_utils import process_vision_info
import torch

# Load model
model = Qwen3VLForConditionalGeneration.from_pretrained(
    "MBZUAI/MedMO-8B",
    torch_dtype=torch.bfloat16,
    attn_implementation="flash_attention_2",
    device_map="auto",
)

processor = AutoProcessor.from_pretrained("MBZUAI/MedMO-8B")

# Prepare your input
messages = [
    {
        "role": "user",
        "content": [
            {
                "type": "image",
                "image": "path/to/medical/image.png",
            },
            {"type": "text", "text": "What abnormalities are present in this chest X-ray?"},
        ],
    }
]

# Process and generate
text = processor.apply_chat_template(
    messages, tokenize=False, add_generation_prompt=True
)
image_inputs, video_inputs = process_vision_info(messages)
inputs = processor(
    text=[text],
    images=image_inputs,
    videos=video_inputs,
    padding=True,
    return_tensors="pt",
)
inputs = inputs.to(model.device)

# Generate output
generated_ids = model.generate(**inputs, max_new_tokens=512)
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])

Example: Disease Localization with Bounding Boxes

messages = [
    {
        "role": "user",
        "content": [
            {"type": "image", "image": "chest_xray.png"},
            {"type": "text", "text": "Detect and localize all abnormalities in this image."},
        ],
    }
]
# Output: "Fractures <box>[[156, 516, 231, 607], [240, 529, 296, 581]]</box>"

Example: Report Generation

messages = [
    {
        "role": "user",
        "content": [
            {"type": "image", "image": "ct_scan.png"},
            {"type": "text", "text": "Generate a detailed radiology report for this CT scan."},
        ],
    }
]
# MedMO generates comprehensive clinical reports with findings and impressions

๐Ÿ—๏ธ Model Architecture

MedMO is built on Qwen3-VL-8B-Instruct and trained through a 4-stage progressive pipeline:

  1. Stage 1 - General Medical SFT: Large-scale training on 18.5M image-text pairs for foundational medical understanding
  2. Stage 2 - High-Resolution & Grounding: Training on 3M curated samples at 1280ร—1280 resolution for spatial localization
  3. Stage 3 - Instruction Tuning: Fine-tuning on 4.3M instruction-response pairs for task-specific alignment
  4. Stage 4 - Reinforcement Learning: GRPO training with verifiable rewards (label accuracy, bbox IoU) for enhanced grounding

Total Training Data: 26M+ samples from 45 medical datasets spanning diverse modalities and anatomical systems.

๐Ÿ“Š Evaluation

Evaluation Framework

MedMO was comprehensively evaluated using multiple frameworks and metrics:

Standard Medical Benchmarks

We used MedEvalKit for systematic evaluation across all QA taks:

LLM-as-a-Judge Evaluation

For VQAs question answering and report generation tasks, we employed an LLM-as-a-Judge methodology:

  • Judge Model: gpt-5-mini-2025-08-07

This approach provides robust, scalable assessment of the model's ability to generate detailed, medically accurate long-form responses.


๐Ÿ“ฆ Model Family

ModelParametersBest For
MedMO-8B-Next8BSOTA highest accuracy, all tasks โ€” recommended
MedMO-4B-Next4B2nd SOTA, high accuracy in resource-constrained environments
MedMO-8B8BPrevious generation
MedMO-4B4BResource-constrained environments

For detailed benchmark results, please refer to our paper.

๐Ÿ“„ Citation

If you use MedMO in your research, please cite our paper:

@article{deria2026medmo,
  title={MedMO: Grounding and Understanding Multimodal Large Language Model for Medical Images},
  author={Deria, Ankan and Kumar, Komal and Dukre, Adinath Madhavrao and Segal, Eran and Khan, Salman and Razzak, Imran},
  journal={arXiv preprint arXiv:2602.06965},
  year={2026}
}

๐Ÿ™ Acknowledgments

We gratefully acknowledge the following:

  • Base Architecture: Built on Qwen3-VL by Alibaba Cloud
  • Evaluation Framework: MedEvalKit by Alibaba DAMO Academy
  • Training Framework: TRL (Transformer Reinforcement Learning) by Hugging Face
  • LLM-as-a-Judge: Evaluation powered by gpt-5-mini-2025-08-07 from OpenAI
  • Compute Resources: Training conducted on 64ร— AMD Instinct MI210 GPUs
  • Open-Source Datasets: We thank the medical imaging community for providing high-quality public datasets including MedTrinity, MIMIC-CXR, CheXpert, PathVQA, and many others that made this work possible

๐Ÿ“œ License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

๐Ÿ“ง Contact

For questions, issues, or collaborations:

website counter