blakeblackshear/frigate · error · Exception

{self.onnx_model_type} is currently not supported for onnx.

Error message

{self.onnx_model_type} is currently not supported for onnx. See the docs for more info on supported models.

What it means

The ONNX detector's detect_raw only implements decode paths for its supported model types (yolox/yologeneric style grids); any other onnx_model_type raises this Exception. It can surface during _warmup at startup, so it typically fails fast on the first inference.

Source

Thrown at frigate/detectors/plugins/onnx.py:141

                    confidence,
                    y_min / self.height,
                    x_min / self.width,
                    y_max / self.height,
                    x_max / self.width,
                ]
            return detections
        elif self.onnx_model_type == ModelTypeEnum.yologeneric:
            return post_process_yolo(tensor_output, self.width, self.height)
        elif self.onnx_model_type == ModelTypeEnum.yolox:
            return post_process_yolox(
                tensor_output[0],
                self.width,
                self.height,
                self.grids,
                self.expanded_strides,
            )
        else:
            raise Exception(
                f"{self.onnx_model_type} is currently not supported for onnx. See the docs for more info on supported models."
            )

View on GitHub (pinned to ca18b8dc13)

Solutions

  1. Use a supported ONNX model (YOLO-X / YOLO generic exports listed in Frigate docs)
  2. Fix the model_type metadata to accurately reflect a supported architecture, or supply a model matching the configured type
  3. Clear the model cache to regenerate correct model_info.json
Defensive patterns

Strategy: validation

Validate before calling

from frigate.detectors.detector_config import ModelTypeEnum
SUPPORTED_ONNX = {ModelTypeEnum.yolox, ModelTypeEnum.yologeneric}
assert config.model.model_type in SUPPORTED_ONNX, 'onnx detector supports yolox/yologeneric only'

Try / catch

try:
    detector = LocalDetector(detector_config)  # triggers _warmup
except Exception as e:
    if 'not supported for onnx' in str(e):
        raise SystemExit('Use a supported ONNX model export') from None
    raise

Prevention

When it happens

Trigger: Configuring the onnx detector with a model whose model_type is not in the supported set, then the first detect_raw call (including automatic _warmup after init) hits the else branch.

Common situations: Using an SSD or YOLO-NAS onnx model with the onnx detector; wrong model_type in cached model_info; onnx exported with a head layout the plugin cannot decode.

Related errors


AI-assisted analysis of blakeblackshear/frigate@ca18b8dc13 (2026-08-27). Data as JSON: /api/errors/749de3f6311d4f21. Report an issue: GitHub.