SAVRN
Search Contact SAVRN

Open-weight model · Text to speech

MOSS-TTS-Nano-100M

by OpenMOSS OpenMOSS-Team/MOSS-TTS-Nano-100M

MOSS-TTS-Nano is an open-source multilingual tiny speech generation model from MOSI.AI and the OpenMOSS team.

Parameters
Context32,768
Weights234.7 MB
Licenseapache-2.0
AccessOpen weights
Monthly Downloads83k

Model Card

By OpenMOSS, published under apache-2.0, revision 44502f80dbf9.

MOSS-TTS-Nano is an open-source multilingual tiny speech generation model from MOSI.AI and the OpenMOSS team. With only 0.1B parameters, it is designed for realtime speech generation, can run directly on CPU without a GPU, and keeps the deployment stack simple enough for local demos, web serving, and lightweight product integration. 2026.4.10: We release MOSS-TTS-Nano. A demo Space is available at OpenMOSS-Team/MOSS-TTS-Nano. You can also view the demo and more details at openmoss.github.io/MOSS-TTS-Nano-Demo/. MOSS-TTS-Nano focuses on the part of TTS deployment that matters most in practice: small footprint, low latency, good enough quality for realtime products, and simple local setup. It…

Read OpenMOSS's full model card

MOSS-TTS-Nano


MOSS-TTS-Nano is an open-source multilingual tiny speech generation model from MOSI.AI and the OpenMOSS team. With only 0.1B parameters, it is designed for realtime speech generation, can run directly on CPU without a GPU, and keeps the deployment stack simple enough for local demos, web serving, and lightweight product integration.

News

Demo

Contents

  • News
  • Demo
  • Introduction
  • Main Features
  • Supported Languages
  • Quickstart
  • Environment Setup
  • Voice Clone with infer.py
  • Local Web Demo with app.py
  • CLI Command: moss-tts-nano generate
  • CLI Command: moss-tts-nano serve
  • MOSS-Audio-Tokenizer-Nano
  • License
  • Citation
  • Star History

Introduction

MOSS-TTS-Nano focuses on the part of TTS deployment that matters most in practice: small footprint, low latency, good enough quality for realtime products, and simple local setup. It uses a pure autoregressive Audio Tokenizer + LLM pipeline and keeps the inference workflow friendly for both terminal users and web-demo users.

Main Features

  • Tiny model size: only 0.1B parameters
  • Native audio format: 48 kHz, 2-channel output
  • Multilingual: supports Chinese, English, and more
  • Pure autoregressive architecture: built on Audio Tokenizer + LLM
  • Streaming inference: low realtime latency and fast first audio
  • CPU friendly: streaming generation can run on a 4-core CPU
  • Long-text capable: supports long input with automatic chunked voice cloning
  • Open-source deployment: direct python infer.py, python app.py, and packaged CLI support

Supported Languages

MOSS-TTS-Nano currently supports 20 languages:

Language Code Flag Language Code Flag Language Code Flag
Chinese zh English en German de
Spanish es French fr Japanese ja
Italian it Hungarian hu Korean ko
Russian ru Persian (Farsi) fa Arabic ar
Polish pl Portuguese pt Czech cs
Danish da Swedish sv Greek el
Turkish tr

Quickstart

Environment Setup

We recommend a clean Python environment first, then installing the project in editable mode so the moss-tts-nano command becomes available locally. The examples below intentionally keep arguments minimal and rely on the repository defaults. By default, the code loads OpenMOSS-Team/MOSS-TTS-Nano and OpenMOSS-Team/MOSS-Audio-Tokenizer-Nano.

Using Conda
conda create -n moss-tts-nano python=3.12 -y
conda activate moss-tts-nano

git clone https://github.com/OpenMOSS/MOSS-TTS-Nano.git
cd MOSS-TTS-Nano

pip install -r requirements.txt
pip install -e .

If WeTextProcessing fails to install from requirements.txt, try installing it manually in the same environment:

conda install -c conda-forge pynini=2.1.6.post1 -y
pip install git+https://github.com/WhizZest/WeTextProcessing.git

Voice Clone with infer.py

This repository keeps the direct Python entrypoint for local inference. The example below uses voice clone mode, which is the main recommended workflow for MOSS-TTS-Nano.

python infer.py \
  --prompt-audio-path assets/audio/zh_1.wav \
  --text "欢迎关注模思智能、上海创智学院与复旦大学自然语言处理实验室。"

This writes audio to generated_audio/infer_output.wav by default.

Local Web Demo with app.py

You can launch the local FastAPI demo for browser-based testing:

python app.py

Then open http://127.0.0.1:18083 in your browser.

CLI Command: moss-tts-nano generate

After pip install -e ., you can call the packaged CLI directly:

moss-tts-nano generate \
  --prompt-speech assets/audio/zh_1.wav \
  --text "欢迎关注模思智能、上海创智学院与复旦大学自然语言处理实验室。"

Useful notes:

  • moss-tts-nano generate writes to generated_audio/moss_tts_nano_output.wav by default.
  • --prompt-speech is the friendly alias for the reference audio path used by voice cloning.
  • --text-file is supported for long-form synthesis.

