Models trained on your own data.

We train our own models for anonymization and ISA validation. When a model meets footage it does not know yet, we retrain it on that footage inside the EU, and it ships only after it passes gates written before the run and a person signs it off.

AI infrastructure › Model training

How a model gets better, and how it ships.

Every release goes through the same loop. A model that fails a gate is recorded as rejected, with the reason.

  • 01

    Harvest

    Frames and detections are sampled from production batches.

  • 02

    Audit

    Two teacher models label every frame. Where they disagree, every frame is reviewed by eye.

  • 03

    Dataset

    Verified false detections become hard negatives, verified misses become positives. Splits are made by recording, with provenance hashes.

  • 04

    Retrain

    Training starts from the exact production checkpoint, proven by its hash. The gates are written before the run.

  • 05

    Gates

    False detections on held-out data must drop, plates must hold, the full dataset is swept and other domains are checked.

  • 06

    Sign-off

    A person signs the model off before anything ships.

  • 07

    Release

    Weights with checksums and a model card, kept beside every earlier version.

  • 08

    Deploy

    A model swap and engine rebuild take about two and a half minutes. Rollback is one file.

What fixing a domain looks like.

  • The problem

    On footage from a new region, the model in use found 1,072 faces that were not there in one recording: sand, grilles, signs and wheels.

  • The data

    26,695 frames from that region, labelled by teacher models, every face reviewed.

  • The first run

    Rejected at the gates: it lost 61 % of the plates.

  • The fix

    Plates relabelled by the model in use, false detections added as hard negatives four times over.

−94 %false detections on the new footage.
+0.4 %plates found.
Nonedrift on European footage. The model was approved.

Where training runs.

  • Apart from production

    Training has its own resources in an EU region. Production only reads released models; nothing is pushed into it directly.

  • In the EU

    Customer footage never touches GitHub. All data stays in the EU.

  • Every version on record

    Which model runs, which ran before, and every rejected run with its reason.

  • Pinned by checksum

    The products that use a model pin it by its checksum.

Send us ten minutes of footage.