Deployment / Practice
verifiedModel Versioning
"Which model produced this prediction?" is a question every deployed system eventually has to answer, usually under time pressure and usually about something that went wrong. Answering it means the weights were not the only thing that had a version — the data they were trained on, the preprocessing, the prompt, and the configuration all had to be pinned too.
The failure this prevents is subtle and common: a model reproduced from the same checkpoint gives different answers because the tokenizer was updated, or a feature was computed differently, or a default changed in a library. None of that is in the weights. A version that means anything is the whole tuple, and the discipline that makes it work is that the serving path reads its configuration from the version rather than from wherever it happens to be deployed.
The number of things that must match is the problem. Each independently-versioned component multiplies the space of possible deployed combinations, so a system with five loosely-coupled pieces has far more reachable states than anyone has tested — and the untested ones are reached by ordinary operations rather than by anything exotic. Pinning them together collapses that space to the one line in a manifest, which is the entire value of doing it.
pinned-artifacts holds 67% of the budget; rest holds the remaining 33%.
Things that must be pinned alongside the weights — data snapshot, preprocessing, prompt, config, library versions — against the weights themselves. Drag the count up to watch the checkpoint become the small part of what a version actually is.
Reviewed by opendroid · 2026-08-18
- arXiv:1810.03993 — Model Cards for Model Reporting
- arXiv:2011.03395 — Underspecification Presents Challenges for Credibility in Modern Machine Learning