Metadata-Version: 2.4
Name: vllm-omni
Version: 0.28.0rc1
Summary: A framework for efficient model inference with omni-modality models
Author: vLLM-Omni Team
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/vllm-project/vllm-omni
Project-URL: Repository, https://github.com/vllm-project/vllm-omni
Project-URL: Documentation, https://vllm-omni.readthedocs.io
Project-URL: Bug Tracker, https://github.com/vllm-project/vllm-omni/issues
Keywords: vllm,multimodal,diffusion,transformer,inference,serving
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: <3.14,>=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: transformers<5.15,>=5.10.1
Requires-Dist: av>=14.0.0
Requires-Dist: omegaconf>=2.3.0
Requires-Dist: diffusers==0.40.0
Requires-Dist: safetensors>=0.8.0
Requires-Dist: accelerate==1.12.0
Requires-Dist: soundfile>=0.13.1
Requires-Dist: cache-dit==1.5.0
Requires-Dist: tqdm>=4.66.0
Requires-Dist: torchsde>=0.2.6
Requires-Dist: openai-whisper>=20250625
Requires-Dist: imageio[ffmpeg]>=2.37.2
Requires-Dist: x-transformers>=2.12.2
Requires-Dist: einops>=0.8.1
Requires-Dist: prettytable>=3.8.0
Requires-Dist: aenum==3.1.16
Requires-Dist: pyzmq>=25.0.0
Requires-Dist: janus>=1.0.0
Requires-Dist: msgpack>=1.0.0
Requires-Dist: pydantic>=2.1.0
Requires-Dist: pydantic-settings>=2.0.0
Requires-Dist: gguf>=0.10.0
Requires-Dist: cosmos-guardrail>=0.3.1
Requires-Dist: onnxruntime>=1.23.2
Requires-Dist: fa3-fwd==0.0.3
Provides-Extra: dev
Requires-Dist: pytest==9.1.1; extra == "dev"
Requires-Dist: pytest-asyncio==1.4.0; extra == "dev"
Requires-Dist: pytest-cov==7.1.0; extra == "dev"
Requires-Dist: pytest-mock==3.15.1; extra == "dev"
Requires-Dist: pytest-shard==0.1.2; extra == "dev"
Requires-Dist: pytest-xdist==3.8.0; extra == "dev"
Requires-Dist: websockets==16.1; extra == "dev"
Requires-Dist: pytest-subtests==0.15.0; extra == "dev"
Requires-Dist: filelock<4,>=3.16.1; extra == "dev"
Requires-Dist: datasets==3.6.0; extra == "dev"
Requires-Dist: mypy==1.11.1; extra == "dev"
Requires-Dist: pre-commit==4.0.1; extra == "dev"
Requires-Dist: openai-whisper==20250625; extra == "dev"
Requires-Dist: psutil==7.2.2; extra == "dev"
Requires-Dist: soundfile==0.14.0; extra == "dev"
Requires-Dist: imageio[ffmpeg]==2.37.4; extra == "dev"
Requires-Dist: opencv-python==5.0.0.93; extra == "dev"
Requires-Dist: mooncake-transfer-engine-cuda13==0.3.11.post1; extra == "dev"
Requires-Dist: av==18.0.0; extra == "dev"
Requires-Dist: openpyxl==3.1.5; extra == "dev"
Requires-Dist: pyttsx3==2.99; extra == "dev"
Requires-Dist: opencc==1.4.1; extra == "dev"
Requires-Dist: mistune==3.3.4; extra == "dev"
Requires-Dist: torchmetrics==1.9.0; extra == "dev"
Requires-Dist: ray[default]==2.56.1; extra == "dev"
Requires-Dist: jiwer==4.0.0; extra == "dev"
Requires-Dist: zhon==2.1.1; extra == "dev"
Requires-Dist: zhconv==1.4.3; extra == "dev"
Requires-Dist: scipy==1.18.0; extra == "dev"
Requires-Dist: funasr==1.3.29; extra == "dev"
Requires-Dist: lpips==0.1.4; extra == "dev"
Requires-Dist: orjson==3.11.9; extra == "dev"
Requires-Dist: voxcpm==2.0.3; extra == "dev"
Requires-Dist: torchdiffeq==0.2.5; extra == "dev"
Requires-Dist: FlagEmbedding==1.4.0; extra == "dev"
Requires-Dist: kernels==0.14.1; extra == "dev"
Requires-Dist: s3tokenizer==0.3.0; extra == "dev"
Requires-Dist: step-audio2==1.0.0; extra == "dev"
Provides-Extra: demo
Requires-Dist: gradio>=6.7.0; extra == "demo"
Requires-Dist: opencv-python>=4.12.0.88; extra == "demo"
Requires-Dist: requests>=2.28.0; extra == "demo"
Requires-Dist: cn2an>=0.5.22; extra == "demo"
Provides-Extra: forced-aligner
Requires-Dist: qwen-asr>=0.0.6; extra == "forced-aligner"
Provides-Extra: indextts2
Requires-Dist: fugashi>=1.2.0; extra == "indextts2"
Requires-Dist: unidic-lite>=1.0.0; extra == "indextts2"
Requires-Dist: wetext>=0.0.9; sys_platform != "linux" and extra == "indextts2"
Requires-Dist: WeTextProcessing; sys_platform == "linux" and extra == "indextts2"
Provides-Extra: local
Requires-Dist: FlagEmbedding; extra == "local"
Provides-Extra: longcat-video-avatar
Requires-Dist: audio-separator==0.44.2; extra == "longcat-video-avatar"
Requires-Dist: pyloudnorm==0.1.1; extra == "longcat-video-avatar"
Requires-Dist: soundfile>=0.13.1; extra == "longcat-video-avatar"
Provides-Extra: quack
Requires-Dist: quack-kernels>=0.3.11; extra == "quack"
Provides-Extra: fa4
Requires-Dist: flash-attn-4[cu13]==4.0.0b18; extra == "fa4"
Provides-Extra: docs
Requires-Dist: mkdocs>=1.5.0; extra == "docs"
Requires-Dist: mkdocs-api-autonav; extra == "docs"
Requires-Dist: mkdocs-material; extra == "docs"
Requires-Dist: mkdocstrings-python; extra == "docs"
Requires-Dist: mkdocs-gen-files; extra == "docs"
Requires-Dist: mkdocs-awesome-nav; extra == "docs"
Requires-Dist: mkdocs-redirects; extra == "docs"
Requires-Dist: mkdocs-glightbox; extra == "docs"
Requires-Dist: mkdocs-git-revision-date-localized-plugin; extra == "docs"
Requires-Dist: mkdocs-minify-plugin; extra == "docs"
Requires-Dist: regex; extra == "docs"
Requires-Dist: ruff; extra == "docs"
Requires-Dist: pydantic; extra == "docs"
Dynamic: license-file
Dynamic: requires-dist

