Model properties

Tune model properties to balance accuracy, latency, and visualization by adjusting preprocessing, hardware selection, and postprocessing settings.

Estimated read time: 3 minutes

Model properties control every stage of the inference pipeline: which device runs the model, how inputs are prepared, how outputs are filtered, and how overlays look. This page introduces the categories and points you to detailed guides for each set of knobs.

Why model properties matter

  • Align preprocessing with the data you capture to avoid implicit resizes or color swaps.

  • Route workloads to the right accelerator and device index for best throughput.

  • Filter or emphasize the classes your application cares about.

  • Keep overlays readable without touching model accuracy.

Inspect current settings

After loading a model, read properties directly on the model object.

from degirum_tools import ModelSpec, remote_assets

model_spec = ModelSpec(
    model_name="yolov8n_coco--640x640_quant_hailort_multidevice_1",
    zoo_url="degirum/hailo",
    inference_host_address="@local",
    model_properties={"device_type": ["HAILORT/HAILO8L", "HAILORT/HAILO8"]},
)
model = model_spec.load_model()
print("device:", model.device_type)
print("input shape:", model.input_shape)
print("confidence:", model.output_confidence_threshold)
print("overlay labels:", model.overlay_show_labels)

Need to experiment? Copy the ModelSpec block, adjust one property at a time, and rerun your validation script using the baseline checklist.

Change properties safely

1

Clone the existing ModelSpec and edit only the property you plan to evaluate.

2

Document the change (e.g., commit message or experiment log) before running tests.

3

Run a deterministic validation set and capture accuracy and timing deltas.

4

Roll back immediately if the change increases error rates or violates latency budgets.

Deep dives

Each guide includes tested snippets and cautions tailored to that category.

Last updated

Was this helpful?