Microsoft introduced the MAI-DxO (Medical AI Diagnostic Orchestrator) framework in 2025, which leverages multiple Large Language Models (LLMs) acting as different clinical roles (e.g., hypothesis-driving physician, challenging specialist) forming a "virtual expert panel". This architecture demonstrates superior performance compared to single human physicians in text-only sequential diagnostic tasks.
Key Challenge & Limitation: The current open-source MAI-DxO implementation (Open-MAI-Dx-Orchestrator) is purely text-driven and lacks the ability to directly process critical visual information in real-world medical scenarios, such as chest X-rays and other medical imaging.
This project aims to bridge this architectural gap by integrating a Vision Module into the existing open-source MAI-DxO text-based multi-agent framework, upgrading it to support multimodal inputs (clinical text records + medical images) for comprehensive medical diagnostic intelligence.
Recognizing the absence of a perfect open-source dataset combining high-quality real medical images with complex interactive diagnostic scenarios, we innovatively propose and implement a "Decoupled Evaluation Strategy" that rigorously validates system component usability and end-to-end connectivity without compromising academic rigor.
The project validation logic is strictly divided into two decoupled phases:
MIMIC-CXR and CT-RATE datasets (real chest X-rays / real chest CT scans + authentic radiologist reports)MedQA dataset (text-only clinical cases) + text-to-image generation modelsText_GT → (image generation model) → synthetic image → (vision module) → Text_generated → (similarity comparison) → verify Text_generated ≈ Text_GTThe Vision Module serves as the bridge between medical imaging and diagnostic reasoning:
The vision module is built upon Hulu-Med, a transparent generalist medical vision-language model. Follow these steps to install:
# Create a new conda environment with Python 3.10
conda create -n medagent python=3.10
conda activate medagent
# PyTorch and torchvision for CUDA 11.8
pip install torch==2.4.0 torchvision==0.19.0 --extra-index-url https://download.pytorch.org/whl/cu118
# Flash-attn for optimized attention
pip install flash-attn==2.7.3 --no-build-isolation --upgrade
# Transformers and accelerate
pip install transformers==4.51.2 accelerate==1.7.0
# Video processing and image handling
pip install decord ffmpeg-python imageio opencv-python
# Install remaining requirements
pip install -r requirements.txt
The vision module is implemented through a set of Python scripts in the vision_module/ directory:
inference.py - Medical Image InferencePurpose: Processes medical images (CT scans, X-rays) using Hulu-Med-14B to generate clinical findings descriptions.
Functionality:
Usage:
python vision_module/inference.py
Output: JSON file containing generated medical findings for each image
benchmark.py - Evaluation & Quality AssessmentPurpose: Evaluates the quality of generated medical descriptions against ground truth reports using multiple metrics.
Supported Metrics:
Supports Multiple Datasets:
Usage:
# Evaluate X-ray model outputs (default)
python vision_module/benchmark.py xray
# Evaluate CT model outputs
python vision_module/benchmark.py ct
Output: Evaluation metrics (ROUGE, BLEU, BERTScore) for both Findings and Impressions sections
evaluate.py - Batch Inference & EvaluationPurpose: Processes a batch of medical volumes and stores evaluation results.
Functionality:
Usage:
python vision_module/evaluate.py
comp5423-course-project/
├── README.md # Project overview
├── README_EN.md # English version
├── vision_module/ # Vision Module Implementation
│ ├── Hulu-Med/ # Hulu-Med model repository
│ ├── VISION_MODULE_REPORT.md # Technical report (English)
│ ├── inference.py # Medical image inference script
│ ├── benchmark.py # Quality evaluation script
│ └── evaluate.py # Batch evaluation script
├── mai_dx/ # MAI-DxO Framework
├── cases/ # Test cases and examples
├── results/ # Evaluation results
└── MedQA/ # MedQA dataset files
Python
99.8%
Microsoft introduced the MAI-DxO (Medical AI Diagnostic Orchestrator) framework in 2025, which leverages multiple Large Language Models (LLMs) acting as different clinical roles (e.g., hypothesis-driving physician, challenging specialist) forming a "virtual expert panel". This architecture demonstrates superior performance compared to single human physicians in text-only sequential diagnostic tasks.
Key Challenge & Limitation: The current open-source MAI-DxO implementation (Open-MAI-Dx-Orchestrator) is purely text-driven and lacks the ability to directly process critical visual information in real-world medical scenarios, such as chest X-rays and other medical imaging.
This project aims to bridge this architectural gap by integrating a Vision Module into the existing open-source MAI-DxO text-based multi-agent framework, upgrading it to support multimodal inputs (clinical text records + medical images) for comprehensive medical diagnostic intelligence.
Recognizing the absence of a perfect open-source dataset combining high-quality real medical images with complex interactive diagnostic scenarios, we innovatively propose and implement a "Decoupled Evaluation Strategy" that rigorously validates system component usability and end-to-end connectivity without compromising academic rigor.
The project validation logic is strictly divided into two decoupled phases:
MIMIC-CXR and CT-RATE datasets (real chest X-rays / real chest CT scans + authentic radiologist reports)MedQA dataset (text-only clinical cases) + text-to-image generation modelsText_GT → (image generation model) → synthetic image → (vision module) → Text_generated → (similarity comparison) → verify Text_generated ≈ Text_GTThe Vision Module serves as the bridge between medical imaging and diagnostic reasoning:
The vision module is built upon Hulu-Med, a transparent generalist medical vision-language model. Follow these steps to install:
# Create a new conda environment with Python 3.10
conda create -n medagent python=3.10
conda activate medagent
# PyTorch and torchvision for CUDA 11.8
pip install torch==2.4.0 torchvision==0.19.0 --extra-index-url https://download.pytorch.org/whl/cu118
# Flash-attn for optimized attention
pip install flash-attn==2.7.3 --no-build-isolation --upgrade
# Transformers and accelerate
pip install transformers==4.51.2 accelerate==1.7.0
# Video processing and image handling
pip install decord ffmpeg-python imageio opencv-python
# Install remaining requirements
pip install -r requirements.txt
The vision module is implemented through a set of Python scripts in the vision_module/ directory:
inference.py - Medical Image InferencePurpose: Processes medical images (CT scans, X-rays) using Hulu-Med-14B to generate clinical findings descriptions.
Functionality:
Usage:
python vision_module/inference.py
Output: JSON file containing generated medical findings for each image
benchmark.py - Evaluation & Quality AssessmentPurpose: Evaluates the quality of generated medical descriptions against ground truth reports using multiple metrics.
Supported Metrics:
Supports Multiple Datasets:
Usage:
# Evaluate X-ray model outputs (default)
python vision_module/benchmark.py xray
# Evaluate CT model outputs
python vision_module/benchmark.py ct
Output: Evaluation metrics (ROUGE, BLEU, BERTScore) for both Findings and Impressions sections
evaluate.py - Batch Inference & EvaluationPurpose: Processes a batch of medical volumes and stores evaluation results.
Functionality:
Usage:
python vision_module/evaluate.py
comp5423-course-project/
├── README.md # Project overview
├── README_EN.md # English version
├── vision_module/ # Vision Module Implementation
│ ├── Hulu-Med/ # Hulu-Med model repository
│ ├── VISION_MODULE_REPORT.md # Technical report (English)
│ ├── inference.py # Medical image inference script
│ ├── benchmark.py # Quality evaluation script
│ └── evaluate.py # Batch evaluation script
├── mai_dx/ # MAI-DxO Framework
├── cases/ # Test cases and examples
├── results/ # Evaluation results
└── MedQA/ # MedQA dataset files
Python
99.8%