roboflow/supervision · error · ValueError
Precision metric requires `confidence` on predictions.
Error message
Precision metric requires `confidence` on predictions.
What it means
Error "Precision metric requires `confidence` on predictions." thrown in roboflow/supervision.
Source
Thrown at src/supervision/metrics/precision.py:239
if len(predictions) == 0:
target_class_ids = np.asarray(targets.class_id, dtype=np.int32)[
target_size_mask
]
if len(target_class_ids) == 0:
continue
stats.append(
(
np.zeros((0, iou_thresholds.size), dtype=bool),
np.zeros((0, iou_thresholds.size), dtype=bool),
np.zeros((0,), dtype=np.float32),
np.zeros((0,), dtype=int),
target_class_ids,
)
)
else:
if predictions.confidence is None:
raise ValueError(
"Precision metric requires `confidence` on predictions."
)
prediction_class_ids = np.asarray(
predictions.class_id, dtype=np.int32
)
target_class_ids = np.asarray(targets.class_id, dtype=np.int32)
prediction_confidence = np.asarray(
predictions.confidence, dtype=np.float32
)
if self._metric_target == MetricTarget.BOXES:
iou = box_iou_batch(target_contents, prediction_contents)
elif self._metric_target == MetricTarget.MASKS:
iou = mask_iou_batch(target_contents, prediction_contents)
elif self._metric_target == MetricTarget.ORIENTED_BOUNDING_BOXES:
iou = oriented_box_iou_batch(
target_contents, prediction_contents
)
else:View on GitHub (pinned to 7f254d9784)
Solutions
- Set confidence on the prediction Detections before computing Precision.
- If scores are unavailable, supply a placeholder confidence array.
When it happens
Trigger: Thrown at src/supervision/metrics/precision.py:239 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of roboflow/supervision@7f254d9784 (2026-08-15).
Data as JSON: /api/errors/c6e015d866888a0b.
Report an issue: GitHub.