OmniVoice

Providerk2-fsa
Categorytext-to-speech
LicenseApache-2.0
Downloads5.4K
Stars28

Overview

OmniVoice is an open-source text-to-speech (TTS) engine designed for developers needing high-fidelity voice synthesis with flexible deployment. Unlike closed-API solutions, its Apache-2.0 license allows for full commercial integration and local hosting, reducing latency and eliminating per-token costs. The model excels in zero-shot voice cloning, enabling users to generate natural-sounding speech from a brief audio sample without extensive fine-tuning. For developers, this makes it an ideal choice for building accessible interfaces, personalized AI assistants, or automated content pipelines where consistent, human-like prosody is required. It balances computational efficiency with output quality, fitting well into existing Python-based ML stacks.

Highlights

  • Apache-2.0 license for unrestricted commercial use
  • High-fidelity zero-shot voice cloning capabilities
  • Low-latency local deployment for privacy and speed
  • Seamless integration into Python-based AI workflows

Usage

Install
# Install Hugging Face transformers
pip install transformers torch
SDK Usage
# Load model with transformers
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("k2-fsa/OmniVoice")
tokenizer = AutoTokenizer.from_pretrained("k2-fsa/OmniVoice")

Hugging Face Download

We recommend downloading the model via the Hugging Face CLI or Hub SDK.

Guidance:Before downloading, install huggingface_hub with:

Guidance
pip install -U huggingface_hub

CLI Download

Download the full repository

Download the full repository
huggingface-cli download k2-fsa/OmniVoice

Download a single file to a local folder (e.g. config.json into ./dir)

Download a single file to a local folder (e.g. config.json into ./dir)
huggingface-cli download k2-fsa/OmniVoice config.json --local-dir ./dir

See the official docs for more CLI options

SDK Download

SDK Download
# 模型下载
from huggingface_hub import snapshot_download
model_dir = snapshot_download('k2-fsa/OmniVoice')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://huggingface.co/k2-fsa/OmniVoice

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/k2-fsa/OmniVoice

Model files are hosted on the Hugging Face Hub — download directly via HF CLI / SDK / Git, not through this site.

PyTorch / Transformers Usage

Install Transformers

Install Transformers
pip install -U transformers torch

Load the model and run inference

Load the model and run inference
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('k2-fsa/OmniVoice')
tokenizer = AutoTokenizer.from_pretrained('k2-fsa/OmniVoice')

Model Download

We recommend downloading the model via the ModelScope CLI or SDK.

Guidance:Before downloading, install ModelScope with:

Guidance
pip install modelscope

CLI Download

Download the full repository

Download the full repository
modelscope download --model k2-fsa/OmniVoice

Download a single file to a local folder (e.g. README.md into ./dir)

Download a single file to a local folder (e.g. README.md into ./dir)
modelscope download --model k2-fsa/OmniVoice README.md --local_dir ./dir

See the docs for more CLI options

SDK Download

SDK Download
# 模型下载
from modelscope import snapshot_download
model_dir = snapshot_download('k2-fsa/OmniVoice')

Git Download

Make sure git-lfs is installed first

Git Download
git lfs install
git clone https://www.modelscope.cn/k2-fsa/OmniVoice.git

To skip LFS large-file downloads, use:

Skip LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://www.modelscope.cn/k2-fsa/OmniVoice.git

ModelScope 模型页直接下载模型文件;无需将模型文件放在本站服务器。

Notebook Quickstart

Install the ModelScope library

Install the ModelScope library
pip install "modelscope[audio,cv,nlp,multi-modal,science]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html

Load the model and run inference

Load the model and run inference
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks

p = pipeline('text-generation', 'k2-fsa/OmniVoice')

Full Documentation

来源: HuggingFace

---
base_model:

  • Qwen/Qwen3-0.6B

