Skip to main content
This page retains the historical v0.1.0 artifact acceptance record. The current v0.3.0 Python package uses the unchanged v0.2.0 model artifact at commit e42a6ad5f58d3fde9cb6cf1f81f7fe40b9d99526; the structured and temporal features in v0.3.0 do not require a new trained scorer. See the v0.2.0 model card for the current model-release provenance.

Historical v0.1.0 record

The public model source of truth for this historical record is the Hugging Face model repository premove-ai/premove-itn, revision v0.1.0. The release is an inference-only export of the frozen structured-value 20k production checkpoint. It contains no optimizer, scheduler, training counters, or training data. Published release:
  • Repository: Hugging Face
  • Python package: PyPI
  • GitHub release: v0.1.0
  • Immutable tag: v0.1.0
  • Hub commit: 80bda5e2e1fe9542aa628597090242df57c1a157
  • Remote model size and SHA-256 verified against the accepted local artifact.
The maintained source for the public Hub landing page is docs/model-card.md. Update that file and review the Hub change as a documentation-only pull request. Updating the card on main must not move or replace the immutable v0.1.0 tag. The organization was renamed from premove-itn to premove-ai after this release. The immutable v0.1.0/provenance.json therefore retains the original premove-itn/premove-itn-contextual repository value. The package accepts that historical value only for this frozen release.

What the runtime actually loads

PremoveITN.from_pretrained() first resolves the pinned Hub commit or a local directory, then checks release metadata against the package’s expected version, repository, base model, revision, and model-file digest. The artifact loader checks the schema and architecture versions, requires the ordered kind list to match SPAN_KINDS, verifies the model-file SHA-256, constructs CandidateScorer from the included base configuration, loads the full state dict with strict=True, and switches to evaluation mode. It also requires a fast tokenizer. The kind order matters because the trained projection consumes a position-dependent multi-hot vector; a reordered list would change the meaning of its weights without changing tensor shapes. The SHA-256 covers model.safetensors. The pinned Hub commit identifies the complete published snapshot, including configuration and tokenizer files. Local artifact directories are allowed for offline use, but the loader still requires the frozen release identity and model-file digest. The custom scorer depends on the package’s Rust candidates and exact decoder, so loading the encoder with a generic Transformers AutoModel is not an end-to-end ITN runtime. See the architecture for that path.

Build the local artifact

Run this from the repository root. The command refuses a checkpoint other than the one named by data/models/production.json and verifies its frozen digest before reading it.
The output is ignored by Git because model.safetensors is large. Keep the local folder until the Hub upload and remote verification are complete.

Run the acceptance gate

This compares the old production checkpoint and the inference artifact through the same candidate builder and decoder. It performs no training.
The gate must report all of the following:
  • 1500/1500 frozen VoiceAgent predictions identical.
  • Identical tensor-state digests.
  • Zero mismatch records.
The repository also has a separate development-only normalization regression fixture. It is not a model-quality result or a publication gate. The JSON and Markdown result are written under eval/voice_agent_itn/results/inference-artifact-v0.1.0/.

Authenticate and publish

Hugging Face requires an authenticated account before upload. Set a write token in the environment or authenticate with the official CLI. Do not commit the token.
Upload the complete folder in one call. The Hub upload API supports resumable large-folder uploads. Do not move or overwrite the v0.1.0 tag after this step. Publish later changes under a new version.

Verify the remote revision

After upload, download the tagged snapshot into a disposable directory and compare its model digest with local provenance.json:
The remote file hash match plus the local 1500/1500 gate is the release acceptance evidence. The loader verifies the same digest whenever PremoveITN.from_pretrained() loads the public release or a local downloaded snapshot:

Licensing

The project code is MIT licensed. The artifact references microsoft/deberta-v3-large at the pinned revision and includes the tokenizer files generated from that revision. Its model card lists the base model under the MIT license. Keep the attribution in the model card and comply with the base model’s terms when redistributing the artifact.