Files
vllm-omni/pyproject.toml
T

170 lines
4.2 KiB
TOML
Raw Normal View History

2025-09-11 14:32:51 +08:00
[build-system]
requires = ["setuptools>=61.0", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "vllm-omni"
2025-12-19 16:42:02 +08:00
version = "0.12.0rc1"
2025-12-01 04:09:24 -08:00
description = "A framework for efficient model inference with omni-modality models"
2025-09-11 14:32:51 +08:00
readme = "README.md"
requires-python = ">=3.10,<3.14"
2025-09-11 14:32:51 +08:00
license = {text = "Apache-2.0"}
authors = [
2025-12-01 04:09:24 -08:00
{name = "vLLM-Omni Team"}
2025-09-11 14:32:51 +08:00
]
keywords = ["vllm", "multimodal", "diffusion", "transformer", "inference", "serving"]
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
2025-09-11 14:32:51 +08:00
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Software Development :: Libraries :: Python Modules",
]
2025-12-01 04:09:24 -08:00
2025-09-11 14:32:51 +08:00
dependencies = [
# Core runtime dependencies (required for actual usage)
"omegaconf>=2.3.0",
"librosa>=0.11.0",
"resampy>=0.4.3",
2025-12-15 17:21:26 +08:00
"diffusers>=0.36.0",
2025-11-28 14:22:11 +08:00
"accelerate==1.12.0",
"gradio==5.50",
"soundfile>=0.13.1",
"cache-dit==1.1.8",
"tqdm>=4.66.0",
2025-12-19 16:42:02 +08:00
# "vllm==0.12.0", # TODO: fix the entrypoints overwrite problem
2025-09-11 14:32:51 +08:00
]
[project.optional-dependencies]
2025-09-11 14:32:51 +08:00
dev = [
"pytest>=7.0.0",
"pytest-asyncio>=0.21.0",
"pytest-cov>=4.0.0",
"mypy==1.11.1",
"pre-commit==4.0.1",
2025-09-11 14:32:51 +08:00
]
2025-09-11 14:32:51 +08:00
docs = [
"mkdocs>=1.5.0",
"mkdocs-api-autonav",
"mkdocs-material",
"mkdocstrings-python",
"mkdocs-gen-files",
"mkdocs-awesome-nav",
"mkdocs-glightbox",
"mkdocs-git-revision-date-localized-plugin",
"mkdocs-minify-plugin",
"regex",
"ruff",
"pydantic",
2025-09-11 14:32:51 +08:00
]
2025-09-11 14:32:51 +08:00
[project.urls]
Homepage = "https://github.com/vllm-project/vllm-omni"
Repository = "https://github.com/vllm-project/vllm-omni"
2025-09-11 14:32:51 +08:00
Documentation = "https://vllm-omni.readthedocs.io"
"Bug Tracker" = "https://github.com/vllm-project/vllm-omni/issues"
2025-09-11 14:32:51 +08:00
[project.scripts]
vllm = "vllm_omni.entrypoints.cli.main:main"
vllm-omni = "vllm_omni.entrypoints.cli.main:main"
2025-11-24 14:57:05 +08:00
2025-09-11 14:32:51 +08:00
[tool.setuptools.packages.find]
where = ["."]
include = ["vllm_omni*"]
2025-11-24 14:57:05 +08:00
[tool.setuptools.package-data]
"vllm_omni.model_executor.stage_configs" = ["*.yaml"]
2025-11-17 18:13:05 +08:00
[tool.ruff]
2025-11-18 20:54:26 +08:00
line-length = 120
2025-11-17 18:13:05 +08:00
exclude = [
".eggs",
".git",
".hg",
".mypy_cache",
".tox",
".venv",
"build",
"dist",
"vllm_omni.egg-info",
]
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # pyflakes
"I", # isort (handled separately, but included for compatibility)
"N", # pep8-naming
"UP", # pyupgrade
]
ignore = [
"E203", # whitespace before ':' (conflicts with black)
# W503 is not needed in ruff as it's compatible with black by default
2025-11-18 20:54:26 +08:00
"N801", # class names should use CapWords convention
"N802", # function name should follow snake_case
"N806", # variable in function should follow snake_case
"N812", # lowercase imported as non-lowercase: functional as F
2025-11-17 18:13:05 +08:00
]
[tool.ruff.lint.per-file-ignores]
"examples/**" = ["E501"] # Allow long lines in examples
"tests/**" = ["E501"] # Allow long lines in tests
2025-10-24 12:16:48 +08:00
2025-09-11 14:32:51 +08:00
[tool.mypy]
2025-11-17 18:13:05 +08:00
python_version = "3.12, 3.13"
2025-09-11 14:32:51 +08:00
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true
disallow_incomplete_defs = true
check_untyped_defs = true
disallow_untyped_decorators = true
no_implicit_optional = true
warn_redundant_casts = true
warn_unused_ignores = true
warn_no_return = true
warn_unreachable = true
strict_equality = true
[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py", "*_test.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
addopts = [
"--strict-markers",
"--strict-config",
"--cov=vllm_omni",
"--cov-report=term-missing",
"--cov-report=html",
"--cov-report=xml",
]
markers = [
"unit: Unit tests",
"integration: Integration tests",
"benchmark: Benchmark tests",
"slow: Slow tests",
"core_model: enable this model test in each PR instead of only nightly",
2025-09-11 14:32:51 +08:00
]
2025-11-18 20:54:26 +08:00
[tool.typos.default]
extend-ignore-identifiers-re = [
".*_thw",
".*thw",
"ein",
2025-11-28 14:22:11 +08:00
".*arange",
".*MoBA",
".*temperal_downsample",
".*nothink.*",
".*NOTHINK.*"
2025-11-18 20:54:26 +08:00
]