language:
  • aae

  • aal

  • aao

  • ab

  • abb

  • abn

  • abr

  • abs

  • abv

  • acm

  • acw

  • acx

  • adf

  • adx

  • ady

  • aeb

  • aec

  • af

  • afb

  • afo

  • ahl

  • ahs

  • ajg

  • aju

  • ala

  • aln

  • alo

  • am

  • amu

  • an

  • anc

  • ank

  • anp

  • anw

  • aom

  • apc

  • apd

  • arb

  • arq

  • ars

  • ary

  • arz

  • as

  • ast

  • avl

  • awo

  • ayl

  • ayp

  • az

  • ba

  • bag

  • bas

  • bax

  • bba

  • bbj

  • bbl

  • bbu

  • bce

  • bci

  • bcs

  • bcy

  • bda

  • bde

  • bdm

  • be

  • beb

  • bew

  • bfd

  • bft

  • bg

  • bgp

  • bhb

  • bhh

  • bho

  • bhp

  • bhr

  • bjj

  • bjk

  • bjn

  • bjt

  • bkh

  • bkm

  • bky

  • bmm

  • bmq

  • bn

  • bnm

  • bnn

  • bns

  • bo

  • bou

  • bqg

  • br

  • bra

  • brh

  • bri

  • brx

  • bs

  • bsh

  • bsj

  • bsk

  • btm

  • btv

  • bug

  • bum

  • buo

  • bux

  • bwr

  • bxf

  • byc

  • bys

  • byv

  • byx

  • bzc

  • bzw

  • ca

  • ccg

  • ceb

  • cen

  • cfa

  • cgg

  • chq

  • cjk

  • ckb

  • ckl

  • ckr

  • cky

  • cnh

  • cpy

  • cs

  • cte

  • ctl

  • cut

  • cux

  • cv

  • cy

  • da

  • dag

  • dar

  • dav

  • dbd

  • dcc

  • de

  • deg

  • dgh

  • dgo

  • dje

  • dmk

  • dml

  • dru

  • dty

  • dua

  • dv

  • dyu

  • dzg

  • ebr

  • ebu

  • ego

  • eiv

  • eko

  • ekr

  • el

  • elm

  • en

  • eo

  • es

  • esu

  • et

  • eto

  • ets

  • etu

  • eu

  • ewo

  • ext

  • eyo

  • fa

  • fan

  • fat

  • ff

  • ffm

  • fi

  • fia

  • fil

  • fip

  • fkk

  • fmp

  • fr

  • fub

  • fuc

  • fue

  • fuf

  • fuh

  • fui

  • fuq

  • fuv

  • fy

  • ga

  • gbm

  • gbr

  • gby

  • gcc

  • gdf

  • gej

  • ges

  • ggg

  • gid

  • gig

  • giz

  • gjk

  • gju

  • gl

  • glw

  • gn

  • gol

  • gom

  • gsl

  • gu

  • gui

  • gur

  • guz

  • gv

  • gwc

  • gwe

  • gwt

  • gya

  • gyz

  • ha

  • hah

  • hao

  • haw

  • haz

  • hbb

  • he

  • hem

  • hi

  • hia

  • hkk

  • hla

  • hno

  • hoj

  • hr

  • hsb

  • ht

  • hu

  • hue

  • hul

  • hux

  • hwo

  • hy

  • hz

  • ia

  • ibb

  • id

  • ida

  • idu

  • ig

  • ijc

  • ijn

  • ik

  • ikw

  • is

  • ish

  • iso

  • it

  • its

  • itw

  • itz

  • ja

  • jal

  • jax

  • jgo

  • jmx

  • jns

  • jqr

  • juk

  • juo

  • jv

  • ka

  • kab

  • kai

  • kaj

  • kam

  • kbd

  • kbl

  • kbt

  • kcq

  • kdh

  • kea

  • keu

  • kfe

  • kfk

  • kfp

  • khg

  • khw

  • kj

  • kjc

  • kjk

  • kk

  • kln

  • kls

  • km

  • kmr

  • kmy

  • kn

  • kna

  • knn

  • ko

  • kol

  • koo

  • kpo

  • kqo

  • ks

  • ksd

  • ksf

  • kto

  • kuh

  • kvx

  • kw

  • kwm

  • kxp

  • ky

  • kyx

  • lag

  • lb

  • lcm

  • ldb

  • lg

  • lij

  • lir

  • lkb

  • lla

  • ln

  • lnu

  • lo

  • loa

  • lrk

  • lss

  • lt

  • ltg

  • lto

  • lua

  • luo

  • lus

  • lv

  • lwg

  • mab

  • maf

  • mai

  • mau

  • max

  • mbo

  • mcf

  • mcn

  • mcx

  • mdd

  • mde

  • mdf

  • mek

  • mer

  • meu

  • mfm

  • mfn

  • mfo

  • mfv

  • mgg

  • mgi

  • mhk

  • mhr

  • mi

  • mig

  • miu

  • mk

  • mkf

  • mki

  • ml

  • mlq

  • mn

  • mne

  • mni

  • mqy

  • mr

  • mrj

  • mrr

  • mrt

  • ms

  • mse

  • msh

  • msw

  • mt

  • mtr

  • mtu

  • mtx

  • mua

  • mug

  • mui

  • mve

  • mvy

  • mxs

  • mxu

  • mxy

  • my

  • myv

  • mzl

  • nal

  • nan

  • nap

  • nb

  • nbh

  • ncf

  • nco

  • ncx

  • ndi

  • ng

  • ngi

  • nhg

  • nhi

  • nhn

  • nhq

  • nja

  • nl

  • nla

  • nlv

  • nmg

  • nmz

  • nn

  • nnh

  • 'no'

  • noe

  • npi

  • nso

  • ny

  • nyu

  • oc

  • odk

  • odu

  • ogo

  • om

  • orc

  • oru

  • ory

  • os

  • pa

  • pbs

  • pbt

  • pbu

  • pcm

  • pex

  • phl

  • phr

  • pip

  • piy

  • pko

  • pl

  • plk

  • plt

  • pmq

  • pms

  • pmy

  • pnb

  • poc

  • poe

  • pow

  • prq

  • ps

  • pst

  • pt

  • pua

  • pwn

  • qug

  • qum

  • qup

  • qur

  • qus

  • quv

  • qux

  • quy

  • qva

  • qvi

  • qvj

  • qvl

  • qwa

  • qws

  • qxa

  • qxp

  • qxt

  • qxu

  • qxw

  • rag

  • rm

  • ro

  • rob

  • rof

  • roo

  • rth

  • ru

  • rup

  • rw

  • sa

  • sah

  • sat

  • sau

  • say

  • sbn

  • sc

  • scl

  • scn

  • sd

  • sei

  • shu

  • si

  • sip

  • siw

  • sjr

  • sk

  • skg

  • skr

  • sl

  • sn

  • snc

  • snk

  • so

  • sol

  • sps

  • sq

  • sr

  • src

  • sro

  • ssi

  • ste

  • sua

  • sv

  • sva

  • sw

  • szy

  • ta

  • tan

  • tar

  • tay

  • tbf

  • tcf

  • tcy

  • tdn

  • tdx

  • te

  • tg

  • tgc

  • th

  • the

  • thq

  • thr

  • thv

  • ti

  • tig

  • tio

  • tk

  • tkg

  • tkt

  • tli

  • tlp

  • tn

  • tok

  • tpl

  • tpz

  • tqp

  • tr

  • trp

  • trq

  • trv

  • trw

  • tt

  • ttj

  • ttr

  • ttu

  • tui

  • tul

  • tuq

  • tuv

  • tuy

  • tvo

  • tvu

  • tw

  • twu

  • txs

  • txy

  • udl

  • ug

  • uk

  • uki

  • umb

  • ur

  • ush

  • uz

  • uzn

  • vai

  • var

  • ver

  • vi

  • vmc

  • vmj

  • vmm

  • vmp

  • vmz

  • vot

  • vro

  • wbl

  • wci

  • weo

  • wes

  • wja

  • wji

  • wo

  • wof

  • xh

  • xhe

  • xka

  • xmf

  • xmv

  • xmw

  • xpe

  • xti

  • xtu

  • yaq

  • yav

  • yay

  • ydd

  • ydg

  • yer

  • 'yes'

  • yi

  • yo

  • yue

  • zga

  • zgh

  • zh

  • zoc

  • zoh

  • zor

  • zpv

  • zpy

  • ztg

  • ztn

  • ztp

  • zts

  • ztu

  • zu

  • zza

