HRVC / pyproject.toml
SpyC0der77's picture
Upload folder using huggingface_hub
1a942eb verified
raw
history blame
4.88 kB
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "ultimate-rvc"
version = "0.1.24"
description = "Ultimate RVC"
readme = "README.md"
requires-python = "==3.12.*"
dependencies = [
# General
"lib==4.0.0",
#Validation
"pydantic==2.9.2",
# CLI
"typer==0.12.5",
# Networking
"requests==2.32.3",
"yt_dlp==2024.11.4",
"nodejs-wheel-binaries==22.11.0",
# TODO add these later
# "deemix",
# "wget",
# "flask",
# "beautifulsoup4",
# "pypresence",
# Data science
"numpy==1.26.4",
"scipy==1.14.1",
"matplotlib==3.9.2",
"tqdm==4.66.6",
"gradio==5.6.0",
# Machine learning
"torch==2.5.1+cu124",
"torchaudio==2.5.1+cu124",
"torchcrepe==0.0.23",
"fairseq-fixed==0.12.3.1",
"faiss-cpu==1.9.0",
# Version of onnxruntime-gpu needs to align with what
# version audio-separator package uses.
"onnxruntime-gpu==1.19.2",
"tensorboardX==2.6.2.2",
# TODO add these later
# "tensorboard",
# "torchfcpe",
# "local-attention",
# "libf0",
# "einops",
# "numba; sys_platform == 'linux'",
# "numba==0.57.0; sys_platform == 'darwin' or sys_platform == 'win32'",
# Audio
"static-ffmpeg==2.7",
"static-sox==1.0.1",
"typed-ffmpeg==2.1.0",
"soundfile==0.12.1",
"librosa==0.10.2",
"sox==1.5.0",
"pydub==0.25.1",
"pydub-stubs==0.25.1.2",
"pedalboard==0.9.16",
"audio-separator[gpu]==0.24.1",
"praat-parselmouth==0.4.5",
"pyworld-fixed==0.3.8",
"diffq==0.2.4"
# TODO add the later
# "noisereduce",
# "audio_upscaler==0.1.4",
# "edge-tts==6.1.9",
# "ffmpeg-python>=0.2.0",
# "ffmpy==0.3.1"
]
[project.scripts]
urvc = "ultimate_rvc.cli.main:app"
urvc-web = "ultimate_rvc.web.main:app_wrapper"
[tool.uv]
environments = ["sys_platform == 'win32'", "sys_platform == 'linux'"]
cache-dir = "./uv/cache"
compile-bytecode = true
[tool.uv.sources]
torch = { index = "torch-cu124"}
torchaudio = { index = "torch-cu124"}
diffq = { url = "https://huggingface.co/JackismyShephard/ultimate-rvc/resolve/main/diffq-0.2.4-cp312-cp312-win_amd64.whl", marker = "sys_platform == 'win32'"}
[[tool.uv.index]]
name = "torch-cu124"
url = "https://download.pytorch.org/whl/cu124"
explicit = true
[tool.pyright]
stubPath = "src/ultimate_rvc/stubs"
pythonVersion = "3.12"
pythonPlatform = "All"
typeCheckingMode = "strict"
ignore = ["**/.venv"]
exclude = ["./uv"]
[tool.black]
target-version = ['py312']
preview = true
enable-unstable-feature = ["string_processing"]
[tool.ruff]
target-version = "py312"
fix = true
required-version = ">=0.5.7"
[tool.ruff.format]
docstring-code-format = true
preview = true
[tool.ruff.lint]
select = ["ALL"]
extend-select = ["I"]
ignore = [
# Ignore missing blank before between class name and docstring
"D203",
# Do not require a description after summary line in docstring
"D205",
# Do not require summary line to be located on first physical line of docstring
"D212",
# Do not require docstring section names to end with colon
"D416",
# Ignore TODO notes
"FIX002",
"TD002",
"TD003",
"TD004",
# Ignore missing copyright notice
"CPY001",
# Ignore function signatures with too many arguments
"PLR0913",
# ignore function signatures with too many positional arguments
"PLR0917",
# Ignore boolean positional argument in function signature
"FBT002",
"FBT001",
]
unfixable = ["F401"]
preview = true
[tool.ruff.lint.flake8-annotations]
#ignore-fully-untyped = true
[tool.ruff.lint.isort]
relative-imports-order = "closest-to-furthest"
section-order = [
"future",
"typing",
"standard-library",
"third-party",
"networking",
"validation",
"data-science",
"machine-learning",
"audio",
"cli",
"first-party",
"ultimate_rvc",
"local-folder",
]
[tool.ruff.lint.isort.sections]
"typing" = ["typing", "typing_extensions"]
"networking" = [
"requests",
"yt_dlp",
"deemix",
"wget",
"flask",
"beautifulsoup4",
"pypresence",
]
"validation" = ["pydantic"]
"data-science" = [
"numpy",
"scipy",
"matplotlib",
"tqdm",
"pandas",
"gradio"
]
"machine-learning" = [
"torch",
"torchaudio",
"torchcrepe",
"fairseq",
"faiss",
"tensorboard",
"torchfcpe",
"local_attention",
"libf0",
"einops",
"numba",
]
"audio" = [
"static_ffmpeg",
"static_sox",
"ffmpeg",
"soundfile",
"librosa",
"sox",
"pydub",
"pedalboard",
"audio_separator",
"parselmouth",
"pyworld",
"noisereduce",
"audio_upscaler",
"edge_tts",
"ffmpy",
]
"cli" = ["typer", "rich"]
"ultimate_rvc" = ["ultimate_rvc"]
[tool.ruff.lint.pycodestyle]
max-doc-length = 72