Inflect-Nano-v2 / docs /DEPLOYMENT.md
owensong's picture
Stage verified Inflect v2 release candidate and evaluation evidence
125985b verified
|
Raw
History Blame
1.88 kB

Deployment notes

Installation

Use Python 3.10 or newer in a clean virtual environment, install requirements.txt, then run inference.py from the model repository. The package is tested with PyTorch CPU and CUDA execution; device-specific performance depends on the local PyTorch build.

Reproducibility

Keep the checkpoint, config.json, frontend files, and runtime/ directory together. Record Inflect-Nano-v2, the release revision, speed, variation, and seed with generated artifacts. Verify files against release_manifest.json when moving the package between machines.

Long text

The runtime splits long text at sentence punctuation and then at safe intra-sentence boundaries. Chunks are synthesized independently and joined with punctuation-dependent silence. This prevents unbounded inference but means a long paragraph is not one globally planned prosody pass.

Production boundaries

  • Instantiate InflectTTS once and reuse it; loading per request wastes time.
  • Serialize calls to one model instance unless the surrounding application explicitly manages device memory and random seeds.
  • Validate empty or untrusted input before synthesis.
  • Set a fixed seed for deterministic caching and tests.
  • Measure on the actual target device before claiming real-time operation.

Troubleshooting

  • Missing phonemizer errors: reinstall phonemizer and espeakng-loader from requirements.txt.
  • Unexpected pronunciation: spell out ambiguous abbreviations or add context; the release frontend is English-only.
  • Flat or unstable delivery: keep variation near the default before changing speed.
  • Long pauses: inspect source punctuation because chunk boundaries intentionally follow punctuation.
  • Slow first request: model loading is measured separately from warm synthesis and should not happen per utterance.