NATURE
5b002727b0
[Core] Split Omni connector model runner mixin ( #6903 )
...
Signed-off-by: natureofnature <wzliu@connect.hku.hk >
2026-09-09 13:49:43 +08:00
andyluo7
e0d0879794
[Bugfix][Magi2] Allow import without an active Triton driver ( #7239 )
...
Signed-off-by: andyluo7 <andy.luo@amd.com >
2026-09-08 22:48:08 -07:00
wangyu
09b720b0d2
[CI] Skip Qwen3-Omni Server VAD multi-turn realtime test ( #7279 ) ( #7314 )
...
Signed-off-by: wangyu <410167048@qq.com >
2026-09-09 12:23:29 +08:00
xutianle
968f3e379c
[Bugfix][CosyVoice3] Resolve hash snapshot pipeline ( #6896 )
...
Signed-off-by: xutianle <xutianle@fudan.edu.cn >
2026-09-08 20:33:38 -07:00
Allen Wu and TRAE CLI
f2e30f46b6
[Bugfix][TTS] Isolate shared Higgs v3 reference encode from request cancellation ( #7076 )
...
Signed-off-by: Allen Wu <allenwu2795@gmail.com >
Co-authored-by: TRAE CLI <traecli@bytedance.com >
2026-09-08 20:32:05 -07:00
Jim Ban
358b7d79c1
[Bugfix][Frontend] Enforce image pixel limits for video input references ( #6963 )
...
Signed-off-by: BANANASJIM <bananasjim1@gmail.com >
2026-09-08 20:31:54 -07:00
Ziming Wang
43b697541a
[Bugfix][Frontend] Clear the P0 multimodal cache through the renderer ( #7003 )
...
Signed-off-by: ZenAlexa <zimingwang945@gmail.com >
2026-09-08 20:31:42 -07:00
tzhouam and Claude Fable 5.1
285db2fa3c
edge results: WP1 edge-profile stream latency (0.6B/1.7B) + init timelines
...
1.7B: TTFA p50 43.9 ms, playback_start 43.9 ms, stall 0 (baseline 32.0 / 116.2 / 84.7).
0.6B: TTFA p50 46.1 ms, playback_start 46.1 ms, stall 0 (baseline 27.8 / 95.4 / 67.3).
RTF unchanged (~0.1). Measured on L20X via gpu run --gpus 1 (canhazgpu).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 11:21:48 +08:00
tzhouam and Claude Fable 5.1
8e912db6c8
[Edge][WP6] Slim the AR/TTS import path and add an edge dependency set
...
* diffusers is no longer imported by vllm_omni.diffusion.data (annotation only);
vllm_omni.diffusion.io_support (diffusion registry + distributed state) is
imported lazily by config_factory and async_omni_engine, so constructing a
Qwen3-TTS pipeline config / AsyncOmni no longer loads diffusers,
x_transformers or whisper (guarded by tests/config/test_import_guard.py).
* requirements/common.txt = core.txt (AR/speech runtime) + media.txt
(diffusion/video/extra audio); VLLM_OMNI_EDGE_BUILD=1 makes setup.py use
requirements/<device>-edge.txt (core only); `edge` extra adds websockets and
sounddevice for on-device clients.
Measured on this host (CUDA venv): `import vllm` 7.0-7.9 s, `import vllm_omni`
adds ~20 s of which ~17 s is transformers' own import (transformers.utils.import_utils)
pulled in by vllm_omni.patch / vllm_omni.version; that floor is not
vLLM-Omni's and is unchanged. Guard test: no diffusion module loaded on the TTS path.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 11:14:50 +08:00
tzhouam and Claude Fable 5.1
49a839ecf9
[Edge][WP5] Add codec-token streaming mode with on-device decoding
...
* qwen3_tts_talker_only pipeline (single terminal LLM_AR stage,
final_output_type "latent") + vllm_omni/deploy/qwen3_tts_talker_only.yaml;
a terminal talker publishes its per-step codes.audio rows to the client
(omni_client_multimodal_output_keys).
* /v1/audio/speech/stream: session.config.output_mode="codec_tokens" streams
codec.start (JSON) + binary frames (<IHB seq/n_frames/flags + int16 rows,
vllm_omni/entrypoints/openai/codec_stream.py) + codec.done; new input.cancel
message aborts an in-flight generation for both codec and PCM sessions
(single reader task + session inbox replaces direct socket reads); optional
session.config.seed; audio.done gains "cancelled" only when it happened.
* serving_speech._generate_codec_chunks aligns the cumulative code tensor to
output token ids (drops prefill placeholder/EOS rows) and emits deltas.
* TTS adapters: supports_codec_stream / codec_stream_spec (Qwen3-TTS: 16
codebooks, 2048 ids, 12.5 Hz, 24 kHz, decoder qwen3_tts_tokenizer_v2_12hz).
* examples/online_serving/text_to_speech/qwen3_tts/edge_decoder_client.py
decodes locally with Qwen3TTSTokenizerV2Decoder (ramp schedule, 72-frame
context, cancel/reset), codec_parity_check.py and
benchmarks/tts/codec_stream_e2e.py compare against the two-stage server.
* docs/serving/codec_token_streaming.md; CPU unit tests for the wire format,
alignment, session config and handler (frames, unsupported adapter, cancel);
L3 e2e tests/e2e/online_serving/test_qwen3_tts_codec_stream.py.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 11:10:13 +08:00
tzhouam and Claude Fable 5.1
35e43b9983
[Edge][WP3] Add CPU OmniPlatform (AR + generation stages on vLLM's CPU backend)
...
* vllm_omni/platforms/cpu/platform.py: CPUOmniPlatform(OmniPlatform, CpuPlatform)
selected when VLLM_TARGET_DEVICE=cpu or a +cpu vLLM wheel is installed
(builtin plugin "cpu"; explicit CPU target short-circuits accelerator probes
like vLLM does). NUMA-based memory queries, one logical device, no graph
wrapper (sentinel type for isinstance checks), inductor opt-in via
VLLM_OMNI_CPU_INDUCTOR=1, diffusion stages unsupported.
* vllm_omni/platforms/cpu/worker: CPUARWorker / CPUGenerationWorker compose
vLLM's CPUWorker with the Omni mixin (XPU pattern); CPUARModelRunner /
CPUGenerationModelRunner compose the Omni runners with CPUModelRunner
(no graphs, no async omni output; sleep/wake return error ACKs).
* patch.py skips the CuMem patch on CPU-only torch; Qwen3-TTS speaker encoder
and prompt-embeds dtype follow the model dtype (float32/float16 on CPU).
* vllm_omni/deploy/qwen3_tts.yaml: `platforms: cpu:` overlay (eager, no async
scheduling, absolute kv_cache_memory_bytes, disjoint OMP thread ranges).
* requirements/cpu.txt (+psutil, intel-openmp), docs/getting_started/installation/cpu.md.
Measured (this x86 Xeon 8480C host, vllm 0.28.0+cpu, bf16, 12+4 threads):
Qwen3-TTS 0.6B CustomVoice end-to-end on CPU, 12 prompts: TTFA p50 292 ms,
RTF ~1.7 (25-frame chunk ~4.6 s), init 185 s. Result JSON + init timeline
committed under benchmarks/tts/edge_results/.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 11:02:14 +08:00
tzhouam and Claude Fable 5.1
55192de984
[Edge][WP4] Add hardware adaptation: probe, derived overrides, auto profile, calibration
...
* vllm_omni/edge/hardware_probe.py: HardwareProfile from /proc, /sys and torch
(ISA flags incl. AVX-512/AMX and NEON/dotprod/i8mm/SVE, physical cores,
big.LITTLE clusters, NUMA, RAM, CUDA discrete vs Tegra unified memory, NPU
via override), hardware classes jetson / cuda_discrete / arm64_cpu / x86_cpu /
npu_phone; VLLM_OMNI_HW_PROFILE=<json> overrides the probe (emulation, tests).
* vllm_omni/edge/adapt.py: derive_overrides -> dtype, absolute KV budgets from
available memory minus weights, max_num_seqs, per-stage disjoint CPU thread
ranges on the big cluster, eager/graph switches for small or unified memory,
adaptive-chunk parameters, timeouts from a load cost model.
* vllm_omni/edge/calibrate.py: chunk-schedule calibration from measured chunk
arrivals with a per-hardware-fingerprint cache under VLLM_CACHE_ROOT.
* vllm_omni/edge/auto_profile.py + deploy_profile="auto": edge/<model>.yaml ->
edge/hardware/<class>.yaml -> derived overrides -> cached calibration,
materialized as a temp deploy YAML (platform overlays are superseded).
* benchmarks/tts/hw_emulation.py: emulated classes (ATEN_CPU_CAPABILITY,
taskset, profile overrides) driving stream_latency_bench with auto profiles.
* CPU-only tests for probe snapshots, derivation rules, calibration and auto.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 11:01:40 +08:00
tzhouam and Claude Fable 5.1
073d31b9cd
[Edge][WP2] Add initialization timeline and cold-start profiler
...
* vllm_omni/engine/init_timeline.py: InitTimeline phase collector; engine
phases (stages_init, g3_device_lock, g2_spawn/ready) and worker phases
(proc_entry, engine_core_init, init_device, load_model/load_weights,
talker_mtp_init, attn_prewarm, cudagraph_capture, talker_mtp_capture,
code2wav_cudagraph, predictor_setup_compile/warmup/cudagraph) recorded via
worker_phase/timed_phase; workers append JSONL under
VLLM_OMNI_INIT_TIMELINE_DIR (inherited at spawn) and the engine merges them.
Enabled by VLLM_OMNI_INIT_TIMELINE=<json> or log_stats; table logged at INFO,
partial table on orchestrator startup timeout, suggested timeouts logged.
* omni_base.py: named deploy profiles default to stage_init_timeout=900 /
init_timeout=1500 unless given explicitly.
* gpu_model_runner._init_talker_mtp tolerates max_cudagraph_capture_size=None;
gpu_ar_model_runner.shutdown skips CUDA graph teardown on CPU.
* benchmarks/tts/init_profile.py: runs stream_latency_bench --init-only per
configuration (default, cold_cache, eager_stage1, eager_both,
parallel_stage_init, edge, ...) and tabulates phase durations.
* stream_latency_bench: --parallel-stage-init / --deploy-profile flags; the
resource poller no longer shadows Thread._stop and skips GPU sampling on CPU.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 11:01:39 +08:00
tzhouam and Claude Fable 5.1
f804bbd679
[Edge][WP0] Record Qwen3-TTS streaming baselines on 1x L20X
...
Default deploy config (1 -> 25 frame schedule), 12 prompts x 3 repeats,
warm-up excluded, one GPU via `gpu run`:
1.7B CustomVoice: TTFA p50 32.0 ms, playback-start p50 116 ms (stall at
TTFA 85 ms), RTF_total 0.086, chunk gap p50 163 ms, init 271 s (cold caches)
0.6B CustomVoice: TTFA p50 27.8 ms, playback-start p50 95 ms (stall 67 ms),
RTF_total 0.077, chunk gap p50 146 ms, init 152 s
Per-request chunk arrivals, memory and the full summaries are in the JSON
(force-added: *.json is gitignored repo-wide).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 10:49:37 +08:00
tzhouam and Claude Fable 5.1
b22dcc59f7
[Edge][WP1] Add edge deploy profile and deploy_profile selector
...
* vllm_omni/deploy/edge/qwen3_tts.yaml: single-device Qwen3-TTS profile with a
ramped codec chunk schedule (2->4->8->16->25 frames) that removes the ~80 ms
playback stall of the default 1->25 schedule, decode batch 1, max_num_seqs 4.
* deploy_profile="edge" (Omni/AsyncOmni kwarg, --deploy-profile CLI, headless
serve) resolves vllm_omni/deploy/<profile>/<model_type>.yaml; mutually
exclusive with deploy_config; explicit profiles never fall back silently.
* tests/helpers/stage_config.py: modify_stage_config anchors a relative
base_config before writing the temp YAML so overlay-derived configs resolve.
* async_omni_engine.py also carries the init-timeline hooks used by WP2.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 10:27:33 +08:00
tzhouam and Claude Fable 5.1
b70207f57f
[Edge][WP0] Add offline streaming-latency benchmark for chunked TTS
...
Adds benchmarks/tts/stream_latency_bench.py (AsyncOmni driver reusing the
Qwen3-TTS example's prompt builder; --model override, warm-up/repeat,
--init-only, per-chunk arrivals, peak RSS and per-process GPU memory) and
benchmarks/tts/stream_latency_metrics.py (TTFA, underrun-free playback start,
stall at TTFA, RTF streamed/total, chunk gaps, percentiles) with CPU unit
tests. Results go under benchmarks/tts/edge_results/stream_latency/.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-09 10:24:53 +08:00
2bae550c04
[Frontend] Opt-in WebSocket TTS split_granularity and session seed ( #7046 )
...
Signed-off-by: rk9595 <rakesh.kariya@somaiya.edu >
Signed-off-by: Rakesh Kariya <rakesh.kariya@somaiya.edu >
Co-authored-by: Cursor <cursoragent@cursor.com >
Co-authored-by: Claude Opus 5 <noreply@anthropic.com >
2026-09-08 19:15:59 -07:00
zhengjia and Cursor
81c1c460b3
[Bugfix][Frontend] Accept the msgpack-numpy package's numpy markers on the OpenPI endpoint ( #6051 )
...
Signed-off-by: zjli2013 <leezhengjiang@126.com >
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-08 19:15:48 -07:00
NancyFyong and NancyFyong
e74fe3c6e8
[Model] Add Audio8 TTS Preview 0.6B (DualAR, 44.1 kHz codec) ( #6157 )
...
Signed-off-by: NancyFyong <NancyFyong@users.noreply.github.com >
Co-authored-by: NancyFyong <NancyFyong@users.noreply.github.com >
2026-09-08 19:00:25 -07:00
boatman
cdf027874c
[Feat][OmniVoice]Support Varlen Attn, Request-Batch and Step-Execution ( #6408 )
...
Signed-off-by: boatman <109857087+sphinxkkkbc@users.noreply.github.com >
2026-09-08 18:58:38 -07:00
eval
d7678e2bb3
[Bugfix][MiniCPM-o] Fix the audio_embeds input path ( #5730 )
...
Signed-off-by: eval-dev <0xe5bca0@gmail.com >
Signed-off-by: eval <74645252+eval-dev@users.noreply.github.com >
2026-09-08 18:41:42 -07:00
Zhichao Zhang
5078c7ad66
[Bugfix][MiMo-Audio] Align code2wav decode with tokenizer device ( #6539 )
...
Signed-off-by: chaosansui <zzc15560846421@163.com >
Signed-off-by: Zhichao Zhang <60429419+smartDream-chao@users.noreply.github.com >
2026-09-08 18:38:11 -07:00
Hongsheng Liu
f67cc52f74
[Doc] Add AI usage policy for contributions ( #7305 )
...
Signed-off-by: hsliuustc0106 <liuhongsheng4@huawei.com >
2026-09-09 09:17:24 +08:00
Anjie Hou and Claude Opus 5
b6f4df320d
[Refactor][Diffusion] Resolve offload topology through one plan resolver ( #7209 )
...
Signed-off-by: specture724 <specture724@gmail.com >
Co-authored-by: Claude Opus 5 <noreply@anthropic.com >
2026-09-09 08:17:38 +08:00
Tianyao Wu
b3dd45874a
[Bugfix] Build the forced-aligner prompt without a chat template (word timestamps one bin late) ( #7240 )
...
Signed-off-by: Tianyao Wu <rayroy31@gmail.com >
2026-09-08 19:27:38 +00:00
Lei Ke and KrystalRay
5e4baea64d
[Bugfix][NPU] Limit MiniMax H3 modulation grid size ( #6794 )
...
Signed-off-by: KrystalRay <keeleiray@gmail.com >
Co-authored-by: KrystalRay <keeleiray@gmail.com >
2026-09-08 09:08:46 -07:00
fdaf4e31bd
Add vLLM-Omni library info to Hugging Face Hub requests ( #5381 )
...
Signed-off-by: Harry Mellor <19981378+hmellor@users.noreply.github.com >
Co-authored-by: Hongsheng Liu <liuhongsheng4@huawei.com >
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com >
2026-09-08 10:08:38 -06:00
liangmenghuang and Claude Fable 5.1
7a80b79698
[Bugfix][Model] GR00T-N1.7: honor the per-request seed for flow-matching noise ( #7253 )
...
Signed-off-by: liangmengh <liangmengh@nvidia.com >
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-08 15:53:20 +00:00
andyluo7
de1b0708bd
[CI][ROCm] Route LTX2 Ulysses parity to two-GPU lane ( #7234 )
...
Signed-off-by: andyluo7 <andy.luo@amd.com >
2026-09-08 22:59:37 +08:00
Hongsheng Liu
7422a85cc7
[Bugfix] Skip HWR store-size scans when no limit is configured ( #7131 )
...
Signed-off-by: Hongsheng Liu <liuhongsheng4@huawei.com >
2026-09-08 22:54:49 +08:00
Yancy and Asthenia
a31690041d
[Bugfix][Examples] Use --profiler-config flag in offline TTS examples ( #6763 )
...
Signed-off-by: Asthenia <asthenia0412@gmail.com >
Co-authored-by: Asthenia <asthenia0412@gmail.com >
2026-09-08 13:56:27 +00:00
Honghan Zhu and amy-why-3459
d59d166485
[Bugfix] Preserve additional_config for LLM stages ( #7272 )
...
Signed-off-by: zhuhh97 <zhuhonghan@huawei.com >
Co-authored-by: amy-why-3459 <wuhaiyan17@huawei.com >
2026-09-08 20:44:49 +08:00
Shuolei Wang
5378b77be4
[Model][JoyAI-VL-Interaction] Add native multi-stage pipeline ( #5352 )
...
Signed-off-by: Shuolei Wang <shuoleiwang123@gmail.com >
2026-09-08 05:07:08 -07:00
liangmenghuang and Claude Fable 5.1
d7740336ff
[Bugfix][Model] GR00T-N1.7: honor processor_config image pipeline (use_albumentations / crop_fraction / letter_box_transform) to match Isaac-GR00T ( #7083 )
...
Signed-off-by: liangmengh <liangmengh@nvidia.com >
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-08 18:59:01 +08:00
LHXuuu
c9c25b33c3
[Frontend] Add server-side VAD for turn-based omni models ( #6618 )
...
Signed-off-by: LHXuuu <xulianhao.xlh@antgroup.com >
2026-09-08 03:17:00 -07:00
Alicia
031612f250
[Bugfix] Fix video benchmark timeout and failure accounting ( #7259 )
...
Signed-off-by: Alicia <115451386+congw729@users.noreply.github.com >
2026-09-08 09:40:08 +00:00
andyluo7 and wangyu
b58ff5cb8b
[CI/Build] Wait for duplex reaper recovery in retry test ( #7225 )
...
Signed-off-by: andyluo7 <andy.luo@amd.com >
Co-authored-by: wangyu <53896905+yenuo26@users.noreply.github.com >
2026-09-08 17:10:51 +08:00
tlysanhuo
7c2e30afd3
[Bugfix] Bound omni benchmark per-request timeout to 15 min by default ( #7130 )
...
Signed-off-by: tly <2200895168@qq.com >
2026-09-08 02:00:25 -07:00
Chenguang Zheng
f3fabe4145
[Bugfix] Keep --disable-log-stats out of stage config resolution ( #7237 )
...
Signed-off-by: Chenguang ZHENG <645327136@qq.com >
2026-09-08 16:19:07 +08:00
Honghan Zhu
c086554d1f
[Perf]Boogu-Image Skip dense attention masks ( #6871 )
...
Signed-off-by: zhuhh97 <zhuhonghan@huawei.com >
2026-09-08 00:53:20 -07:00
wuli666
c704aeccae
[Bugfix] Fix Step-Audio2 L4 CI KV cache allocation ( #6839 )
...
Signed-off-by: wuli666 <421774554@qq.com >
2026-09-08 14:17:33 +08:00
Chenguang Zheng
087ac46318
[Refactor 1/N] Centralize Omni config resolution ( #5140 )
...
Signed-off-by: Chenguang ZHENG <645327136@qq.com >
2026-09-08 10:30:26 +08:00
Deep Shah and amy-why-3459
1413eaab7c
[Bugfix][Qwen3-Omni] Read code-predictor RoPE theta from rope_parameters ( #7228 )
...
Signed-off-by: Deep Shah <deep@socratic.co >
Co-authored-by: amy-why-3459 <wuhaiyan17@huawei.com >
2026-09-08 10:25:27 +08:00
ZacheryAU
b1ec136bd7
[Frontend] Add omni benchmark support for image and video endpoints ( #4728 )
2026-09-08 09:28:21 +08:00
Yueqian Lin
e1c59edec6
[Refactor] fish_speech: vendor DAC codec modules, drop external fish-speech dependency ( #4871 )
...
Signed-off-by: Yueqian Lin <linyueqian@outlook.com >
2026-09-08 09:22:36 +08:00
boatman
043f03d576
[Migrate]Move model-specific helpers out of serving_speech ( #6697 )
...
Signed-off-by: boatman <109857087+sphinxkkkbc@users.noreply.github.com >
2026-09-08 08:59:45 +08:00
Jierui (Jerry) Xu
c3498fb869
[Model] Add Boogu-Image Turbo pipeline resolution ( #6961 )
...
Signed-off-by: Jerry Xu <xjr2423@gmail.com >
2026-09-08 08:59:23 +08:00
6942a5b600
[1/N] Stream Wan VAE chunks to the media consumer ( #7016 )
...
Signed-off-by: specture724 <specture724@gmail.com >
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
Co-authored-by: Hongsheng Liu <liuhongsheng4@huawei.com >
2026-09-08 07:41:13 +08:00
Rahul Steiger and Nils Hoffmann
3b335814cc
[Bugfix][Cosmos3] Fix distributed Transfer output envelope ( #7205 )
...
Signed-off-by: Rahul Steiger <rsteiger@nvidia.com >
Co-authored-by: Nils Hoffmann <nhoffmann@nvidia.com >
2026-09-08 07:34:08 +08:00
cf36f5e474
[Bugfix][MiniCPM-o] Allow ragged audio_feature_lens across a batch ( #7071 )
...
Signed-off-by: Pujitha Paladugu <10557236+pujitha24@users.noreply.github.com >
Co-authored-by: Pujitha Paladugu <10557236+pujitha24@users.noreply.github.com >
Co-authored-by: amy-why-3459 <wuhaiyan17@huawei.com >
2026-09-07 23:51:13 +08:00