CoolFace
Modelpublic

kugelaudio/kugelaudio-0-open

sourceHugging Facemitupdated 2d agoView on Hugging Face
204likes2.9kdownloads
Model Card

๐ŸŽ™๏ธ KugelAudio-0-Open

Open-source text-to-speech for European languages 7B parameter model powered by an AR + Diffusion architecture

<p align="center"> <a href="https://github.com/Kugelaudio/kugelaudio-open"><img src="https://img.shields.io/badge/GitHub-Source_Code-black" alt="GitHub Source Code"></a> <a href="https://kugelaudio.com"><img src="https://img.shields.io/badge/๐ŸŒ-Website-blue" alt="KugelAudio Website"></a> </p>

<table align="center" style="border-collapse: collapse; border: none;"> <tr style="border: none;"> <td style="border: none; padding: 0 20px;"> <a href="https://kugelaudio.com"> <img src="https://www.kugelaudio.com/logos/Logo%20Short.svg" alt="KugelAudio" style="height: 60px; width: auto;"> </a> </td> <td style="border: none; padding: 0 20px;"> <a href="https://hpi.de/ki-servicezentrum/"> <img src="https://docs.sc.hpi.de/attachments/aisc/aisc-logo.png" alt="KI-Servicezentrum Berlin-Brandenburg" style="height: 60px; width: auto;"> </a> </td> <td style="border: none; padding: 0 20px;"> <a href="https://www.bmftr.bund.de"> <img src="https://hpi.de/fileadmin/processed/a/3/csmBMFTRdeWebRGBgefdurch_cd1f5345bd.jpg" alt="Gefรถrdert durch BMFTR" style="height: 60px; width: auto;"> </a> </td> </tr> </table>

License: MIT Python 3.10+ Hosted API

KugelAudio KI-Servicezentrum Berlin-Brandenburg Gefรถrdert durch BMFTR


Motivation

Open-source text-to-speech models for European languages are significantly lagging behind. While English TTS has seen remarkable progress, speakers of German, French, Spanish, Polish, and dozens of other European languages have been underserved by the open-source community.

KugelAudio aims to change this. Building on the excellent foundation laid by the VibeVoice team at Microsoft, we've trained a model specifically focused on European language coverage, using approximately 200,000 hours of highly pre-processed and enhanced speech data from the YODAS2 dataset.

๐Ÿ† Benchmark Results: Outperforming ElevenLabs

KugelAudio achieves state-of-the-art performance, beating industry leaders including ElevenLabs in rigorous human preference testing. This breakthrough demonstrates that open-source models can now rival - and surpass - the best commercial TTS systems.

Human Preference Benchmark (A/B Testing)

We conducted extensive A/B testing with 339 human evaluations to compare KugelAudio against leading TTS models. Participants listened to a reference voice sample, then compared outputs from two models and selected which sounded more human and closer to the original voice.

German Language Evaluation

The evaluation specifically focused on German language samples with diverse emotional expressions and speaking styles:

  • โ€”Neutral Speech: Standard conversational tones
  • โ€”Shouting: High-intensity, elevated volume speech
  • โ€”Singing: Melodic and rhythmic speech patterns
  • โ€”Drunken Voice: Slurred and irregular speech characteristics

These diverse test cases demonstrate the model's capability to handle a wide range of speaking styles beyond standard narration.

OpenSkill Ranking Results

RankModelScoreRecordWin Rate
๐Ÿฅ‡ 1KugelAudio2671W / 20L / 23T78.0%
๐Ÿฅˆ 2ElevenLabs Multi v22556W / 34L / 22T62.2%
๐Ÿฅ‰ 3ElevenLabs v32164W / 34L / 16T65.3%
4Cartesia2155W / 38L / 19T59.1%
5VibeVoice1030W / 74L / 8T28.8%
6CosyVoice v3915W / 91L / 8T14.2%

Based on 339 evaluations using Bayesian skill-rating system (OpenSkill)

Audio Samples

Listen to KugelAudio's diverse voice capabilities across different speaking styles and languages:

German Voice Samples

SampleDescriptionAudio Player
WhisperingSoft whispering voice<audio controls><source src="https://huggingface.co/kugelaudio/kugelaudio-0-open/resolve/main/samples/258Lukasder_Flรผsterer.wav" type="audio/wav"></audio>
Female NarratorProfessional female reader voice<audio controls><source src="https://huggingface.co/kugelaudio/kugelaudio-0-open/resolve/main/samples/266Petradie_Vorleserin.wav" type="audio/wav"></audio>
Angry VoiceIrritated and frustrated speech<audio controls><source src="https://huggingface.co/kugelaudio/kugelaudio-0-open/resolve/main/samples/261SauererFelix.wav" type="audio/wav"></audio>
Radio AnnouncerProfessional radio broadcast voice<audio controls><source src="https://huggingface.co/kugelaudio/kugelaudio-0-open/resolve/main/samples/277RadioLars.wav" type="audio/wav"></audio>