CLI Command: moss-tts-nano serve

You can also launch the web demo through the packaged CLI:

moss-tts-nano serve

This command forwards to app.py, keeps the model loaded in memory, and serves the local browser demo plus HTTP generation endpoints.

MOSS-Audio-Tokenizer-Nano

Introduction

MOSS-Audio-Tokenizer is the unified discrete audio interface for the entire MOSS-TTS family. It is built on the Cat (Causal Audio Tokenizer with Transformer) architecture, a CNN-free audio tokenizer composed entirely of causal Transformer blocks. It serves as the shared audio backbone for MOSS-TTS, MOSS-TTS-Nano, MOSS-TTSD, MOSS-VoiceGenerator, MOSS-SoundEffect, and MOSS-TTS-Realtime, providing a consistent audio representation across the full product family.

To further improve perceptual quality while reducing inference cost, we trained MOSS-Audio-Tokenizer-Nano, a lightweight tokenizer with approximately 20 million parameters designed for high-fidelity audio compression. It supports 48 kHz input and output as well as stereo audio, which helps reduce compression loss and improve listening quality. It can compress 48 kHz stereo audio into a 12.5 Hz token stream and uses RVQ with 16 codebooks, enabling high-fidelity reconstruction across variable bitrates from 0.125 kbps to 4 kbps.

To learn more about setup, advanced usage, and evaluation metrics, please visit the MOSS-Audio-Tokenizer Repository

Architecture of MOSS-Audio-Tokenizer-Nano

Model Weights

Model Hugging Face ModelScope
MOSS-Audio-Tokenizer-Nano

License

This repository will follow the license specified in the root LICENSE file. If you are reading this before that file is published, please treat the repository as not yet licensed for redistribution.

Citation

If you use the MOSS-TTS work in your research or product, please cite:

