Commit Graph
70 Commits
Author SHA1 Message Date
Hongsheng Liu 4a4c3c1b82 Merge pull request #20 from tzhouam/feat/multimodal-output-processor
[Engine]Refactor output processing for multimodal capabilities in vLLM-omni
2025-10-24 11:25:23 +08:00
Hongsheng Liu 40d20978f1 Merge pull request #17 from tzhouam/feat/gpu-omni-model-runner-base
[Worker]Add OmniGPUModelRunner and OmniModelInputForGPU classes
2025-10-24 11:23:19 +08:00
Hongsheng Liu 27fbe3511a Merge pull request #16 from tzhouam/feat/diffusion_gpu_worker_and_model_runner
[Worker]Refactor GPU diffusion model runner and worker
2025-10-24 11:11:02 +08:00
tzhouam ee4822327b Remove unnecessary numpy imports and update return type in extract_multimodal_outputs method in OmniGPUModelRunner
- Eliminated redundant numpy import statements to streamline the code.
- Changed the return type of extract_multimodal_outputs from dict to tuple for better clarity on output structure.
2025-10-24 11:08:42 +08:00
Hongsheng Liu a874cd23fb Merge pull request #15 from tzhouam/feat/ar_gpu_worker_and_model_runner
[Worker]Feat/ar gpu worker and model runner
2025-10-24 11:04:30 +08:00
tzhouam 6b196dee24 Enhance error handling in output processing for multimodal tensors
- Added logging for exceptions during tensor movement to CPU in OmniRequestState and MultimodalOutputProcessor.
- Improved robustness by ensuring the output pipeline continues without crashing on errors.
- Updated comments for clarity on error handling behavior.
2025-10-24 11:01:32 +08:00
Hongsheng Liu d41d3e4acf Merge pull request #14 from Gaohan123/end2end_example
[Model] Add end2end example and documentation for qwen2.5-omni
2025-10-24 10:40:02 +08:00
Hongsheng Liu 15dbe97750 Merge pull request #13 from Gaohan123/entrypoint_stage
[Engine] Add entrypoint class and stage management
2025-10-24 10:38:16 +08:00
tzhouam 634915652d Remove unused code and comments in GPUDiffusionModelRunner for improved clarity
- Deleted the `has_kv_transfer_group` import as it was not utilized.
- Cleaned up commented-out code related to model methods, focusing on the forward method.
- Added a TODO comment to implement the diffuse method for additional model support.
2025-10-24 10:34:41 +08:00
Gaohan123 61a215fb54 fix file name 2025-10-24 10:19:35 +08:00
Gaohan123 2c08c04730 fix for reviews of copilot 2025-10-24 10:17:22 +08:00
Hongsheng Liu 7c913d2fae Merge pull request #12 from tzhouam/feat/qwen_2_5_omni_models
[Model]Add Qwen2.5-Omni model components
2025-10-24 10:15:42 +08:00
tzhouam ae3b7504b2 Merge branch 'feat/qwen_2_5_omni_models' of https://github.com/tzhouam/vllm-omni into feat/qwen_2_5_omni_models 2025-10-24 10:02:58 +08:00
tzhouam 52905a0d17 Enhance Qwen2.5-Omni model by defining TALKER_CODEC_EOS_TOKEN_ID and TALKER_CODEC_BOS_TOKEN_ID constants. Update audio generation logic to use these constants for improved clarity and maintainability. Refactor tensor initialization to utilize the talker's hidden size. Update comments for better understanding and consistency. 2025-10-24 10:02:51 +08:00
Zhou TaichangandCopilot 8a6e298243 Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Zhou Taichang <tzhouam@connect.ust.hk>
2025-10-24 09:43:45 +08:00
Gaohan123 f5c519c44a update README 2025-10-23 15:18:13 +08:00
tzhouam 28ae542eed match runner, worker name with file name 2025-10-23 14:35:23 +08:00
Gaohan123 1714777c8d Add example of audio file 2025-10-23 14:33:33 +08:00
tzhouam a3a77b6cc4 Qwen2.5-Omni: squash 5 commits (add components, refactor, load thinker embedding from weights, remove unused code)
Squashed commits:\n- 4e2d812 Add Qwen2.5-Omni model components\n- 351f833 load the thinker embedding from the weights, not rely on local .pt files\n- 2c32533 Refactor Qwen2.5-Omni model files\n- 9163a60 remove unused codes\n- 192bdf8 remove
2025-10-23 14:24:03 +08:00
tzhouam ea16546ae9 Refactor GPU diffusion model classes for clarity and consistency
- Renamed `DiffusionModelRunner` to `GPUDiffusionModelRunner` for better clarity in class purpose.
- Updated `DiffusionGPUWorker` to utilize the renamed `GPUDiffusionModelRunner`.
- Simplified output handling in `GPUDiffusionModelRunner` by removing unnecessary checks, enhancing code readability.
2025-10-23 11:04:10 +08:00
Gaohan123 98a85d42a6 fix for some reviews 2025-10-23 10:26:21 +08:00
Gaohan123 87d6414a26 supplement some imports 2025-10-22 18:14:11 +08:00
Gaohan123 6111c288d0 fix some reviews from gemini 2025-10-22 17:46:10 +08:00
tzhouam 4609afa613 Refactor sampled_token_ids assignment in OmniGPUModelRunner
- Simplified the assignment of sampled_token_ids by removing the conditional check for "model_stage".
- Ensured consistent handling of sampled_token_ids for improved clarity and maintainability.
2025-10-22 17:42:29 +08:00
tzhouam 2cc33bb3ea Fix tensor handling in DiffusionModelRunner for multimodal outputs
- Updated assertions and tensor management to correctly handle multimodal outputs in the `DiffusionModelRunner` class.
- Ensured that the output tensors are processed based on the type of multimodal outputs received, improving robustness and clarity in the code.
2025-10-22 17:38:49 +08:00
tzhouam 53b86439fc Refactor ARModelRunner to streamline hidden state handling
- Removed unnecessary imports of numpy and torch within the request scheduling logic.
- Simplified the handling of auxiliary hidden states by initializing it to None when not present.
- Optimized CPU tensor conversion for text hidden states to improve performance.
2025-10-22 17:16:15 +08:00
tzhouam 54977bd590 Add OmniGPUModelRunner and OmniModelInputForGPU classes
- Introduced OmniGPUModelRunner for enhanced GPU model execution with state management.
- Added OmniModelInputForGPU and its builder to support additional information in model inputs.
- Implemented methods for updating request states and handling multimodal inputs.
- Enhanced input preparation for CUDA graph execution and LoRA integration.
2025-10-22 15:33:11 +08:00
tzhouam 811057ce11 Refactor GPU diffusion model runner and worker
- Introduced `DiffusionModelRunner` class to handle diffusion processes, extending `OmniGPUModelRunner`.
- Updated `DiffusionGPUWorker` to initialize device settings and manage memory more effectively.
- Enhanced model execution with support for multimodal inputs and improved tensor management.
- Removed legacy code and streamlined the generation process for better performance.
2025-10-22 15:30:46 +08:00
tzhouam 6d04ea8450 rename to gpu-xx-model-runner style 2025-10-22 15:28:23 +08:00
Gaohan123 9edce9e12a Add end2end example and documentation for qwen2.5-omni 2025-10-22 15:26:42 +08:00
tzhouam 91c11c3ff4 Add AR GPU Model Runner and Worker
- Introduced ARModelRunner for autoregressive GPU model execution, enabling per-request hidden state outputs and token sampling.
- Added ARGPUWorker to initialize GPU settings and manage distributed environment for the AR model runner.
- Enhanced memory management and error handling for GPU resources during initialization.
2025-10-22 15:25:17 +08:00
Gaohan123 20cfd15cc6 Add entrypoint class and stage management 2025-10-22 14:37:55 +08:00
tzhouam b4fa09f756 Refactor output processing for multimodal capabilities in vLLM-omni
- Introduced OmniRequestState to manage multimodal request states.
- Enhanced MultimodalOutputProcessor to handle various output types including images, text, and latents.
- Implemented methods for accumulating multimodal tensors and processing outputs.
- Updated output handling to ensure compatibility with vLLM's base processor while allowing custom modality handlers.
2025-10-22 11:54:07 +08:00
Hongsheng Liu 7a85034d9b Merge pull request #9 from hsliuustc0106/hsliu-dev-C
update RFC template
2025-10-18 08:11:50 +08:00
hsliu dd40b97336 add RFC template 2025-10-18 08:09:19 +08:00
hsliu ce550002ac Add RFC (Request for Comments) template
- Add 750-RFC.yml template for architectural discussions
- Template adapted for vLLM-omni with updated URLs
- Enables structured feedback for major design changes
- Follows vLLM's RFC template structure
2025-10-18 08:06:48 +08:00
Hongsheng Liu c150346d28 Merge pull request #8 from hsliuustc0106/hsliu-dev-C
Add PR and issue templates from vLLM project
2025-10-18 08:04:11 +08:00
hsliu 4422acb185 Add PR and issue templates from vLLM project
- Add PULL_REQUEST_TEMPLATE.md with vLLM-style PR template
- Add comprehensive issue templates:
  - Bug report template (400-bug-report.yml)
  - Feature request template (500-feature-request.yml)
  - New model support template (600-new-model.yml)
  - Documentation template (100-documentation.yml)
  - Installation template (200-installation.yml)
  - Performance discussion template (700-performance-discussion.yml)
  - Issue template configuration (config.yml)
