[Bugfix] Propagate seed to Qwen3-TTS Fast AR sampler (#3350)

Signed-off-by: Sy03 <1370724210@qq.com>
This commit is contained in:
Sy03 authored and GitHub committed 2026-05-05 14:57:55 -04:00
1 parent 5cf3f7947b
commit 2b85474c23
6 files changed
+124 -26

No files matched your search

@@ -268,6 +268,68 @@ class TestCodePredictorDtypeAlignment:
assert result.shape == (bsz, num_groups)
assert result.dtype == torch.long
def test_forward_generator_controls_sampling(self, mocker: MockerFixture, loaded_target_classes) -> None:
_, _, code_predictor_wrapper, _, _ = loaded_target_classes
common_mod = sys.modules["vllm_omni.model_executor.models.common.qwen3_code_predictor"]
mocker.patch.object(common_mod.current_omni_platform, "is_npu", return_value=False)
cp_config, talker_config = _make_tiny_config(loaded_target_classes)
vllm_config = _make_vllm_config(mocker, max_num_seqs=2)
predictor = code_predictor_wrapper(
vllm_config=vllm_config,
config=cp_config,
talker_config=talker_config,
)
predictor._wrapper_config.use_cuda_graphs = False
bsz = 1
hidden = talker_config.hidden_size
torch.manual_seed(123)
layer0_code = torch.zeros(bsz, dtype=torch.long)
layer0_embed = torch.randn(bsz, hidden)
last_talker_hidden = torch.randn(bsz, hidden)
first_generator = torch.Generator(device=layer0_code.device)
first_generator.manual_seed(1234)
second_generator = torch.Generator(device=layer0_code.device)
second_generator.manual_seed(1234)
different_generator = torch.Generator(device=layer0_code.device)
different_generator.manual_seed(4321)
first = predictor(
layer0_code=layer0_code,
layer0_embed=layer0_embed,
last_talker_hidden=last_talker_hidden,
do_sample=True,
temperature=0.9,
top_k=50,
top_p=1.0,
generator=first_generator,
)
second = predictor(
layer0_code=layer0_code,
layer0_embed=layer0_embed,
last_talker_hidden=last_talker_hidden,
do_sample=True,
temperature=0.9,
top_k=50,
top_p=1.0,
generator=second_generator,
)
different = predictor(
layer0_code=layer0_code,
layer0_embed=layer0_embed,
last_talker_hidden=last_talker_hidden,
do_sample=True,
temperature=0.9,
top_k=50,
top_p=1.0,
generator=different_generator,
)
assert torch.equal(first, second)
assert not torch.equal(first[:, 1:], different[:, 1:])
class TestCodePredictorModelDtype:
"""Test the inner model forward with different dtypes."""