项目文件夹

文件
wehub-resource-sync eec33d25b2
Build Wheel / build (3.11) (push) Failing after 1s
Build Wheel / build (3.12) (push) Failing after 0s
pre-commit / pre-commit (push) Failing after 1s
chore: import upstream snapshot with attribution
2026-07-13 12:29:08 +08:00

64 行
2.2 KiB
Python

"""
vLLM-Omni: Multi-modality models inference and serving with
non-autoregressive structures.
This package extends vLLM beyond traditional text-based, autoregressive
generation to support multi-modality models with non-autoregressive
structures and non-textual outputs.
Architecture:
- 🟡 Modified: vLLM components modified for multimodal support
- 🔴 Added: New components for multimodal and non-autoregressive
processing
"""
# We import version early, because it will warn if vLLM / vLLM Omni
# are not using the same major + minor version (if vLLM is installed).
# We should do this before applying patch, because vLLM imports might
# throw in patch if the versions differ.
from .version import __version__, __version_tuple__ # isort:skip # noqa: F401
try:
from . import patch # noqa: F401
except ModuleNotFoundError as exc: # pragma: no cover - optional dependency
if exc.name != "vllm":
raise
# Allow importing vllm_omni without vllm (e.g., documentation builds)
patch = None # type: ignore
# Register custom configs (AutoConfig, AutoTokenizer) as early as possible.
from vllm_omni.transformers_utils import configs as _configs # noqa: F401, E402
from vllm_omni.transformers_utils import parsers as _parsers # noqa: F401, E402
from .config import OmniModelConfig
def __getattr__(name: str):
# Lazy import for AsyncOmni and Omni to avoid pulling in heavy
# dependencies (vllm model_loader → fused_moe → pynvml) at package
# import time. This prevents crashes in lightweight subprocesses
# (e.g. model-architecture inspection) that lack a CUDA context.
# See: https://github.com/vllm-project/vllm-omni/issues/1793
if name == "AsyncOmni":
from .entrypoints.async_omni import AsyncOmni
return AsyncOmni
if name == "Omni":
from .entrypoints.omni import Omni
return Omni
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
__all__ = [
"__version__",
"__version_tuple__",
# Main components
"Omni",
"AsyncOmni",
# Configuration
"OmniModelConfig",
# All other components are available through their respective modules
# processors.*, schedulers.*, executors.*, etc.
]