<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Dheemanth Reddy</title>
    <description>The latest articles on DEV Community by Dheemanth Reddy (@dheemanth_reddy_15562089c).</description>
    <link>https://dev.to/dheemanth_reddy_15562089c</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4214972%2F825b7cfd-18c8-4203-9930-701bf9a3a219.png</url>
      <title>DEV Community: Dheemanth Reddy</title>
      <link>https://dev.to/dheemanth_reddy_15562089c</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dheemanth_reddy_15562089c"/>
    <language>en</language>
    <item>
      <title>Run Maya 2 Native locally: streaming TTS in 12 languages</title>
      <dc:creator>Dheemanth Reddy</dc:creator>
      <pubDate>Thu, 29 Oct 2026 10:12:10 +0000</pubDate>
      <link>https://dev.to/dheemanth_reddy_15562089c/run-maya-2-native-locally-streaming-tts-in-12-languages-33f6</link>
      <guid>https://dev.to/dheemanth_reddy_15562089c/run-maya-2-native-locally-streaming-tts-in-12-languages-33f6</guid>
      <description>&lt;p&gt;We’re releasing &lt;strong&gt;Maya 2 Native&lt;/strong&gt;, a text-to-speech model from &lt;strong&gt;Maya Research&lt;/strong&gt; for &lt;strong&gt;11 Indic languages and English&lt;/strong&gt;. The weights and inference code are available under &lt;strong&gt;Apache-2.0&lt;/strong&gt;, with &lt;strong&gt;20 built-in voices&lt;/strong&gt;, streaming audio, and voice cloning from &lt;strong&gt;3–10 seconds of reference speech&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://huggingface.co/maya-research/maya2-native" rel="noopener noreferrer"&gt;Get the weights&lt;/a&gt; · &lt;a href="https://github.com/MayaResearch/maya2-native" rel="noopener noreferrer"&gt;Inference code&lt;/a&gt; · &lt;a href="https://huggingface.co/maya-research/maya2-native#evaluation" rel="noopener noreferrer"&gt;Full model card and evaluations&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://huggingface.co/maya-research/maya2-native#watch-maya-in-action" rel="noopener noreferrer"&gt;Watch the launch video&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Hear it first
&lt;/h2&gt;

&lt;p&gt;The model supports &lt;strong&gt;Assamese, Bengali, English, Gujarati, Hindi, Kannada, Malayalam, Marathi, Odia, Punjabi, Tamil, and Telugu&lt;/strong&gt;. It produces &lt;strong&gt;24 kHz mono audio&lt;/strong&gt; and can stream speech as it is generated.&lt;/p&gt;

&lt;p&gt;Here are three existing, unedited release examples. They were selected from benchmark clips with under 2% character error rate under all three ASR judges; they illustrate capabilities rather than average performance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hindi · Ritvik&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://huggingface.co/maya-research/maya2-native/resolve/main/samples/hi_ritvik.wav" rel="noopener noreferrer"&gt;Listen to this sample&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tamil · Abhay&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://huggingface.co/maya-research/maya2-native/resolve/main/samples/ta_abhay.wav" rel="noopener noreferrer"&gt;Listen to this sample&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Telugu · Nivedita&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://huggingface.co/maya-research/maya2-native/resolve/main/samples/te_nivedita.wav" rel="noopener noreferrer"&gt;Listen to this sample&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The Tamil and Telugu examples are cross-lingual: these two voices were trained on English and Hindi. &lt;a href="https://huggingface.co/maya-research/maya2-native#listen-in-12-languages" rel="noopener noreferrer"&gt;Listen to all 12 language samples&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What developers can build
&lt;/h2&gt;

&lt;p&gt;Use a built-in voice without uploading reference audio, or register a voice using a clean reference clip and its exact transcript. The reference language and output language can differ. Clone only voices you own or have explicit permission to use.&lt;/p&gt;

&lt;p&gt;The inference engine includes a &lt;strong&gt;Python API&lt;/strong&gt;, an &lt;strong&gt;OpenAI-compatible speech endpoint&lt;/strong&gt;, and &lt;strong&gt;WebSocket streaming&lt;/strong&gt;, with continuous batching and CUDA graphs for concurrent generation. It is intended for voice agents, multilingual interfaces, accessibility, narration, IVR, and notifications.&lt;/p&gt;

&lt;h2&gt;
  
  
  Generate your first clip
&lt;/h2&gt;

&lt;p&gt;Start with Linux, Python 3.10–3.12, an NVIDIA GPU, and a driver supporting CUDA 12.8. Use one serving seat initially; the documented loading peak is approximately 9.2 GB plus CUDA context, so a 12 GB or larger GPU provides more room.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="s2"&gt;"maya3[server] @ git+https://github.com/MayaResearch/maya2-native"&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--extra-index-url&lt;/span&gt; https://download.pytorch.org/whl/cu128
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;soundfile&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="n"&gt;sf&lt;/span&gt;
&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;maya3&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;Maya3TTS&lt;/span&gt;

&lt;span class="n"&gt;tts&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Maya3TTS&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;from_pretrained&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;maya-research/maya2-native&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;max_seats&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;try&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;audio&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;tts&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;generate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;నమస్తే! మీతో మాట్లాడటం సంతోషంగా ఉంది.&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;lang&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;te&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;voice&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Sreekar&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;normalize&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;sf&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;write&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;maya_telugu.wav&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;audio&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;24000&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="k"&gt;finally&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;tts&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;close&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The public model name is &lt;strong&gt;Maya 2 Native&lt;/strong&gt;. The implementation retains its internal identifiers: &lt;code&gt;maya3&lt;/code&gt;, &lt;code&gt;Maya3TTS&lt;/code&gt;, and &lt;code&gt;maya3_config.json&lt;/code&gt;. Use those names in code. The Python API needs &lt;code&gt;normalize=True&lt;/code&gt; to expand numbers, dates, currency, and similar written forms; the HTTP and WebSocket servers enable normalization by default.&lt;/p&gt;

