Skip to main content

Why was my text left unchanged?

Leaving text unchanged is a valid decoding path. Premove ITN selects a replacement only when its score beats KEEP while remaining compatible with the other selected edits.

Why can Premove ITN not produce a specific format?

The scorer can select only outputs generated by the deterministic Rust layer. Check Supported forms and the exhaustive Rust candidate coverage.

Why is the first request slow?

The first request can include a model download and model initialization. These are separate from warm inference. Load one instance during service startup and reuse it. See Deployment.

Why is the first download about 1.6 GB?

Premove ITN uses a 435.6-million-parameter DeBERTa-v3-large contextual scorer. Hugging Face caches the pinned model files after the first download.

Does Premove ITN work with Deepgram, AssemblyAI, or Whisper?

Premove ITN consumes transcript text and does not depend on an ASR provider. Pass the provider’s transcript string to normalize().

Why did device selection fail?

An explicit mps or cuda selection fails when that backend is unavailable. Use device="auto" for automatic selection or choose cpu. An exposed device option is not necessarily a validated release platform; see Platform support.

Why was a long input rejected?

When text has normalization candidates, an input longer than 512 DeBERTa encoder tokens is rejected instead of being silently truncated. Text with no candidates returns unchanged before tokenization. Split long material at transcript or sentence boundaries.