- Templates adapted for vLLM-omni with multimodal context
- Force added YAML files to override .gitignore exclusion
2025-10-18 07:58:32 +08:00
Hongsheng Liu 5a503f341e Merge pull request #6 from hsliuustc0106/hsliu-dev-C
init main repo structure and demonstrate the AR + DiT demo for omni models
2025-09-30 17:46:55 +08:00
hsliu 05d23676ff change omni.py to serve.py and mv to cli 2025-09-29 18:10:37 +08:00
hsliu 721833c083 del 2025-09-29 17:54:56 +08:00
hsliu 772583140f del reamds 2025-09-29 17:53:03 +08:00
hsliu c330e5e8f3 del unnessearcy files 2025-09-29 17:49:32 +08:00
hsliu f8a6606176 fix diffusion engine 2025-09-28 22:09:13 +08:00
hsliu 4435d581c3 update diffusion_engine 2025-09-28 22:02:03 +08:00
hsliu 81f04d3cf9 update ar_dit_test 2025-09-28 21:58:48 +08:00
hsliu ff9c7d4536 update gitignore 2025-09-26 17:54:52 +08:00
hsliu f403cec650 mv omni_llm.py to entrypoints 2025-09-26 17:39:00 +08:00
hsliu bd43ce40e7 feat: add comprehensive testing scripts for vLLM-omni
- Add test_serving.sh: Full-featured testing suite with comprehensive validation
- Add quick_test.sh: Fast validation script for quick testing after changes
- Add scripts/README.md: Complete documentation for testing scripts
- Include health checks, text generation, performance testing, and API integration
- Add retry mechanisms and proper error handling
- Support for different models and ports
- Comprehensive logging and colored output
- Ready for CI/CD integration

Usage:
- Quick test: ./scripts/quick_test.sh [port]
- Full test: ./scripts/test_serving.sh [model_path] [port]
2025-09-26 17:39:00 +08:00
hsliu e8b9425bab refactor: move omni_llm.py to entrypoints directory
- Move vllm_omni/core/omni_llm.py to vllm_omni/entrypoints/omni_llm.py
- Update all import statements across the codebase to reflect new location
- Fix relative imports within the moved file
- Maintain functionality while improving code organization
- All imports and functionality tested and working correctly

This change better reflects that OmniLLM and AsyncOmniLLM are the main entry points
for vLLM-omni functionality, rather than core implementation details.
2025-09-26 17:39:00 +08:00