Maya Research Drops Maya 2 Native, a Free 12-Language Voice AI
Maya Research dropped open weights for a streaming TTS model covering 11 Indian languages plus English, with 20 voices and zero-shot cloning under Apache-2.0.
- Maya Research released Maya 2 Native, open-weight streaming TTS for 11 Indic languages plus English under Apache-2.0.
- 2.5B parameters, 20 built-in voices, zero-shot voice cloning from 3 to 10 seconds of reference audio.
- Ranked #2 on VoiceArena's Hindi leaderboard with Elo 1047, behind only Cartesia Sonic-3.6.
- One H100 serves 224 concurrent streams at 111 ms time-to-first-audio p50.
- Built on Qwen3-1.7B-Base with Kyutai Mimi codec and ECAPA speaker embeddings, trained with DPO.
- Weak on Assamese, URLs, and code-mixed text; emotion tags require a separate model.
India recognizes 22 scheduled languages and is home to hundreds more. Developers building speech products for this market have had few open-weight systems spanning major Indic languages, often leaving proprietary APIs or separate language-specific models as the practical options.
Maya Research has released Maya 2 Native, a streaming text-to-speech model covering 11 Indian languages and English. It includes 20 voices, clones voices from short reference clips, and publishes its weights and inference code under Apache 2.0. The release gives teams a self-hosted option for voice agents, accessibility tools, media generation, and regulated workloads that cannot send text or audio to an external service.
One model, 12 languages
| Capability | Details |
|---|---|
| Languages | Assamese, Bengali, English, Gujarati, Hindi, Kannada, Malayalam, Marathi, Odia, Punjabi, Tamil, and Telugu |
| Audio | 24 kHz mono output streamed in 80 ms frames |
| Voices | 20 built-in voices plus zero-shot cloning from 3 to 10 seconds of reference audio |
| Cross-lingual cloning | A voice sampled in one language can generate speech in another, such as a Hindi reference producing Tamil output |
| Interfaces | Python API, OpenAI-compatible speech endpoint, synchronous streaming, asynchronous streaming, and WebSockets |
| Model size | About 2.5 billion unique parameters and 5 GB of BF16 weights |
| License | Apache 2.0 for the published weights and inference code, according to the release notes |
One packaging mismatch can trip up integration: the product is named Maya 2 Native, while the repository, Python package, configuration files, and main class retain the names maya3 and Maya3TTS. Existing examples therefore import maya3.
From install to first waveform
The documented NVIDIA installation pulls the package from GitHub and uses PyTorch’s CUDA 12.8 package index:
pip install "git+https://github.com/MayaResearch/maya2-native.git" \
--extra-index-url https://download.pytorch.org/whl/cu128The basic API loads the Hugging Face weights, generates Hindi speech with a built-in voice, and writes a 24 kHz WAV file:
from maya3 import Maya3TTS
import soundfile as sf
tts = Maya3TTS.from_pretrained(
"maya-research/maya2-native",
max_seats=1,
)
audio = tts.generate(
"नमस्ते, आपका ऑर्डर कल पहुँच जाएगा।",
lang="hi",
voice="Ahana",
normalize=True,
)
sf.write("speech.wav", audio, 24000)Calling tts.stream()
This story is for Pro members
You've reached the end of the free preview. Upgrade to AlphaSignal Pro to read the full article - and everything else behind the paywall.