Find your next open-source project

Search by name, purpose, or keyword — or paste a GitHub repository URL

pnnbao97/VieNeu-TTS

Machine Learning

Vietnamese text-to-speech with instant voice cloning that runs on CPU or GPU for real-time speech.

3,286
1,009
Python
Apache-2.0
1 year old

What it is

VieNeu-TTS is an open-source Vietnamese text-to-speech model and SDK. The default v3 Turbo engine is trained from scratch on bilingual data, produces 48 kHz audio, and ships 25 preset voices across northern, central, and southern Vietnamese accents. It supports instant voice cloning from a 3–8 second reference clip, experimental emotion cues such as [cười] and [thở dài], batched generation, a multi-speaker conversation mode, and frame-level streaming. On CPU it runs torch-free on ONNX Runtime; on a CUDA machine it switches to PyTorch and batches automatically. It is aimed at developers building Vietnamese voice applications, dubbing pipelines, or real-time voice agents, as well as researchers who want to fine-tune a voice with LoRA.

A proprietary v4 with higher cloning fidelity is distributed only through the VieNeu API and website; the latest open-source version remains v3 Turbo v4 notice.

Quick start

Install the SDK and synthesize a clip with a built-in voice:

pip install vieneu
from vieneu import Vieneu

tts = Vieneu()  # v3 Turbo, 48 kHz; ONNX on CPU, PyTorch on CUDA
audio = tts.infer("Xin chào các bạn!", voice="Mai Anh")
tts.save(audio, "output.wav")

For the Web UI, clone the repository, install dependencies with uv sync (CPU/macOS) or uv sync --extra cuda (GPU), then run uv run vieneu-web and open http://127.0.0.1:7860 installation steps.

To clone a voice, pass a short clip:

audio = tts.infer("Đây là giọng được nhân bản.", ref_audio="my_voice.wav", denoise=True)

An OpenAI-compatible streaming server can be started from the repo with uv run python -m apps.openai_speech, or through the api-gpu / api-cpu Docker Compose profiles; it exposes POST /v1/audio/speech plus voice and health endpoints API server.

Constraints

  • OS and hardware: CPU installs work without PyTorch; GPU use requires an NVIDIA CUDA setup, and on Windows the CUDA PyTorch wheels must be installed first. macOS currently has no standalone installer and uses the uv sync path.
  • int8 on CPU requires VNNI (AVX-512 VNNI or AVX-VNNI); on older CPUs it can produce garbled audio, so the default fp32 path is safer.
  • v3 Nano is a speed-first 24 kHz option for weak CPUs and edge devices, with noticeably lower quality, especially on English and code-switched text; it has no frame-level streaming.
  • Fine-tuning a LoRA for one voice needs roughly 10–30 minutes of clean single-speaker audio and about 6 GB of GPU memory; it only runs on the PyTorch/GPU backend LoRA guide.
  • The style argument is deprecated and ignored in v3 Turbo; reading style follows the reference clip or preset voice. The legacy v2 LMDeploy server only serves v2 and is deprecated.
  • The CLI and SDK are Apache-2.0, but the proprietary v4 model is API-only. Voice cloning raises consent and misuse considerations of its own.

HotRepo's take

The project put up 37 stars in a single day on the Python daily list, where it reached 7th place (2026-11-14), and it currently has 3,280 stars against 1,007 forks. That is a high fork-to-star ratio, suggesting many people are trying to run or adapt it rather than just bookmarking it. The repository is worth attention for engineering depth as much as for the model: a torch-free CPU path, CUDA-graph batching with documented streaming latency, an OpenAI-compatible endpoint, and a LoRA workflow are all in one repo. The trade-off is a fast-moving release line — v1 and v2 are already deprecated, v4 is closed — so anyone pinning an integration should track the SDK version and model naming carefully.

Written by AI from the project's README, updated . The project's own docs are the source of truth.

You might also like

  1. OpenBMB/VoxCPMA 2B tokenizer-free TTS model for 30-language speech synthesis, voice design, and voice cloning.Python42,008
  2. hehehai/AudioSmithA local Mac studio for text-to-speech, voice cloning, audiobooks, dubbing and transcription, with all models running on-device.Go107
  3. NVIDIA-NeMo/SpeechA PyTorch framework for building, fine-tuning, and running speech recognition, synthesis, and speech-LLM models.Python18,655
  4. 0xShug0/audio.cppA C++/ggml runtime for running many audio model families locally without Python, from TTS to speech recognition and music.C++3,820
  5. microsoft/VibeVoiceA family of open-weight speech models for long-form transcription and expressive multi-speaker TTS.Python55,376