pipeline_tag: text-to-speech
tags:
  • zero-shot

  • multilingual

  • voice-cloning

  • voice-design

library_name: omnivoice
---

OmniVoice 🌍

<p align="center">
<img width="200" height="200" alt="OmniVoice" src="https://zhu-han.github.io/omnivoice/pics/omnivoice.jpg" />
</p>

<p align="center">
<a href="https://huggingface.co/k2-fsa/OmniVoice"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Model-FFD21E" alt="Hugging Face Model"></a>
&nbsp;
<a href="https://huggingface.co/spaces/k2-fsa/OmniVoice"><img src="https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Space-blue" alt="Hugging Face Space"></a>
&nbsp;
<a href="https://huggingface.co/papers/2604.00688"><img src="https://img.shields.io/badge/arXiv-Paper-B31B1B.svg"></a>
&nbsp;
<a href="https://github.com/k2-fsa/OmniVoice"><img src="https://img.shields.io/badge/GitHub-Code-181717?logo=GitHub" alt="GitHub Code"></a>
&nbsp;
<a href="https://zhu-han.github.io/omnivoice"><img src="https://img.shields.io/badge/GitHub.io-Demo_Page-blue?logo=GitHub&style=flat-square"></a>
&nbsp;
<a href="https://colab.research.google.com/github/k2-fsa/OmniVoice/blob/master/docs/OmniVoice.ipynb"><img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"></a>
</p>

