About this project

MOSS-TTS-Nano is an open-source multilingual speech generation model from MOSI.AI and the OpenMOSS team. With roughly 0.1B parameters, it targets real-time speech generation and can run on CPU without a GPU, keeping deployment simple for local demos, web serving and lightweight integration. Main characteristics described in the README: - Tiny model size of about 0.1B parameters. - Native 48 kHz, 2-channel (stereo) audio output. - Multilingual support covering 20 languages, including Chinese, English, German, Spanish, French, Japanese, Italian, Hungarian, Korean, Russian, Persian, Arabic, Polish, Portuguese, Czech, Danish, Swedish, Greek and Turkish. - Pure autoregressive architecture built on an Audio Tokenizer plus LLM pipeline. - Streaming inference with low real-time latency and fast first audio. - CPU-friendly: streaming generation can run on a 4-core CPU. - Long-text capability with automatic chunked voice cloning. - Open-source deployment paths via direct Python scripts and a packaged CLI. Quickstart: the README recommends a clean Python environment, cloning the repository, installing requirements and installing the project in editable mode so the moss-tts-nano command becomes available. Default model loading uses OpenMOSS-Team/MOSS-TTS-Nano and OpenMOSS-Team/MOSS-Audio-Tokenizer-Nano. Voice cloning is the main recommended workflow, demonstrated with infer.py using a prompt audio path and input text. A local FastAPI web demo can be launched with app.py and opened at 127.0.0.1:18083. ONNX CPU inference: an ONNX CPU version is recommended for lightweight local deployment. It removes the PyTorch dependency during inference, runs on ONNX Runtime CPU, supports direct reference audio, built-in voices and realtime streaming decode, and is described as nearly 2x more processing-efficient than the original version in the project's tests. On a MacBook Air M4, smooth inference was observed with a single CPU core. ONNX entrypoints include infer_onnx.py, app_onnx.py and the packaged CLI with --backend onnx. CUDA execution is optional via onnxruntime-gpu and --execution-provider cuda. Missing model files are downloaded on first run from the ONNX Hugging Face repositories. Additional tooling: an Android ONNX Runtime example under examples/android_onnx_runtime loads exported ONNX graphs on device and writes a WAV file. An exporter under onnx/ converts a local Hugging Face-format checkpoint into a TTS-only ONNX model directory. The packaged CLI offers moss-tts-nano generate and moss-tts-nano serve commands, with options for prompt speech, text files, backend selection and execution provider. Finetuning code and tutorials are provided in the finetuning directory. The repository also documents MOSS-Audio-Tokenizer-Nano, a lightweight tokenizer of about 20 million parameters built on the Cat (Causal Audio Tokenizer with Transformer) architecture. It supports 48 kHz stereo input and output, compresses audio into a 12.5 Hz token stream, and uses RVQ with 16 codebooks across variable bitrates from 0.125 kbps to 2 kbps. Evaluation tables and plots compare reconstruction quality against open-source tokenizers with no more than 120M parameters on speech, audio and music data. The broader MOSS-TTS family is also described, including MOSS-TTS, MOSS-TTS-Local-Transformer, MOSS-TTSD-v1.0, MOSS-VoiceGenerator, MOSS-SoundEffect and MOSS-TTS-Realtime, with links to model weights on Hugging Face and ModelScope.