MarkTechPost4h agoenergy 103

Zyphra Releases ZONOS3-Mini: Open-Source TTS With 100M Active Parameters

Zyphra has released ZONOS3-Mini , an open-source text-to-speech model built for real-time use on local devices. The ZONOS3-Mini text-to-speech model is a sparse Mixture of Experts (MoE) with 800M total and 100M active parameters. It supports zero-shot voice cloning and word-level delivery control. Weights ship under Apache 2.0. For AI devs, size is the key point. It runs in a browser tab, on a laptop or on a server GPU. TL;DR Size: 800M total parameters, about 100M active per token (64 experts, top-2 routing); 32,768-position context; up to 10 minutes of audio per generation. Runs on: NVIDIA GPUs via SGLang-Omni, Apple Silicon via MLX, CPU/CUDA/Metal/Vulkan via ggml, and phones or laptops via WebGPU in the browser. Performance: Ranks first among open models on Zyphra’s ZTTS2-Eval Capability Index (self-reported). Best: 80 ms median time to first audio on one H100 at 8 concurrent requests, and 457 seconds of audio per second peak throughput. Worst: Under 570 ms time to first audio in the browser on a Pixel 9, versus under 150 ms on an M3 MacBook Air. Bottom line: Best: frontier-level open TTS quality at 100M active parameters. Worst: every benchmark is run by Zyphra itself, and reference-clip cloning scores far lower than embedding mode. What is ZONOS3-Mini? ZONOS3-Mini is a compact zero-shot voice-cloning TTS model from Zyphra that runs in real time on-device. Zyphra trained it on 112 NVIDIA H100s in 2.5 days. It follows ZONOS2 , which used 8B parameters and an 86 Hz codec. That size limited where ZONOS2 could be deployed. How does the ZONOS3-Mini architecture work? Zyphra changed 3 layers of the stack : A new codec : Zyphra trained Zyphra Audio Codec 1 (ZAC-1) to replace the Descript Audio Codec. ZAC-1 runs at 15 Hz with 10 codebooks of 4,096 entries: 1 semantic and 9 acoustic. Zyphra reports a 10x word error rate reduction versus a DAC-trained model under similar data constraints. A causal iSTFT head renders each frame to 44.1 kHz audio as soon as it is generated. A hybrid MoE backbone : The model card lists 11 layers with model dimension 1,024. Sequence mixing follows a 3:1 ratio: 9 Gated DeltaNet layers and 2 global attention layers. Zyphra also adds latent MoE, Q balancing and attention residuals. A new speaker encoder : Voice representation moves from the Qwen3-TTS speaker encoder to MECT-B2. The model accepts a raw reference clip of up to 60 seconds, or a single 192-dimensional speaker embedding. Post-training used DPO, then GRPO, to improve robustness. How does word-level voice control work? Identity controls cover age, gender, accent and voice texture through speaker embedding vectors and accent task vectors. Delivery controls cover pace, emotion, projection and liveliness through activation steering. Learned alignment heads let steering apply to specific words during streaming. A separate edit model, based on a VoiceCraft recipe, can modify sentences after generation. Step through</button><button class="btn gh" id="rst">Reset</button></div> </div> <div class="pn" id="p2"> <div class="det"><strong>64 experts, top-2 routing.</strong> Each token activates 2 experts, so about 100M of the 800M parameters do work per step. That is why the model fits real-time budgets on laptops and phones.</div> <div class="moe" id="moe"></div> <div class="cap" id="moecap">Routing token 1 ...</div> <div class="ctl"><button class="btn" id="route"> Route tokens</button></div> <div class="note">ZONOS2 used 8B parameters on an 86 Hz codec. ZONOS3-Mini cuts both: 800M total, 15 Hz frames.</div> </div> <div class="pn" id="p3"> <div class="grp">Identity (speaker embedding + accent vectors)</div> <div class="chips" data-g="id"> <button class="chip on" data-d="Neutral base voice. No identity steering applied.">Neutral</button> <button class="chip" data-d="Age steering, e.g. age −1.5 targets a young adult and +1.5 an older adult.">Age</button> <button class="chip" data-d="Gender presentation steering, e.g. gender −1.5 for a masculine target.">Gender</button> <button class="chip" data-d="Accent task vectors, e.g. british 1.5 or australian 1.5, keeping the speaker recognizable.">Accent</button> <button class="chip" data-d="Texture steering: soft, raspy, bright or deep (e.g. raspy +5).">Texture</button> </div> <div class="grp">Delivery (activation steering, word-level)</div> <div class="chips" data-g="dl"> <button class="chip on" data-w="-1" data-d="Whole line delivered neutrally.">Neutral</button> <button class="chip" data-w="0" data-d="Whisper +4 applied only to the span “I didn’t say”, via learned alignment heads.">Whisper opening</button> <button class="chip" data-w="1" data-d="Whisper +4 applied only to “she took the keys”.">Whisper ending</button> <button class="chip" data-w="-1" data-d="Emotion axes such as happy, angry or scared (e.g. scared +8).">Emotion</button> <button class="chip" data-w="-1" data-d="Pace −2 to +2 changes speed while keeping every word intelligible.">Pace</button> <button class="chip" data-w="-1" data-d="Projection −3 (intimate) to +3 (calling across a room).">Projection</button> </div> <div class="sent"><span class="w" data-s="0">I</span> <span class="w" data-s="0">didn’t</span> <span class="w" data-s="0">say</span> <span class="w" data-s="1">she</span> <span class="w" data-s="1">took</span> <span class="w" data-s="1">the</span> <span class="w" data-s="1">keys.</span></div> <div class="det" id="cdet">Neutral base voice. No identity steering applied.</div> <div class="note">Settings shown are examples from Zyphra’s published control demos. A VoiceCraft-style edit model can also change words after generation.</div> </div> <div class="pn" id="p4"> <div class="seg" id="seg"> <button class="chip on" data-m="ci">Capability Index ↑</button> <button class="chip" data-m="wer">Clean WER ↓</button> <button class="chip" data-m="sim">Speaker similarity ↑</button> <button class="chip" data-m="ut">MSR-UTMOS ↑</button> </div> <div id="bars"></div> <div class="note" id="bnote"></div> <div class="note">Source: Zyphra ZTTS2-Eval explorer, all-language set, ZONOS3-Mini in speaker-embedding mode. Self-reported by Zyphra.</div> </div> <div class="pn" id="p5"> <div class="grid" id="dgrid"> <div class="dc on" data-c="b"><b>Browser · WebGPU</b><p>Runs on your own GPU, no install. &lt;570 ms TTFA on a Pixel 9, &lt;150 ms on an M3 MacBook Air.</p></div> <div class="dc" data-c="s"><b>NVIDIA · SGLang-Omni</b><p>OpenAI-compatible /v1/audio/speech with streaming.

read the original at MarkTechPost →