NV Reason CT
NV-Reason-CT is an NVIDIA 3D vision-language model for CT image analysis, built by fine-tuning Qwen/Qwen3.5-4B and combining a native 3D ViT encoder with a language model. It handles chest and abdominal CT volumes for radiology report generation, question answering, and multi-step reasoning, preserving 3D spatial relationships via 3D MRoPE without spatial downsampling.
At a glance
- Parameters
- 5.32B
- Architecture
- qwen3_5
- License
- openmdw-1.1
- Disk space
- 9.9 GB
- Software
- Transformers
Will it run on your machine?
Save your machine to see a personalized rating and its reasoning.
Add my hardwareBest for
- Radiology report generation from chest or abdominal CT volumes
- General question answering about CT images
- Multi-step reasoning over CT volumes
- Abnormality-focused QA for chest or abdominal CT
- Multi-turn interactions about CT image content
Tradeoffs
- Designed for CT image analysis and chest or abdominal volumes
- May not generalize beyond CT imaging or the supported anatomy regions
- Input volumes are automatically cropped and resampled, which may affect use with other protocols
- Requires a CUDA-capable PyTorch environment for the recommended setup
- Evaluation and performance details are not provided in the supplied model facts
Ways to run it
Transformers · See official guide
Repository-specific command in publisher documentation; confirm dependencies and hardware in the source.
import torch
from transformers import AutoModelForImageTextToText, AutoProcessor
model_id = "nvidia/NV-Reason-CT"
ct_path = "path/to/volume.nii.gz"
model = AutoModelForImageTextToText.from_pretrained(
model_id,
trust_remote_code=True,
dtype=torch.bfloat16,
attn_implementation="sdpa",
).eval().to("cuda")
processor = AutoProcessor.from_pretrained(
model_id,
trust_remote_code=True,
)
def generate_response(
ct_path,
prompt_text,
anatomy_region="chest",
enable_thinking=True,
max_new_tokens=2048,
):
messages = [
{
"role": "user",
"content": [
{"type": "image"},
{"type": "text", "text": prompt_text},
],
}
]
prompt = processor.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
enable_thinking=enable_thinking,
)
inputs = processor(
text=prompt,
images3d=[ct_path],
anatomy_region=anatomy_region,
return_tensors="pt",
).to(model.device)
with torch.inference_mode():
generated_ids = model.generate(
**inputs,
max_new_tokens=max_new_tokens,
do_sample=False,
use_cache=True,
)
new_tokens = generated_ids[:, inputs.input_ids.shape[1]:]
return processor.batch_decode(
new_tokens,
skip_special_tokens=True,
clean_up_tokenization_spaces=False,
)[0]
# Structured report (Chest region)
print(generate_response(ct_path, "Write a structured chest CT report.", anatomy_region="chest"))Explore its uses
Keep exploring
Bonsai 2 · 27B
A compressed 27B-class reasoning model with publisher-provided GGUF packs and a dedicated llama.cpp fork for CUDA, Metal, and CPU.
DeepSeek V4.1 Flash
An open-weight model for reasoning, coding, agents, and image understanding. DeepSeek V4.1 Flash combines a 552B backbone with sparse activation and up to one million tokens of context. Choose the original checkpoint or a community uncensored variant below.
Qwen3.8
Explore 4 versions of Qwen3.8. Compare model sizes, packages, hardware requirements, and available setups.