All samples are generated using pre-encoded voice embeddings.

Training Details

  • โ€”Base Model: Microsoft VibeVoice
  • โ€”Training Data: ~200,000 hours from YODAS2
  • โ€”Hardware: 8x NVIDIA H100 GPUs
  • โ€”Training Duration: 5 days

Supported Languages

This model supports the following European languages:

LanguageCodeFlagLanguageCodeFlagLanguageCodeFlag
Englishen๐Ÿ‡บ๐Ÿ‡ธGermande๐Ÿ‡ฉ๐Ÿ‡ชFrenchfr๐Ÿ‡ซ๐Ÿ‡ท
Spanishes๐Ÿ‡ช๐Ÿ‡ธItalianit๐Ÿ‡ฎ๐Ÿ‡นPortuguesept๐Ÿ‡ต๐Ÿ‡น
Dutchnl๐Ÿ‡ณ๐Ÿ‡ฑPolishpl๐Ÿ‡ต๐Ÿ‡ฑRussianru๐Ÿ‡ท๐Ÿ‡บ
Ukrainianuk๐Ÿ‡บ๐Ÿ‡ฆCzechcs๐Ÿ‡จ๐Ÿ‡ฟRomanianro๐Ÿ‡ท๐Ÿ‡ด
Hungarianhu๐Ÿ‡ญ๐Ÿ‡บSwedishsv๐Ÿ‡ธ๐Ÿ‡ชDanishda๐Ÿ‡ฉ๐Ÿ‡ฐ
Finnishfi๐Ÿ‡ซ๐Ÿ‡ฎNorwegianno๐Ÿ‡ณ๐Ÿ‡ดGreekel๐Ÿ‡ฌ๐Ÿ‡ท
Bulgarianbg๐Ÿ‡ง๐Ÿ‡ฌSlovaksk๐Ÿ‡ธ๐Ÿ‡ฐCroatianhr๐Ÿ‡ญ๐Ÿ‡ท
Serbiansr๐Ÿ‡ท๐Ÿ‡ธTurkishtr๐Ÿ‡น๐Ÿ‡ท
๐Ÿ“Š Language Coverage Disclaimer: Quality varies significantly by language. Spanish, French, English, and German have the strongest representation in our training data (~200,000 hours from YODAS2). Other languages may have reduced quality, prosody, or vocabulary coverage depending on their availability in the training dataset.

Model Specifications

PropertyValue
Parameters7B
ArchitectureAR + Diffusion (Qwen2.5-7B backbone)
Base ModelMicrosoft VibeVoice
Audio Sample Rate24kHz
Audio FormatMono, float32
VRAM Required\~19GB
Training Hardware8x NVIDIA H100
Training Duration5 days
Training Data\~200,000 hours from YODAS2

Quick Start

Installation

bash
# Install with pip
pip install kugelaudio-open

# Or with uv (recommended)
uv pip install kugelaudio-open

Basic Usage

python
from kugelaudio_open import (
    KugelAudioForConditionalGenerationInference,
    KugelAudioProcessor,
)
import torch

# Load model
device = "cuda" if torch.cuda.is_available() else "cpu"
model = KugelAudioForConditionalGenerationInference.from_pretrained(
    "kugelaudio/kugelaudio-0-open",
    torch_dtype=torch.bfloat16,
).to(device)
model.eval()

processor = KugelAudioProcessor.from_pretrained("kugelaudio/kugelaudio-0-open")

# Strip encoder weights to save VRAM (only decoders needed for inference)
model.model.strip_encoders()

# See available voices
print(processor.get_available_voices())  # ["default", "clear", "english_female", "english_male"]

# Generate speech with a specific voice
inputs = processor(text="Hallo Welt! Das ist KugelAudio.", voice="default", return_tensors="pt")
inputs = {k: v.to(device) if isinstance(v, torch.Tensor) else v for k, v in inputs.items()}

with torch.no_grad():
    outputs = model.generate(**inputs, cfg_scale=3.0)

# Save audio
processor.save_audio(outputs.speech_outputs[0], "output.wav")

Voices

KugelAudio provides pre-encoded voices that can be selected by name. The voices are stored as .pt files in the voices/ folder and are automatically downloaded when needed.

VoiceLanguageDescription
defaultGermanCalm female narrator
clearGermanClear, young female conversational voice
english_femaleEnglishFriendly female teacher (British English)
english_maleEnglishConversational male voice (British English)

Voices work across languages but sound most natural, and are most reliable, in their native language.

python
# List available voices
voices = processor.get_available_voices()
print(voices)  # ["default", "clear", "english_female", "english_male"]

# Generate with a specific voice
inputs = processor(text="Hallo, das ist eine klare Stimme!", voice="clear", return_tensors="pt")
inputs = {k: v.to(device) if isinstance(v, torch.Tensor) else v for k, v in inputs.items()}

