sherpa-onnx-vits-rasa-13

ONNX export of ai4bharat/vits_rasa_13 packaged for use with sherpa-onnx.

Model Overview

  • 1024 speakers
  • 32 emotions
  • 13 Indic languages
  • Single ONNX file
  • Adds emotion_id as a 7th input to the standard sherpa-onnx VITS runner signature. (Stock sherpa-onnx does not know about this input. See requirements)

Requirements

  • sherpa-onnx built with emotion-input support. This model exposes emotion_id as a required ONNX input. PR in sherpa-onnx (#3849). On earlier builds you will see unexpected input 'emotion_id' at load time.

Files

File Purpose
model.onnx fp32 VITS graph, ~150 MB
tokens.txt Character frontend, one <char> <id> per line

Metadata

Key Value
model_type vits
frontend characters
add_blank 1
n_speakers 1024
num_emotions 32
sample_rate 22050
language multilingual-indic
punctuation (empty)

Valid runtime ranges:

  • speaker_id: [0, 1024)
  • emotion_id: [0, 32)

Usage

sherpa-onnx-offline-tts \
  --vits-model=./model.onnx \
  --vits-tokens=./tokens.txt \
  --sid=0 \
  --emotion-id=0 \
  --output-filename=./out.wav \
  "வணக்கம், நீங்கள் எப்படி இருக்கிறீர்கள்"

Notes:

  • sherpa-onnx splits input on ., ?, ! regardless of this model's punctuation ONNX metadata. If your input ends with sentence-ending punctuation, sherpa generates a short trailing sentence that may synthesize as noise. Workarounds: strip trailing punctuation, or use --vits-noise-scale-w to try to reduce it. Tracking issue: TBD.

Reproducing the export

Export tooling lives in a separate repository: github.com/matiaslin/sherpa-onnx-vits-rasa-13-exporter. See its README for setup and CLI options.

Licenses and attribution

If you use this model, please cite:

@article{ai4bharat_vits_rasa_13,
  title={VITS TTS for Indian Languages},
  author={Ashwin Sankar},
  year={2024},
  publisher={Hugging Face}
}

See upstream Citation.

Known differences from upstream HF inference

  • Duration and prosody may differ from the HF Python reference. sherpa-onnx defaults to length_scale=1.0, while HF's inference uses length_scale=1.0/config.speaking_rate internally. Set --vits-length-scale if you need to match a specific HF invocation.
  • sherpa-onnx wraps token ids with an extra BOS/EOS blank (0) around HF's add_blank output (which might result in a few silent frames' difference at each end).
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support