@misc{openmoss2026mossttsnano,
  title={MOSS-TTS-Nano},
  author={OpenMOSS Team},
  year={2026},
  howpublished={GitHub repository},
  url={https://github.com/OpenMOSS/MOSS-TTS-Nano}
}
@misc{gong2026mossttstechnicalreport,
  title={MOSS-TTS Technical Report},
  author={Yitian Gong and Botian Jiang and Yiwei Zhao and Yucheng Yuan and Kuangwei Chen and Yaozhou Jiang and Cheng Chang and Dong Hong and Mingshu Chen and Ruixiao Li and Yiyang Zhang and Yang Gao and Hanfu Chen and Ke Chen and Songlin Wang and Xiaogui Yang and Yuqian Zhang and Kexin Huang and ZhengYuan Lin and Kang Yu and Ziqi Chen and Jin Wang and Zhaoye Fei and Qinyuan Cheng and Shimin Li and Xipeng Qiu},
  year={2026},
  eprint={2603.18090},
  archivePrefix={arXiv},
  primaryClass={cs.SD},
  url={https://arxiv.org/abs/2603.18090}
}
@misc{gong2026mossaudiotokenizerscalingaudiotokenizers,
  title={MOSS-Audio-Tokenizer: Scaling Audio Tokenizers for Future Audio Foundation Models}, 
  author={Yitian Gong and Kuangwei Chen and Zhaoye Fei and Xiaogui Yang and Ke Chen and Yang Wang and Kexin Huang and Mingshu Chen and Ruixiao Li and Qingyuan Cheng and Shimin Li and Xipeng Qiu},
  year={2026},
  eprint={2602.10934},
  archivePrefix={arXiv},
  primaryClass={cs.SD},
  url={https://arxiv.org/abs/2602.10934}, 
}

Configuration

Architecture
MossTTSNanoForCausalLM
Context length (tokens)
32,768
Hidden size
768
Vocabulary size
16,384
Model type
moss_tts_nano

Identity and Version

Repository
OpenMOSS-Team/MOSS-TTS-Nano-100M
Publisher
OpenMOSS
Task
Text to speech
Modality
Audio
Library
Not stated by the source
Parameters
Not stated by the source
Languages
zh, en, de, es, fr, ja, it, he
Revision
44502f80dbf9743528fa921cc544d662c685ebec
First published
2026-04-02
Last updated
2026-04-13

Files and Weights

19 files, 237.8 MB in total. The weights are 1 file totalling 234.7 MB in bin.

Weights1 file · 234.7 MB
Configuration8 files · 155.5 KB
Tokenizer3 files · 645.8 KB
Documentation1 file · 11.1 KB
Other4 files · 2.3 MB
Repository2 files · 1.6 KB
Every file
FileTypeSizeSHA-256
pytorch_model.binWeights234.7 MB 24003f2f11ac
__init__.pyConfiguration800 B
config.jsonConfiguration5.2 KB
configuration_moss_tts_nano.pyConfiguration5.0 KB
gpt2_decoder.pyConfiguration26.6 KB
modeling_moss_tts_nano.pyConfiguration111.0 KB
prompting.pyConfiguration2.7 KB
special_tokens_map.jsonConfiguration552 B
tokenization_moss_tts_nano.pyConfiguration3.6 KB
README.mdDocumentation11.1 KB
assets/images/OpenMOSS_Logo.pngOther31.9 KB 1693063e8714
assets/images/concept.pngOther2.2 MB 18c079211d63
assets/images/mosi-logo.pngOther25.2 KB d83a75af3f18
assets/images/wechat.jpgOther11.1 KB d14f8415797d
.gitattributesRepository1.6 KB
.gitignoreRepository11 B
assets/images/arch_moss_audio_tokenizer_nano.pngTokenizer173.8 KB 2975096ead35
tokenizer.modelTokenizer470.9 KB c353ee1479b5
tokenizer_config.jsonTokenizer1.1 KB

License and Download

License
apache-2.0
Access
Open weights, no gate
Download size
234.7 MB
Download from OpenMOSS

Released by OpenMOSS through its official repository on Hugging Face. Read the license.

Built From

Memory Requirements

PrecisionWeights in memory
As published234.7 MB

Weights only, from the published parameter count; the key-value cache and runtime add to this.

Questions About MOSS-TTS-Nano-100M

Can I use MOSS-TTS-Nano-100M commercially?

Yes. MOSS-TTS-Nano-100M is released under Apache License 2.0. The Apache License 2.0 is a permissive open-source license. It permits commercial use, modification and redistribution. It requires keeping the license and copyright notices and any NOTICE file, stating significant changes, and it includes an express patent grant from contributors.

What is MOSS-TTS-Nano-100M's context length?

32,768 tokens, from the maximum position embeddings in its published configuration.

Similar Models

Model · Text to speech

Kokoro-82M

Hexgrad

Kokoro is an open-weight TTS model with 82 million parameters. Despite its lightweight architecture, it delivers comparable quality to larger models while being significantly faster and more cost-efficient. With Apache-licensed weights, Kokoro can be deployed anywhere from production environments to personal projects. You can run this basic cell on Google Colab. Listen to samples. For more languages and details, see Advanced Usage. Under the hood, kokoro uses misaki, a G2P library at https://github.com/hexgrad/misaki Model SHA256 Hash: 496dba118d1a58f5f3db2efc88dbdc216e0483fc89fe6e47ee1f2c53f18ad1e4 Data: Kokoro was trained exclusively on permissive/non-copyrighted audio data and IPA…

Open weights apache-2.0

Model · Text to speech

XTTS-v2

Coqui.ai

ⓍTTS is a Voice generation model that lets you clone voices into different languages by using just a quick 6-second audio clip. There is no need for an excessive amount of training data that spans countless hours. This is the same or similar model to what powers Coqui Studio and Coqui API. - Supports 17 languages. - Voice cloning with just a 6-second audio clip. - Emotion and style transfer by cloning. - Cross-language voice cloning. - Multi-lingual speech generation. - 24khz sampling rate. - 2 new languages; Hungarian and Korean - Architectural improvements for speaker conditioning. - Enables the use of multiple speaker references and interpolation between speakers. - Stability…

Open weights other coqui

Model · Text to speech

audio.cpp-gguf

Audio.cpp

This directory contains audio.cpp-native GGUF conversions of multiple speech models. These files are intended for use with audio.cpp. If you enjoy the project, please star audio.cpp on GitHub and this Hugging Face repository. For conversion details, supported layouts, direct-file loading, sidecar embedding, and the latest compatibility notes, see the audio.cpp GGUF guide: - https://github.com/0xShug0/audio.cpp/blob/main/docs/gguf.md!!! Converted and quantized packages are checked with automated metrics, but perceived quality can still differ for human listeners. Please validate the exact package, backend, and route to confirm the output is acceptable for your use case. The table lists the…

Open weights other audio.cpp

Model · Text to speech

chatterbox

Resemble AI

Chatterbox Multilingual V3 is the latest general-purpose multilingual TTS model in the Chatterbox family. It keeps the same 0.5B model size while improving speaker similarity, reducing hallucinations, and producing more natural, conversational speech across languages. V3 is designed for broad language coverage like V2, but with stronger stability and more expressive generation. It is the recommended multilingual model for users who want one voice cloning model that works across many languages. Try it in the Chatterbox Multilingual TTS V3 Space. Alongside V3, we are releasing the Single Language Pack: dedicated finetunes for priority languages where tighter quality control, stronger…

Open weights mit chatterbox

Model · Text to speech

F5-TTS

Yushen CHEN

Download F5-TTS or E2 TTS and place under ckpts/ Paper: F5-TTS: A Fairytaler that Fakes Fluent and Faithful Speech with Flow Matching

Open weights cc-by-nc-4.0 f5-tts

Model · Text to speech

Kokoro-82M-v1.0-ONNX

ONNX Community

Kokoro is a frontier TTS model for its size of 82 million parameters (text in/audio out). First, install the kokoro-js library from NPM using: You can then generate speech as follows: Optionally, save the audio to a file: The model is resilient to quantization, enabling efficient high-quality speech synthesis at a fraction of the original model size.

Open weights apache-2.0 transformers.js