with torch.no_grad():
    outputs = model.generate(**inputs, cfg_scale=3.0)

processor.save_audio(outputs.speech_outputs[0], "clear_voice_output.wav")
Note: Voice cloning from raw audio is not supported in this open-source release. Only the pre-encoded voices listed in voices/voices.json are available.

Generation Parameters

ParameterDefaultDescription
cfg\_scale3.0Classifier-free guidance scale (1.0-10.0). Higher = more adherence to text
max\new\tokens2048Maximum number of tokens to generate
do\_sampleFalseWhether to use sampling (vs greedy decoding)
temperature1.0Sampling temperature (if do_sample=True)

Architecture

KugelAudio uses a hybrid Autoregressive + Diffusion architecture based on Microsoft's VibeVoice:

Text Input โ†’ Qwen2.5-7B Backbone โ†’ Diffusion Head โ†’ Acoustic Decoder โ†’ Audio Output
                                         โ†‘
                              Pre-encoded Voice Embedding
  1. 1.Text Encoder: Qwen2.5-7B language model encodes input text
  2. 2.Diffusion Head: Predicts speech latents using denoising diffusion (20 steps)
  3. 3.Acoustic Decoder: Hierarchical convolutional decoder converts latents to 24kHz audio

Audio Watermarking

All audio generated by this model is automatically watermarked using Facebook's AudioSeal. The watermark is:

  • โ€”Imperceptible: No audible difference in audio quality
  • โ€”Robust: Survives compression, resampling, and editing
  • โ€”Detectable: Can verify if audio was generated by KugelAudio

Verify Watermark

python
from kugelaudio_open.watermark import AudioWatermark

watermark = AudioWatermark()
result = watermark.detect(audio, sample_rate=24000)

print(f"Watermark detected: {result.detected}")
print(f"Confidence: {result.confidence:.1%}")

Intended Use

โœ… Appropriate Uses

  • โ€”Accessibility: Text-to-speech for visually impaired users
  • โ€”Content Creation: Podcasts, videos, audiobooks, e-learning
  • โ€”Voice Assistants: Chatbots and virtual assistants
  • โ€”Language Learning: Pronunciation practice and language education
  • โ€”Creative Projects: With proper consent and attribution

โŒ Prohibited Uses

  • โ€”Creating deepfakes or misleading content
  • โ€”Impersonating individuals without explicit consent
  • โ€”Fraud, deception, or scams
  • โ€”Harassment or abuse
  • โ€”Any illegal activities

Limitations

  • โ€”VRAM Requirements: Requires \~19GB VRAM for inference (less with strip_encoders())
  • โ€”Speed: Approximately 1.0x real-time on modern GPUs
  • โ€”Language Quality Variation: Quality may vary across languages based on training data distribution

Hosted API

For production use without managing infrastructure, use our hosted API at kugelaudio.com:

  • โ€”โšก Ultra-low latency: <100ms end-to-end
  • โ€”๐ŸŒ Global edge deployment
  • โ€”๐Ÿ”ง Zero setup required
  • โ€”๐Ÿ“ˆ Auto-scaling
python
from kugelaudio import KugelAudio

client = KugelAudio(api_key="your_api_key")
audio = client.tts.generate(text="Hello from KugelAudio!", model="kugel-1-turbo")
audio.save("output.wav")

Acknowledgments

This model would not have been possible without the contributions of many individuals and organizations:

  • โ€”Microsoft VibeVoice Team: For the excellent foundation architecture that this model builds upon
  • โ€”YODAS2 Dataset: For providing the large-scale multilingual speech data
  • โ€”Qwen Team: For the powerful language model backbone
  • โ€”Facebook AudioSeal: For the audio watermarking technology

Special Thanks

  • โ€”Carlos Menke: For his invaluable efforts in gathering the first datasets and extensive work benchmarking the model
  • โ€”AI Service Center Berlin-Brandenburg (KI-Servicezentrum): For providing the GPU resources (8x H100) that made training this model possible

Citation

bibtex
@software{kugelaudio2026,
  title = {KugelAudio: Open-Source Text-to-Speech for European Languages},
  author = {Kratzenstein, Kajo and Menke, Carlos},
  year = {2026},
  institution = {Hasso-Plattner-Institut},
  url = {https://huggingface.co/kugelaudio/kugelaudio-0-open}
}

License

This model is released under the MIT License.

Author

Kajo Kratzenstein ๐Ÿ“ง kajo@kugelaudio.com ๐ŸŒ kugelaudio.com

Carlos Menke


Funding Notice

Das zugrunde liegende Vorhaben wurde mit Mitteln des Bundesministeriums fรผr Forschung, Technologie und Raumfahrt unter dem Fรถrderkennzeichen ยปKI-Servicezentrum Berlin-Brandenburgยซ 16IS22092 gefรถrdert.

This project was funded by the German Federal Ministry of Research, Technology and Space under the funding code "AI Service Center Berlin-Brandenburg" 16IS22092.