Repository navigation
[Model] Consolidate MOSS-TTS Local 1.5 deploy configuration - #8704
Conversation
Signed-off-by: Canlin Guo <canlinguosdu@gmail.com>
|
Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits. |
|
This PR appears to belong to: docs/design/module/vllm_omni_config.md. Module owners: @lishunyang12 @alex-jw-brooks @hsliuustc0106 Routing: @lishunyang12 via module of the changed files, semantic router, CODEOWNERS; @alex-jw-brooks via module of the changed files, semantic router; @hsliuustc0106 via CODEOWNERS @gcanlin, please review your own changes and leave a short self-review comment describing what you checked. PRs without author self-review may not be assigned a reviewer. Please take a look when you have a chance. If you would like an automated review, mention @vllm-omni-review-bot in a comment. |
Omni ReviewBot routing recordAssigned Strict on zcode (GLM-5.3-Flash) under experiment |
baseline: vLLM-Omni 当前最佳性能vLLM: v0.26.0 vLLM-Omni: https://github\.com/gcanlin/vllm\-omni/tree/encoder\-gpu # Serving
VLLM_OMNI_MOSS_REF_ENCODER_DEVICE=cuda:7 vllm serve OpenMOSS-Team/MOSS-TTS-Local-Transformer-v1.5 \
--omni \
--host 0.0.0.0 \
--port 8123 \
--trust-remote-code \
--deploy-config vllm_omni/deploy/moss_tts_local.yaml \
--allowed-local-media-path /root/vllm-omni-workspace
# Benchmark
SEED_TTS_EVAL_DEVICE=cuda:1 \
VLLM_OMNI_BENCH_AUDIO_SAMPLE_RATE=48000 \
VLLM_OMNI_BENCH_AUDIO_CHANNELS=2 \
python benchmarks/tts/bench_tts.py \
--host 127.0.0.1 \
--port 8123 \
--model OpenMOSS-Team/MOSS-TTS-Local-Transformer-v1.5 \
--task voice_clone \
--locale en \
--dataset-path /root/vllm-omni-workspace/seed-tts-eval \
--num-prompts 1088 \
--concurrency 1 8 16 32 64 \
--output-len 256 \
--wer-eval \
--output-dir /root/vllm-omni-workspace/vllm-omni/results/
|
…ject#8704) Signed-off-by: Canlin Guo <canlinguosdu@gmail.com>


Purpose
Consolidate the seven redundant single-GPU MOSS-TTS Local 1.5 presets into standalone
moss_tts_local.yaml, using the former optimized settings. Remove GPU-memory/MPS probing from pipeline dispatch and register the static pipeline directly.CUDA uses MRV2, full-quota private MPS, 128 slots per stage, a 32 GiB Talker KV budget, prefix caching and dense codec graphs. Resolved settings match the former optimized profile on CUDA/CPU/NPU/XPU/ROCm/MUSA. The distinct 2/3-NPU topologies remain. Smaller CUDA GPUs or deployments without MPS must supply overrides; automatic capacity fallback is removed. Documentation and configuration tests follow the single default.
Test Plan
One H200 (143,771 MiB), GPU6; BF16, no quantization; full SeedTTS EN1088 voice cloning, 48 kHz stereo PCM, output length 256. One API process; server CPUs 48–79, client CPUs 80–95. Prewarm the 666 unique reference files, exclude the first complete C64 warmup round, and measure two full rounds at each concurrency. These are warm repeated-prompt results with prefix caching enabled where configured; TTFP is the client-side mean, not a tail-latency guarantee. MPS is enabled for all three preset comparisons.
vLLM Version: 0.31.0; Torch 2.13.0+cu130; CUDA 13.0; Transformers 5.14.1.
vLLM-Omni Commit: main
b65107d61331327424910c72e7a2da137dcfb3df; this PR changes configuration/dispatch only.CUDA_VISIBLE_DEVICES=6 OMP_NUM_THREADS=1 VLLM_WORKER_MULTIPROC_METHOD=spawn \ VLLM_OMNI_MOSS_REF_GRAPHS=0 taskset -c 48-79 vllm serve \ OpenMOSS-Team/MOSS-TTS-Local-Transformer-v1.5 --omni \ --host 127.0.0.1 --port 8124 --trust-remote-code \ --allowed-local-media-path /root/vllm-omni-workspace --api-server-count 1 \ --init-timeout 3600 --stage-init-timeout 3600 # Prewarm the reference files; then the first complete C64 pass warms the prompt set. VLLM_OMNI_BENCH_AUDIO_SAMPLE_RATE=48000 VLLM_OMNI_BENCH_AUDIO_CHANNELS=2 \ taskset -c 80-95 python benchmarks/tts/bench_tts.py \ --host 127.0.0.1 --port 8124 \ --model OpenMOSS-Team/MOSS-TTS-Local-Transformer-v1.5 \ --task voice_clone --locale en \ --dataset-path /root/vllm-omni-workspace/seedtts_testset \ --num-prompts 1088 --concurrency 64 64 64 128 128 --output-len 256 \ --output-dir results/moss-local-unified -- --seed-tts-file-ref-audioTest Result
Pooled throughput = total generated audio duration / total benchmark time. Parentheses show the two-round range. Select highest throughput subject to mean TTFP ≤130 ms.
The optimized settings win at both concurrencies. This is a configuration cleanup; the PR does not add a new runtime speedup.
--deploy-config: full benchmark plus first-frame length/order, stream/nonstream, cancellation and slot-recycling checks.AI assistance: Codex assisted with the configuration refactor, tests, benchmarking and PR description.