#5721 配音阶段出错 [Qwen3-TTS(本地内置)] CUDA error: device-side assert triggeredCompile with `TORCH_USE_CUDA_DSA` to enable device-side

101.87* Posted at: 3 hours ago

配音阶段出错 [Qwen3-TTS(本地内置)] CUDA error: device-side assert triggered
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions.
,Traceback (most recent call last):
File "videotrans\process\tts_fun.py", line 121, in qwen3tts_fun
File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "qwen_tts\inference\qwen3_tts_model.py", line 603, in generate_voice_clone

talker_codes_list, _ = self.model.generate(

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "qwen_tts\core\models\modeling_qwen3_tts.py", line 2272, in generate

talker_result = self.talker.generate(

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py",
......
enable device-side assertions.

Traceback (most recent call last):

File "videotrans\task\job.py", line 35, in run

File "videotrans\task\job.py", line 154, in process_task

File "videotrans\task\dubbing.py", line 51, in dubbing

File "videotrans\task\dubbing.py", line 204, in _tts

File "videotrans\tts\__init__.py", line 207, in run

File "videotrans\tts\_base.py", line 93, in run

File "videotrans\tts\_qwenttslocal.py", line 46, in _exec

File "videotrans\configure\base.py", line 272, in _new_process

videotrans.configure.excepts.VideoTransError: CUDA error: device-side assert triggered
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions.
,Traceback (most recent call last):
File "videotrans\process\tts_fun.py", line 121, in qwen3tts_fun
File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "qwen_tts\inference\qwen3_tts_model.py", line 603, in generate_voice_clone

talker_codes_list, _ = self.model.generate(

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "qwen_tts\core\models\modeling_qwen3_tts.py", line 2272, in generate

talker_result = self.talker.generate(

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py", line 2566, in generate

result = decoding_method(

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py", line 2789, in _sample

outputs = model_forward(**model_inputs, return_dict=True)

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\nn\modules\module.py", line 1751, in _wrapped_call_impl

return self._call_impl(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\nn\modules\module.py", line 1762, in _call_impl

return forward_call(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\utils\generic.py", line 918, in wrapper

output = func(self, *args, **kwargs)

File "qwen_tts\core\models\modeling_qwen3_tts.py", line 1671, in forward

predictor_result = self.code_predictor.generate(

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py", line 2566, in generate

result = decoding_method(

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py", line 2831, in _sample

next_tokens = torch.multinomial(probs, num_samples=1).squeeze(1)

RuntimeError: CUDA error: device-side assert triggered
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions.
cfg=TaskCfgTTS(uuid='b3619607b7', name='D:/AI/win-pyvideotrans-v4.04/output/translate/发现更多精彩视频 - 抖音搜索.ZH-HANS.srt', dirname='D:/AI/win-pyvideotrans-v4.04/output/translate', noextname='发现更多精彩视频 - 抖音搜索.ZH-HANS', basename='发现更多精彩视频 - 抖音搜索.ZH-HANS.srt', ext='srt', target_dir='D:/AI/win-pyvideotrans-v4.05/output/tts', cache_folder='D:/AI/win-pyvideotrans-v4.05/tmp/13608/b3619607b7', is_cuda=True, source_language=None, source_language_code=None, source_sub=None, source_wav=None, source_wav_output=None, target_language=None, target_language_code='zh-cn', target_sub='D:/AI/win-pyvideotrans-v4.04/output/translate/发现更多精彩视频 - 抖音搜索.ZH-HANS.srt', target_wav='D:/AI/win-pyvideotrans-v4.05/output/tts/发现更多精彩视频 - 抖音搜索.ZH-HANS.wav', target_wav_output=None, tts_type=1, volume='+0%', pitch='+0Hz', voice_rate='+0%', voice_role='cosy.wav', voice_autorate=True, video_autorate=False, remove_silent_mid=False, align_sub_audio=False)


=
system:Windows-10-10.0.26200-SP0
version:v4.05
frozen:True
language:zh
root_dir:D:/AI/win-pyvideotrans-v4.05

5 Replies

Qwen3-TTS 内置的 CUDA 内核在执行 generate_voice_clone 时触发了设备端断言(device-side assert),这通常由以下两个原因之一导致:

  1. 显存不足 — 模型推理时 GPU 显存耗尽,底层 CUDA 内核访问越界。
  2. 参考音频不规范 — 角色 cosy.wav 的音频文件时长、采样率或声道格式不满足 Qwen3-TTS 的硬性约束,导致张量维度不匹配。

排查步骤:

  1. 临时切换 CPU 运行(唯一 100% 可绕过 CUDA 错误的方法):

    • 在主界面取消勾选 CUDA 加速
    • 重新执行该任务。若不再报错,则确认为 GPU/显存问题。
  2. 如果是显存不足

    • 关闭其他 GPU 程序(浏览器、游戏等),释放显存。
    • 进入 菜单 → 工具 → 高级选项 → 通用设置,将 GPU 同时任务数 设为 1,并确保没有勾选“多显卡模式”
    • 降低 Whisper 或其他可能同时占用的模型尺寸(如使用 medium 而非 large-v3)。
  3. 如果是参考音频 cosy.wav 不规范

    • 确保音频文件为 wav 格式,采样率 44100Hz,单声道,时长 3-10 秒
    • 检查文件是否包含背景噪声或开头/结尾多余静音,应切割到仅包含清晰的人声。
    • 将文件放入 软件目录/f5-tts/ 文件夹,并严格按照格式编写参考音频描述(见菜单 TTS设置 → 设置参考音频)。
  4. 若以上均无效

    • 请提供 logs/ 下最新日志文件(复制底部 30 行),并说明您的 NVIDIA 显卡型号、显存大小、CUDA 版本(运行 nvidia-smi 查看)。

请查阅相关文档:

[DEBUG] [新进程任务 结束:title='Qwen3-TTS dubbing...'],耗时12.116714000701904s
[ERROR] CUDA error: device-side assert triggered
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions.
,Traceback (most recent call last):
File "videotrans\process\tts_fun.py", line 121, in qwen3tts_fun
File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "qwen_tts\inference\qwen3_tts_model.py", line 603, in generate_voice_clone

talker_codes_list, _ = self.model.generate(

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "qwen_tts\core\models\modeling_qwen3_tts.py", line 2272, in generate

talker_result = self.talker.generate(

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py", line 2566, in generate

result = decoding_method(

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py", line 2789, in _sample

outputs = model_forward(**model_inputs, return_dict=True)

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\nn\modules\module.py", line 1751, in _wrapped_call_impl

return self._call_impl(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\nn\modules\module.py", line 1762, in _call_impl

return forward_call(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\utils\generic.py", line 918, in wrapper

output = func(self, *args, **kwargs)

File "qwen_tts\core\models\modeling_qwen3_tts.py", line 1671, in forward

predictor_result = self.code_predictor.generate(

File "D:\AI\win-pyvideotrans-v4.05\_internal\torch\utils\_contextlib.py", line 116, in decorate_context

return func(*args, **kwargs)

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py", line 2566, in generate

result = decoding_method(

File "D:\AI\win-pyvideotrans-v4.05\_internal\transformers4576\generation\utils.py", line 2831, in _sample

next_tokens = torch.multinomial(probs, num_samples=1).squeeze(1)

RuntimeError: CUDA error: device-side assert triggered
Compile with TORCH_USE_CUDA_DSA to enable device-side assertions
4070S 12g显存 CUDA UMD 13.3

核心原因Qwen3-TTS 的 CUDA 内核在解码 cosy.wav 参考音频时触发设备端断言,根本原因通常是 显存瞬时不足参考音频格式不合法。您的 4070S 12GB 显存理论足够,但可能被其他 GPU 进程(如浏览器、Whisper 模型)占用;同时 cosy.wav 的时长、采样率或声道数可能不满足 Qwen3-TTS 的硬性约束。

按以下顺序排查(从最快验证到根本修复):


1. 切换到纯 CPU 模式(快速定位问题来源)

在软件主界面 取消勾选 CUDA 加速,重新执行该配音任务。

  • 如果不再报错 → 确认为 GPU/显存问题,见第 2 步。
  • 如果仍报错 → 问题在参考音频本身,见第 3 步。

2. GPU 显存优化(若 CPU 模式正常)

  • 关闭所有占用 GPU 的应用程序(浏览器、游戏、直播、其他 AI 软件)。
  • 降低同时加载的模型数量
    进入 菜单 → 工具 → 高级选项 → 通用设置

    • GPU 同时任务数 设为 1
    • 确保未勾选 多显卡模式
  • 检查 CUDA 环境兼容性
    软件要求 CUDA 12.8+ 且 cuDNN 9.11+。您提到的 “CUDA UMD 13.3” 可能是驱动版本号,请打开命令提示符运行:

    nvcc -V      # 查看 CUDA 编译器版本
    nvidia-smi   # 查看驱动 CUDA 版本

    如果 CUDA 编译器版本低于 12.8,请重新安装 CUDA 12.8cuDNN 9.11

  • 重启软件:所有设置生效后再试。

3. 检查参考音频 cosy.wav

这是最常见的原因。Qwen3-TTS 对 clone 角色的参考音频要求严格:

  • 文件格式:必须是 wav,采样率 44100Hz单声道
  • 时长3~10 秒,过长或过短都会导致 device-side assert
  • 内容:仅包含清晰、无背景噪声的单一人声,开头结尾无静音。

操作步骤

  1. 用剪映、Audacity 等工具将 cosy.wav 裁剪至 3~10 秒,导出为 wav(44100Hz,单声道)。
  2. 将该文件放入 软件目录/f5-tts/ 文件夹(注意:Qwen3-TTS 的参考音频也读取 f5-tts/ 目录)。
  3. 打开 菜单 → TTS设置 → 设置参考音频,确保已正确填写参考音频的文本描述(格式:文件名#音频内的说话文本)。
  4. 若无法确认文本,可先用 Edge-TTS 或 Qwen3-TTS(非 clone 角色)为同一段字幕生成配音,暂时绕过克隆功能。

4. 若以上均无法解决

可能是模型文件损坏。请进入 models/ 目录,找到 Qwen3-TTS 的模型文件夹(通常以 models--Qwen--Qwen3-TTS 或类似命名),删除后重新运行任务,软件会自动重新下载。

最后:如果仍未解决,请提供:

  1. logs/ 目录中最新日志文件的完整内容(复制底部 50 行)。
  2. 在命令行执行 nvidia-smi 的完整输出截图(重点看显存使用和 CUDA 版本)。
  3. cosy.wav 的文件大小和时长。

参考文档

Cuda compilation tools, release 12.8, V12.8.93

CUDA 12.8 版本满足要求,问题大概率出在 cuDNN 版本不匹配参考音频 cosy.wav 不符合 Qwen3-TTS 的严格限制

1. 检查 cuDNN 版本

打开命令提示符,运行以下命令查看 cuDNN 版本:

where cudnn*.h 2>nul || echo cudnn not found in PATH

如果没有输出,说明 cuDNN 未正确安装或不在 PATH 中。
软件要求 cuDNN 9.11 及以上,请前往 cuDNN 9.11 下载页 下载并安装。安装后确保将 binlib 目录添加到系统环境变量 PATH 中,重启软件

2. 检查参考音频 cosy.wav

Qwen3-TTS 对克隆参考音频非常敏感:

  • 格式:必须是 wav,采样率 44100Hz单声道(mono)。
  • 时长3~10 秒,过长(>10s)会直接触发 device-side assert,过短(<3s)也会出错。
  • 内容:仅包含清晰的人声,无背景噪声,开头结尾无静音。

请用 Audacity 或剪映等工具验证并修正 cosy.wav,然后将文件放入 软件目录/f5-tts/ 文件夹(注意:Qwen3-TTS 的参考音频也读取该目录),并在 菜单 → TTS设置 → 设置参考音频 中正确填写音频文本描述,格式为:

cosy.wav#音频中说话的文本内容

3. 临时验证方案

取消勾选主界面的 CUDA 加速,改用 CPU 运行。如果不报错 → 说明是 GPU 环境或显存问题;如果仍报错 → 确认是参考音频或模型本身问题。

建议先尝试 步骤 2,这是最常见的原因。如果仍无效,请提供 logs/ 下最新日志的完整内容(复制底部 50 行),我会进一步分析。

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update. Dondate: ko-fi.com/jianchang512

Related resource