<p align="center">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/vllm-project/vllm-omni/refs/heads/main/docs/source/logos/vllm-omni-logo.png">
    <img alt="vllm-omni" src="https://raw.githubusercontent.com/vllm-project/vllm-omni/refs/heads/main/docs/source/logos/vllm-omni-logo.png" width=55%>
  </picture>
</p>
<h3 align="center">
Easy, fast, and cheap omni-modality model serving for everyone
</h3>

<p align="center">
| <a href="https://vllm-omni.readthedocs.io/en/latest/"><b>Documentation</b></a> | <a href="https://deepwiki.com/vllm-project/vllm-omni"><b>DeepWiki</b></a> | <a href="https://discuss.vllm.ai"><b>User Forum</b></a> | <a href="https://slack.vllm.ai"><b>Developer Slack</b></a> | <a href="docs/assets/WeChat.jpg"><b>WeChat</b></a> | <a href="https://arxiv.org/abs/2602.02204"><b>Paper</b></a> | <a href="https://docs.google.com/presentation/d/1aPj0OGl_-ZVoib-Qne5dGDAlrRFB-PdHl6E-EE99g8E/edit?usp=sharing"><b>Slides</b></a> |
</p>

---

*Latest News* 🔥

- [2026/08] [VeRL-Omni](https://github.com/verl-project/verl-omni) `v0.2.0` is released: faster diffusion RL powered by vLLM-Omni (request-level/step-wise batching with FA3), rebuilt Qwen3-Omni multimodal training (DPO & GSPO), plus LTX-2.3, Qwen-Image-Edit support and more. See the [release notes](https://github.com/verl-project/verl-omni/releases/tag/v0.2.0).
- [2026/08] We released [0.26.0](https://github.com/vllm-project/vllm-omni/releases/tag/v0.26.0) - aligned with the vLLM 0.26 release line, featuring [MiniMax H3](recipes/MiniMaxAI/MiniMax-H3.md) joint video/audio generation, an experimental full-duplex realtime runtime for [MiniCPM-o 4.5](recipes/OpenBMB/MiniCPM-o-4_5.md), distributed layerwise diffusion offload, and broader model, hardware, streaming, TTS, and quantization support.
- [2026/07] We released [0.24.0](https://github.com/vllm-project/vllm-omni/releases/tag/v0.24.0) - aligned with the vLLM 0.24 release line, expanding production-ready coverage across TTS, speech, diffusion, image/video generation, and robot-policy serving, with major Omni stage runtime refactoring, diffusion request-level batching, async output materialization, quantization/cache/memory improvements, and broad CUDA/ROCm/XPU/NPU support.
- [2026/06] Starting with [0.14.0](https://github.com/vllm-project/vllm-omni/releases/tag/v0.14.0), vLLM-Omni publishes a stable release aligned with every even-numbered upstream vLLM minor version. [0.16.0](https://github.com/vllm-project/vllm-omni/releases/tag/v0.16.0), [0.18.0](https://github.com/vllm-project/vllm-omni/releases/tag/v0.18.0), [0.20.0](https://github.com/vllm-project/vllm-omni/releases/tag/v0.20.0), and [0.22.0](https://github.com/vllm-project/vllm-omni/releases/tag/v0.22.0) continued this cadence, expanding omni and world-model support with [NVIDIA Cosmos3](recipes/cosmos3/Cosmos3-Nano.md) and DreamZero, adding models such as MiniCPM-o 4.5, MOSS-TTS, and Lance, and advancing TTS, diffusion, distributed execution, quantization, RL integration through [VeRL-Omni](https://github.com/verl-project/verl-omni), and CUDA/ROCm/MUSA/NPU/XPU coverage.
- [2026/03] Check out our first public [project deepdive](https://youtu.be/sgwNfsNnR9I) at the vLLM Hong Kong Meetup!
- [2025/11] vLLM community officially released [vllm-project/vllm-omni](https://github.com/vllm-project/vllm-omni) in order to support omni-modality models serving.

---

## About

[vLLM](https://github.com/vllm-project/vllm) was originally designed to support large language models for text-based autoregressive generation tasks. vLLM-Omni is a framework that extends its support for omni-modality model inference and serving:

- **Omni-modality**: Text, image, audio, video, and action data processing
- **Non-autoregressive Architectures**: extend the AR support of vLLM to Diffusion Transformers (DiT) and other parallel generation models
- **Heterogeneous outputs**: from traditional text generation to multimodal and action outputs

<p align="center">
  <picture>
    <img alt="vllm-omni" src="https://raw.githubusercontent.com/vllm-project/vllm-omni/refs/heads/main/docs/source/architecture/omni-modality-model-architecture.png" width=55%>
  </picture>
</p>

vLLM-Omni is fast with:

- State-of-the-art AR support by leveraging efficient KV cache management from vLLM
- Pipelined stage execution overlapping for high throughput performance
- Fully disaggregation based on OmniConnector and dynamic resource allocation across stages

vLLM-Omni is flexible and easy to use with:

- Heterogeneous pipeline abstraction to manage complex model workflows
- Seamless integration with popular Hugging Face models
- Tensor, pipeline, data and expert parallelism support for distributed inference
- Streaming outputs
- OpenAI-compatible API server
- Full-duplex realtime serving with streaming audio input and output (experimental)

vLLM-Omni seamlessly supports most popular open-source models on HuggingFace, including:

- **Omni-modality models** (e.g. Qwen3-Omni, MiniCPM-o 4.5, Cosmos3, HunyuanImage, BAGEL)
- **TTS models** (e.g. Qwen3-TTS, VoxCPM2, Ming-Omni-TTS, CosyVoice3)
- **Diffusion models** — image, video, and audio generation (e.g. MiniMax H3, Qwen-Image, Wan2.2, FLUX)
- **Robot-policy and action models** (e.g. GR00T-N1.7, DreamZero-DROID, InternVLA-A1, Cosmos3 action policy)

## Getting Started

Visit our [documentation](https://vllm-omni.readthedocs.io/en/latest/) to learn more.

- [Installation](https://vllm-omni.readthedocs.io/en/latest/getting_started/installation/)
- [Quickstart](https://vllm-omni.readthedocs.io/en/latest/getting_started/quickstart/)
- [List of Supported Models](https://vllm-omni.readthedocs.io/en/latest/models/supported_models/)
- [Deployment Recipes](https://recipes.vllm.ai) for vLLM-Omni model serving

## Contributing

We welcome and value any contributions and collaborations.
Please check out [Contributing to vLLM-Omni](https://vllm-omni.readthedocs.io/en/latest/contributing/) for how to get involved.

## Citation

If you use vLLM-Omni for your research, please cite our [paper](https://arxiv.org/abs/2602.02204):

```bibtex
@article{yin2026vllmomni,
  title={vLLM-Omni: Fully Disaggregated Serving for Any-to-Any Multimodal Models},
  author={Peiqi Yin, Jiangyun Zhu, Han Gao, Chenguang Zheng, Yongxiang Huang, Taichang Zhou, Ruirui Yang, Weizhi Liu, Weiqing Chen, Canlin Guo, Didan Deng, Zifeng Mo, Cong Wang, James Cheng, Roger Wang, Hongsheng Liu},
  journal={arXiv preprint arXiv:2602.02204},
  year={2026}
}
```

## Join the Community

Feel free to ask questions, provide feedbacks and discuss with fellow users of vLLM-Omni in `#sig-omni` slack channel at [slack.vllm.ai](https://slack.vllm.ai) or vLLM user forum at [discuss.vllm.ai](https://discuss.vllm.ai).

## Star History

<a href="https://www.star-history.com/?repos=vllm-project%2Fvllm-omni&type=date&legend=top-left">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/chart?repos=vllm-project/vllm-omni&type=date&theme=dark&legend=top-left&sealed_token=ExgLDZJoQEg27Zfhhut2LqN0GYO6Fw2PWLwPE6JYBUp2BgM3hmsYlwaIVopnUEfbRXidQ4nisumrTdKYydiKhy1SZXipw47qY2_tiUDhCpsPXeXtPuEVKVzBwKs3pw0tiHsJgtSfwXx5yjHXck0Y2SblzFWeJYCkTe1WLGTbUAOIETjXXQJjyCGZvKz5" />
    <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/chart?repos=vllm-project/vllm-omni&type=date&legend=top-left&sealed_token=ExgLDZJoQEg27Zfhhut2LqN0GYO6Fw2PWLwPE6JYBUp2BgM3hmsYlwaIVopnUEfbRXidQ4nisumrTdKYydiKhy1SZXipw47qY2_tiUDhCpsPXeXtPuEVKVzBwKs3pw0tiHsJgtSfwXx5yjHXck0Y2SblzFWeJYCkTe1WLGTbUAOIETjXXQJjyCGZvKz5" />
    <img alt="Star History Chart" src="https://api.star-history.com/chart?repos=vllm-project/vllm-omni&type=date&legend=top-left&sealed_token=ExgLDZJoQEg27Zfhhut2LqN0GYO6Fw2PWLwPE6JYBUp2BgM3hmsYlwaIVopnUEfbRXidQ4nisumrTdKYydiKhy1SZXipw47qY2_tiUDhCpsPXeXtPuEVKVzBwKs3pw0tiHsJgtSfwXx5yjHXck0Y2SblzFWeJYCkTe1WLGTbUAOIETjXXQJjyCGZvKz5" />
  </picture>
</a>

## License

Apache License 2.0, as found in the [LICENSE](./LICENSE) file.