&lt;h2&gt;
  
  
  Evaluation: quality and serving performance
&lt;/h2&gt;

&lt;p&gt;Our release benchmark contains &lt;strong&gt;6,000 held-out texts&lt;/strong&gt;, with &lt;strong&gt;500 per language&lt;/strong&gt; across &lt;strong&gt;31 content categories&lt;/strong&gt;, producing &lt;strong&gt;20.3 hours of speech&lt;/strong&gt;. Three ASR systems evaluate intelligibility, and an ECAPA speaker-embedding classifier measures consistency among the built-in voices.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Release measurement&lt;/th&gt;
&lt;th&gt;Reported result&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Overall CER, scorer v1: ASR-1 / Qwen3-ASR / held-out ASR-2&lt;/td&gt;
&lt;td&gt;3.49% / 3.40% / 2.86%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Built-in voice identity, nearest of 20 centroids&lt;/td&gt;
&lt;td&gt;98.6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Concurrent WebSocket streams on one H100 NVL&lt;/td&gt;
&lt;td&gt;224&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Steady-state time to first audio, p50 / p90 / p99&lt;/td&gt;
&lt;td&gt;111 / 134 / 242 ms&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Aggregate throughput in that serving run&lt;/td&gt;
&lt;td&gt;323 seconds of audio per wall-clock second&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;These are &lt;strong&gt;Maya Research’s measurements&lt;/strong&gt;, with the release serving stack. The concurrency run used one H100 NVL with 95 GB reported memory, a BF16 backbone, and an FP16 depth decoder. Automated ASR and speaker metrics do not replace human listening, and latency depends on hardware, workload, and the serving environment. &lt;a href="https://huggingface.co/maya-research/maya2-native#evaluation" rel="noopener noreferrer"&gt;Read the benchmark setup, per-language results, and harder cases&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Separately, &lt;strong&gt;VoiceArena’s October 27, 2026 Hindi / All / Real-time only leaderboard&lt;/strong&gt; displayed &lt;strong&gt;Maya-2-Native at #2&lt;/strong&gt;, with &lt;strong&gt;Elo 1047 ±11&lt;/strong&gt;, &lt;strong&gt;2,268 samples&lt;/strong&gt;, and a rank interval of &lt;strong&gt;2–4&lt;/strong&gt;. This is a dated, Hindi-specific result. VoiceArena lists the entry as July 2026 and does not identify its exact checkpoint revision. &lt;a href="https://voicearena.com/tts-leaderboard/hindi" rel="noopener noreferrer"&gt;Leaderboard&lt;/a&gt; · &lt;a href="https://huggingface.co/maya-research/maya2-native#voicearena-benchmark" rel="noopener noreferrer"&gt;Snapshot and context&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where it still needs work
&lt;/h2&gt;

&lt;p&gt;Assamese remains the most challenging Indic language in the release benchmark. Very short turns can make voice identity less stable; code-mixed text, URLs, unusual number formats, and unfamiliar names can produce pronunciation errors. Voice clones approximate the reference, and emotion tags are best effort. The release does not add an audio watermark.&lt;/p&gt;

&lt;p&gt;We would especially like feedback from developers building Indic voice agents: &lt;strong&gt;which language, voice, or input format should we improve next?&lt;/strong&gt; Share the text, language, voice, and serving setup when reporting a reproducible issue, without including private customer data.&lt;/p&gt;

&lt;h2&gt;
  
  
  Credits
&lt;/h2&gt;

&lt;p&gt;Maya Research team: &lt;strong&gt;Dheemanth Reddy BS, Bharath Kumar Kakumani, Sai Charan Thippareddy, and Prahalad Boreddy&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Thanks to the &lt;strong&gt;Qwen team&lt;/strong&gt; for &lt;a href="https://huggingface.co/Qwen/Qwen3-1.7B-Base" rel="noopener noreferrer"&gt;Qwen3-1.7B-Base&lt;/a&gt;, &lt;strong&gt;Kyutai&lt;/strong&gt; for &lt;a href="https://huggingface.co/kyutai/mimi" rel="noopener noreferrer"&gt;Mimi&lt;/a&gt;, &lt;strong&gt;SpeechBrain&lt;/strong&gt; for &lt;a href="https://huggingface.co/speechbrain/spkrec-ecapa-voxceleb" rel="noopener noreferrer"&gt;ECAPA-TDNN&lt;/a&gt;, and the &lt;strong&gt;Hugging Face community&lt;/strong&gt; for the tools and infrastructure. Upstream components retain their respective licenses and attribution requirements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://huggingface.co/maya-research/maya2-native" rel="noopener noreferrer"&gt;Download Maya 2 Native&lt;/a&gt;&lt;/strong&gt; and tell us what you build.&lt;/p&gt;




&lt;p&gt;Disclosure: I am a co-founder of Maya Research. This article was prepared with AI assistance using our published model card and inference code.&lt;/p&gt;

</description>
      <category>python</category>
      <category>ai</category>
    </item>
  </channel>
</rss>
