Model reference · open weights
Audio8-TTS is an open-weight audio or speech model from Edge0. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.
Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.
What it is
| Released by | Edge0 |
|---|---|
| Type | Audio & music |
| Task | Text→speech |
| Parameters (lead) | 601M |
| Context | 2k tokens |
| Runs with | transformers |
| Released | 2026-07-28 |
| Popularity | 10k downloads / month |
| Licence | Open weights |
About
A 0.6B-parameter multilingual text-to-speech model with zero-shot voice cloning.
Audio8 TTS Preview supports multilingual speech generation and zero-shot voice cloning. This repository contains the complete checkpoint, its 44.1 kHz neural audio codec, tokenizer, processor, and Hugging Face remote code.
Preview status: Language coverage is intentionally limited in this release. For the best results, use one of the 11 recommended languages below. Broader multilingual coverage and Chinese dialect support are planned for future releases.
Audio8 TTS uses a DualAR architecture inspired by Fish Audio S2 Pro. The slow AR transformer predicts one semantic token for each audio frame. The fast AR transformer predicts the frame's codec codebooks, conditioned on the slow hidden state and preceding codebooks.
| Component | Configuration |
|---|---|
| Main model | 601,159,424 parameters, excluding the codec |
| Slow AR | 24 layers, width 896, 14 attention heads, 2 KV heads |
| Fast AR | 4 layers, width 896, 14 attention heads, 2 KV heads |
| Acoustic tokens | 10 codebooks, 4,096 entries per codebook |
| Codec | 44.1 kHz, 2,048 samples per model frame (~21.5 frames/s) |
| Context | Up to 2,048 packed text/audio positions |
The bundled codec handles both reference-audio encoding and waveform decoding, so no additional codec checkpoint is required.
Python 3.10 or newer and a CUDA-capable GPU are recommended.
pip install "torch>=2.5.0" "torchaudio>=2.5.0" \
"transformers>=4.57.0,=0.12" "safetensors>=0.4"
The model uses custom Transformers code. Review the files in this repository,
then load it with trust_remote_code=True.
The reference transcript must match the spoken content in the reference audio.
import soundfile as sf
import torch
from transformers import AutoModel, AutoProcessor
model_id = "Audio8/Audio8-TTS-Preview-0.6b"
device = "cuda" if torch.cuda.is_available() else "cpu"
dtype = torch.bfloat16 if device == "cuda" else torch.float32
processor = AutoProcessor.from_pretrained(model_id, trust_remote_code=True)
model = AutoModel.from_pretrained(
model_id,
trust_remote_code=True,
dtype=dtype,
).eval().to(device)
inputs = processor(
text=["Welcome to Audio8 TTS."],
reference_audio=["reference.wav"],
reference_text=["The exact transcript of the reference recording."],
return_tensors="pt",
)
inputs = {name: value.to(device) for name, value in inputs.items()}
with torch.inference_mode():
output = model.generate(
**inputs,
max_new_tokens=1024,
temperature=0.8,
top_p=0.95,
top_k=50,
do_sample=True,
return_dict_in_generate=True,
)
waveforms, waveform_lengths = model.decode_audio(output.codes)
audio = waveforms[0, : int(waveform_lengths[0])].float().cpu().numpy()
sf.write("output.wav", audio, model.config.codec_sample_rate)
Omit reference_audio and reference_text when a cloned voice is not needed:
inputs = processor(
text=["This utterance does not use a reference voice."],
return_tensors="pt",
)
For command-line inference, batching, and supervised fine-tuning, see the Audio8 TTS repository.
Audio8-TTS-Preview-0.6B-ONNX-INT4 packages Audio8 TTS for low-resource CPU inference with ONNX Runtime. Slow and Fast AR weights use weight-only INT4, while activations, KV caches, and the neural audio codec use FP16.
| Advantage | Details |
|---|---|
| CPU native | Runs with ONNX Runtime CPUExecutionProvider; no CUDA required |
| Low memory | About 1 GiB after loading in the tested Apple M2 configuration |
| Small runtime | No PyTorch or Transformers dependency after model download |
| Complete workflow | CLI, web and HTTP service, streaming PCM, and voice registration |
Normal synthesis loads only the Slow AR, Fast AR, and codec decoder sessions. Voice registration releases those sessions before loading the optional codec encoder, keeping peak memory controlled.
Get the ONNX INT4 model and follow the CPU ONNX Runtime guide.
Audio8 TTS now includes an SGLang Omni adapter for production-oriented GPU serving. It is installed as an independent model plugin and does not overwrite SGLang Omni core files.
| Capability | Support |
|---|---|
| Attention and batching | SGLang paged attention and dynamic batching |
| DualAR execution | Slow AR serving with a fixed KV cache for the Fast AR codebook decoder |
| Voice cloning | Reference-audio encoding and waveform decoding |
| API | OpenAI-compatible /v1/audio/speech service |
The released adapter is validated against a pinned SGLang Omni revision and supports both generation without a reference and zero-shot voice cloning. See the SGLang Omni deployment guide for tested versions, installation, server configuration, and API examples.
Audio8 TTS Preview is the smallest model in this comparison at just 0.6B parameters. Despite using only a fraction of the parameters of the other systems, it delivers results in the first tier of industry-leading SOTA TTS models on the benchmarks below. In particular, it achieves th
From the published model card. Full card on the HuggingFace links in the sidebar.
Using it via the API
Once AxForge deploys edge0-audio8-tts for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (edge0-audio8-tts below is illustrative; you get the exact model name on deployment.)
$ curl -sS https://api.axforge.ai/v1/audio/transcriptions \ -H "Authorization: Bearer $AXFORGE_API_KEY" \ -F model="edge0-audio8-tts" -F file=@audio.mp3
Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.