Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion knowledge/repos/vllm-omni/models/cosyvoice3/rules.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ created: 2026-09-04
updated: 2026-10-25
type: rule
tags: [vllm-omni, models]
sources: ["PR #5673", "PR #6955", vllm_omni/model_executor/models/cosyvoice3/code2wav_core/cfm.py, vllm_omni/model_executor/models/cosyvoice3/flow_estimator_trt.py, tests/model_executor/models/cosyvoice3/test_cosyvoice3_components.py, benchmarks/tts/benchmark_cosyvoice3_trt_streams.py, "PR #6896", "PR #7521", "PR #8730"]
sources: ["PR #5673", "PR #6955", vllm_omni/model_executor/models/cosyvoice3/code2wav_core/cfm.py, vllm_omni/model_executor/models/cosyvoice3/flow_estimator_trt.py, tests/model_executor/models/cosyvoice3/test_cosyvoice3_components.py, benchmarks/tts/benchmark_cosyvoice3_trt_streams.py, "PR #6896", "PR #7521", "PR #8730", "PR #8456"]
confidence: high
---

Expand Down Expand Up @@ -73,3 +73,12 @@ confidence: high
- 验收:以含 RNG draw 的串行 RAS oracle(pre-B1 语义)断言批量结果与逐请求 seeded 运行(含 RNG 状态)一致;覆盖 mixed batch(greedy+random 行)的 history 对齐与 `win_size=0`;scheduler 侧断言 invalid logits(`invalid_logits_req_ids`)只终止受影响 request(含不请求 logprobs 的 request):其 `multimodal_output` 为 None、`output_token_ids` 为空、finish_reason 为 ERROR,同批健康 request 的 token 与 multimodal 输出完整。^[PR #8730]

<!-- kb:rule status=active since=v0.30.0 -->

## VLLM-OMNI-PR8456-MULTI-VOICE-BENCH — CosyVoice3 并发基准必须多 voice 轮转并按 (text, voice) 分组校验 seeded 一致性

- 触发:修改 `benchmarks/tts/bench_cosyvoice3_concurrency_matrix.py` 的 `--ref-audio`/`--ref-text` 参数解析、worker 的 per-request voice 选择、结果字段或固定 seed 的 byte-identity 校验。
Comment on lines +77 to +79

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Add the multi-voice benchmark rule to the owner index

The new benchmark rule is added without updating knowledge/repos/vllm-omni/models/cosyvoice3/_index.md. That index still describes rules.md only in terms of TensorRT stream handoff and plan publication, with deployment and HiFT additions; it does not advertise multi-voice concurrency or seeded identity checks. Readers selecting knowledge through the owner index therefore have no indication that this benchmark contract lives here. Update the index routing description in the same change, as explicitly required by the root AGENTS.md.

AGENTS.md reference: AGENTS.md:L23-L24

Useful? React with 👍 / 👎.

- 强制:`--ref-audio`/`--ref-text` 以 `nargs="+"` 接受一个或多个值,默认单 voice 行为保持不变;两者数量不等时必须在 `parse_args` 中以 `p.error("--ref-audio and --ref-text must have the same number of values")` 拒绝。第 `i` 个请求使用 `voice = i % len(ref_audio)` 并在结果中记录 `voice`,使并发请求携带不同 reference voice——这是该基准能暴露跨请求 voice 串音(#8235 一类回归)的前提。固定 seed 的 byte-identity 校验必须以 `(text, voice)` 元组为分组键:同 text 不同 voice 产出不同 PCM 是合法结果,不得跨 voice 比较。
- 禁止:把 seeded 校验退回按 text 单键分组(多 voice 下会把合法差异误报为 byte-identity violation);数量不匹配时静默截断、回退默认或继续运行;破坏默认单 voice 的向后兼容。
- 验收:`--help` 显示 `--ref-audio REF_AUDIO [REF_AUDIO ...]`;`--ref-audio a.wav b.wav --ref-text x` 报上述错误;双 voice 时请求按 A/B 交替(PR 以 stubbed request 验证);单 voice(默认)行为与改动前一致;pre-commit 通过。^[PR #8456]

<!-- kb:rule status=active since=v0.30.0 -->
Loading