Results (MMAD subsets, balanced accuracy)
Table with columns: Benchmark, Balanced accuracy| Benchmark | Balanced accuracy |
|---|
| DS-MVTec (1,670) | 82.73% |
| VisA (2,141) | 70.39% |
Evaluated under a single common harness on the MMAD DS-MVTec and VisA subsets. GRPO lifts the SFT baseline here; the thesis shows it adds no gain on the stronger Arm-C initialisation.
Training
Supervised fine-tuning on AnomalyThink-6K, then GRPO with a four-component reward (format, accuracy, type, location; group size G=4).
The "AnomalyThink" reasoning traces were distilled from Gemini 2.5-Flash on Real-IAD images. Training data: aacudad/AnomalyThink.
Usage
import torch
from transformers import AutoProcessor, Qwen2_5_VLForConditionalGeneration
model = Qwen2_5_VLForConditionalGeneration.from_pretrained("aacudad/AnomalyThink-Qwen2.5-VL-7B-SFT-GRPO", torch_dtype=torch.bfloat16, device_map="auto")
processor = AutoProcessor.from_pretrained("aacudad/AnomalyThink-Qwen2.5-VL-7B-SFT-GRPO")
Intended use and limitations
Research on explainable IAD. Known limitations: the model can confidently hallucinate a defect on a normal part (false positive), and GRPO-lineage variants can over-predict the "Missing Parts" type. As the public DS-MVTec/VisA images may appear in VLM pretraining, absolute numbers should be read with that caveat.
Citation
@mastersthesis{acudad2026anomalythink,
title = {Reasoning-Enhanced Vision-Language Models for Explainable Industrial Anomaly Detection},
author = {Acudad, Adnane},
school = {Delft University of Technology},
year = {2026}
}
License
Apache-2.0 (inherits the Qwen2.5-VL-7B base). Trained on Real-IAD (cite Real-IAD separately; images are not redistributed) with traces distilled from Gemini 2.5-Flash.