116 lines
2.9 KiB
TOML
116 lines
2.9 KiB
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "omnivoice"
|
|
version = "0.2.0"
|
|
description = "OmniVoice: Towards Omnilingual Zero-Shot Text-to-Speech with Diffusion Language Models"
|
|
readme = "README.md"
|
|
license = "Apache-2.0"
|
|
requires-python = ">=3.10"
|
|
authors = [{name = "Han Zhu"}]
|
|
keywords = [
|
|
"tts",
|
|
"text-to-speech",
|
|
"speech-synthesis",
|
|
"zero-shot",
|
|
"multilingual",
|
|
"diffusion",
|
|
"voice-cloning",
|
|
]
|
|
classifiers = [
|
|
"Intended Audience :: Science/Research",
|
|
"Intended Audience :: Developers",
|
|
|
|
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
|
"Topic :: Multimedia :: Sound/Audio :: Speech",
|
|
|
|
"Operating System :: OS Independent",
|
|
"Programming Language :: Python :: 3",
|
|
]
|
|
dependencies = [
|
|
"torch>=2.4",
|
|
"torchaudio>=2.4",
|
|
"transformers>=5.3.0",
|
|
"accelerate",
|
|
"pydub",
|
|
"gradio",
|
|
"tensorboardX",
|
|
"webdataset",
|
|
"numpy",
|
|
"soundfile",
|
|
"psutil>=7.2.2",
|
|
"pyannote-audio>=4.0.4",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
|
|
eval = [
|
|
"jiwer==3.1.0", # WER
|
|
"librosa", # Audio processing
|
|
"s3prl", # Speech representation (HuBERT etc.)
|
|
"funasr", # ASR models
|
|
"zhconv", # Chinese character normalization
|
|
"zhon", # Chinese punctuation
|
|
"unidecode", # Unicode normalization
|
|
]
|
|
api = [
|
|
"fastapi",
|
|
"uvicorn",
|
|
"python-multipart"
|
|
]
|
|
ui = [
|
|
"gradio",
|
|
"gradio_client",
|
|
"requests",
|
|
]
|
|
|
|
[project.scripts]
|
|
omnivoice-infer = "omnivoice.cli.infer:main"
|
|
omnivoice-infer-batch = "omnivoice.cli.infer_batch:main"
|
|
omnivoice-demo = "omnivoice.cli.demo:main"
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/k2-fsa/OmniVoice"
|
|
Repository = "https://github.com/k2-fsa/OmniVoice"
|
|
"Bug Tracker" = "https://github.com/k2-fsa/OmniVoice/issues"
|
|
|
|
[tool.uv.sources]
|
|
# Install PyTorch with CUDA support on Linux/Windows (CUDA doesn't exist for Mac).
|
|
# NOTE: We must explicitly request them as `dependencies` above. These improved
|
|
# versions will not be selected if they're only third-party dependencies.
|
|
torch = [
|
|
{ index = "pytorch-cuda", marker = "sys_platform == 'linux' or sys_platform == 'win32'" },
|
|
]
|
|
torchaudio = [
|
|
{ index = "pytorch-cuda", marker = "sys_platform == 'linux' or sys_platform == 'win32'" },
|
|
]
|
|
|
|
[[tool.uv.index]]
|
|
name = "pytorch-cuda"
|
|
# Use PyTorch built for NVIDIA Toolkit version 12.8.
|
|
# Available versions: https://pytorch.org/get-started/locally/
|
|
url = "https://download.pytorch.org/whl/cu128"
|
|
# Only use this index when explicitly requested by `tool.uv.sources`.
|
|
explicit = true
|
|
|
|
[tool.uv]
|
|
constraint-dependencies = [
|
|
"torch==2.8.0",
|
|
"torchaudio==2.8.0",
|
|
]
|
|
|
|
[tool.hatch.build.targets.sdist]
|
|
include = ["omnivoice"]
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["omnivoice"]
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"httpx>=0.28.1",
|
|
"pytest>=9.0.3",
|
|
"pytest-asyncio>=1.3.0",
|
|
]
|