OmniVoice is a massively multilingual zero-shot text-to-speech (TTS) model supporting over 600 languages. Built on a novel diffusion language model-style architecture, it delivers high-quality speech with superior inference speed, supporting voice cloning and voice design.

Key Features

  • 600+ Languages Supported: The broadest language coverage among zero-shot TTS models.
  • Voice Cloning: State-of-the-art voice cloning quality from a short reference audio.
  • Voice Design: Control voices via assigned speaker attributes (gender, age, pitch, dialect/accent, whisper, etc.).
  • Fine-grained Control: Non-verbal symbols (e.g., [laughter]) and pronunciation correction via pinyin or phonemes.
  • Fast Inference: RTF as low as 0.025 (40x faster than real-time).
  • Diffusion Language Model-style Architecture: A clean, streamlined, and scalable design that delivers both quality and speed.

Usage

To get started, install the omnivoice library:

> We recommend using a fresh virtual environment (e.g., conda, venv, etc.) to avoid conflicts.

Step 1: Install PyTorch

<details>
<summary>NVIDIA GPU</summary>

bash
# Install pytorch with your CUDA version, e.g.
pip install torch==2.8.0+cu128 torchaudio==2.8.0+cu128 --extra-index-url https://download.pytorch.org/whl/cu128
> See PyTorch official site for other versions installation.

</details>

<details>
<summary>Apple Silicon</summary>

bash
pip install torch==2.8.0 torchaudio==2.8.0

</details>

Step 2: Install OmniVoice

bash
pip install omnivoice

Python API

You can use OmniVoice for zero-shot voice cloning as follows:

python
from omnivoice import OmniVoice
import soundfile as sf
import torch

Load the model

model = OmniVoice.from_pretrained( "k2-fsa/OmniVoice", device_map="cuda:0", dtype=torch.float16 )

Generate audio

audio = model.generate( text="Hello, this is a test of zero-shot voice cloning.", ref_audio="ref.wav", ref_text="Transcription of the reference audio.", ) # audio is a list of np.ndarray with shape (T,) at 24 kHz.

sf.write("out.wav", audio[0], 24000)

For more generation modes (e.g., voice design), functions (e.g., non-verbal symbols, pronunciation correction) and comprehensive usage instructions, see our GitHub Repository.

Discussion & Communication

You can directly discuss on [GitHub Issues](https://github

Join our Telegram