How accurate is Ralliyo's AI on labelled defects?
We run the vision models Ralliyo can use on photographs that people have already labelled, and publish how often each one agrees, misses and raises false alarms. No hand-picked successes.
Models compared on the same sample of photographs, at confidence 0.5
| Model | Images | Precision | Recall | F1 | Found | Missed | False alarms | Tokens per image | Run time |
|---|---|---|---|---|---|---|---|---|---|
| gpt-4.1-mini railsight-vision | 150 | 22% | 30% | 25% | 24 | 56 | 87 | 1,290 | 6 min |
| gpt-5-mini railsight-vision-5mini | 148 (2 failed) | 15% | 66% | 24% | 52 | 27 | 299 | 2,473 | 32 min |
›gpt-4.1-mini
F1 25% · precision 22% · recall 30%
By observation type, at confidence 0.5
| Type | Labelled images | Found | Missed | False alarms | Precision | Recall | Box overlap ≥0.3 |
|---|---|---|---|---|---|---|---|
| Fastener deterioration | 0 | 0 | 0 | 41 | 0% | — | — |
| Missing fastener | 39 | 9 | 30 | 11 | 45% | 23% | 0% |
| Potential sleeper cracking | 4 | 0 | 4 | 19 | 0% | 0% | — |
| Rail surface anomaly | 37 | 15 | 22 | 16 | 48% | 41% | 7% |
Effect of the confidence threshold
| Threshold | Precision | Recall | F1 |
|---|---|---|---|
| 0.3 | 22% | 30% | 25% |
| 0.5 | 22% | 30% | 25% |
| 0.7 | 22% | 30% | 25% |
Other findings not scored: Foreign object (5), Visible corrosion (67), Ballast contamination (20), Vegetation encroachment (3), Unusual trackside condition (1).
Examples, including mistakes
Green boxes are the dataset's labels; dashed yellow boxes are the AI's findings.












›gpt-5-mini
F1 24% · precision 15% · recall 66%
By observation type, at confidence 0.5
| Type | Labelled images | Found | Missed | False alarms | Precision | Recall | Box overlap ≥0.3 |
|---|---|---|---|---|---|---|---|
| Fastener deterioration | 0 | 0 | 0 | 128 | 0% | — | — |
| Missing fastener | 39 | 18 | 21 | 10 | 64% | 46% | 33% |
| Potential sleeper cracking | 4 | 4 | 0 | 75 | 5% | 100% | 0% |
| Rail surface anomaly | 36 | 30 | 6 | 86 | 26% | 83% | 10% |
Effect of the confidence threshold
| Threshold | Precision | Recall | F1 |
|---|---|---|---|
| 0.3 | 15% | 67% | 25% |
| 0.5 | 15% | 66% | 24% |
| 0.7 | 16% | 60% | 25% |
Other findings not scored: Visible corrosion (147), Vegetation encroachment (22), Foreign object (53), Ballast contamination (23), Unusual trackside condition (5).
Examples, including mistakes
Green boxes are the dataset's labels; dashed yellow boxes are the AI's findings.












- A fixed, stratified subset of the dataset's held-out split: every labelled defect type is represented, plus clear images so false alarms show up. Every model sees the same photographs.
- Scored per image: a type counts as found when the AI reports it at or above the confidence threshold.
- Only types the dataset labels are scored. Anything else the AI reports is listed separately, not counted as wrong.
- Box overlap (IoU) is reported separately because the labels and the AI draw regions differently.
ZITMS (Roboflow Universe) · test split (300 images) · licence CC BY 4.0.
Dataset by nam on Roboflow Universe, used under CC BY 4.0.
Dataset source