Merge pull request #2152 from pikasTech/docs/selfmedia-d518-experiment-sync
Pipelines as Code CI / hwlab-web-probe-sentinel-nc01- Success
Pipelines as Code CI / platform-infra-gitea-nc01- Success
Pipelines as Code CI / unidesk-host- Success

docs: 记录 D518 Qwen 语音实验结论
This commit is contained in:
Lyon
2026-07-15 15:17:55 +08:00
committed by GitHub
2 changed files with 36 additions and 1 deletions
@@ -0,0 +1,32 @@
# R9.1 D518 Qwen3-TTS 0.6B 临时 Docker GPU 实验报告
## 结论
实验按预设停止边界完成,未解锁正式部署。Qwen3-TTS 模型和 NGC 基础镜像均成功获取,临时镜像也完成构建;容器首次启动在导入阶段因 Torch/TorchAudio CUDA ABI 不兼容退出,尚未进入模型加载,因此没有把该候选用于 6 GiB RTX 2060 的适配结论外推为成功或显存失败。
## 锁定身份
- Qwen 源码 ref022e286b98fbec7e1e916cb940cdf532cd9f488e。
- ModelScope 模型 ref70b274883e68023af521a9199603192d58ccdd3f。
- Python 包:qwen-tts 0.1.1。
- 基础镜像:nvcr.io/nvidia/pytorch:25.05-py3。
- 基础镜像 digestsha256:a0b4dc04f3ca1e539a5c6ea06f79bc45a33d5acd5cbf87dce7910365a924227c。
- 临时镜像:sha256:2019d93f4d55915c7ca388f6dfce13decda61417fd66dd10fd727a963e2e8ab9。
- 低显存参数:CUDA 0、float16、SDPA。
## 现场证据
- D518 Docker、NVIDIA runtime 和 RTX 2060 6144 MiB 可用。
- 官方 ModelScope 权重 14/14 文件完成,缓存约 2.4 GiB。
- NGC 镜像 59 个层完成,临时 Docker 镜像构建成功。
- 首次容器启动报缺少 torchaudio;加入官方 torchaudio 2.8.0 后确认其与 NGC Torch 2.8.0a0+5228986c39.nv25.05 的 libtorchaudio CUDA ABI 不兼容。
- 容器 OOMKilled=falseGPU 仍为约 780 MiB 基线;失败发生在模型加载之前。
- health、冷/热请求、WAV 与 ffprobe 因服务未就绪未执行。
## 清理与接力
- 临时容器、自定义网络、临时构建镜像和 NGC 基础镜像均已清理。
- 保留 D518 /tmp/selfmedia-voice-r9-1/model 的模型缓存及有界日志证据。
- 子 issue 最终证据:https://github.com/pikasTech/unidesk/issues/2133#issuecomment-4977796868
- 下一候选已登记为 R9.1.1 / UniDesk #2148CosyVoice3 0.5B 使用稳定匹配的 Torch/TorchAudio 组合继续验证。
- 正式 YAML-first apply、FRP、公网和 SelfMedia 接入仍保持锁定。
+4 -1
View File
@@ -100,10 +100,13 @@
依据 [UniDesk #2132](https://github.com/pikasTech/unidesk/issues/2132) 在 D518 部署先进中文语音推理服务并接入 SELFMEDIA 开发集群:先在 D518 临时目录以 Docker GPU smoke 验证 Qwen3-TTS 0.6B CustomVoice,成功后由 owning YAML 和受控 CLI 固化 D518 推理容器、NC01 FRPS、D518 FRPC、Secret sourceRef 与公网直连端口,再扩展 SelfMedia 远程 TTS 引擎并通过正常 master 自动交付在 4317 完成 voice 单步 smoke;禁止修改 release、生产 namespace/4319、手工长期运维或引入 Caddy,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R9_Task_Report.md)。
### R9.1 [in_progress]
### R9.1 [completed]
依据 [UniDesk #2133](https://github.com/pikasTech/unidesk/issues/2133) 由 Artificer 经 trans 在 D518 /tmp 完成 Qwen3-TTS 0.6B CustomVoice Docker GPU smoke:锁定官方上游 ref、镜像/构建、低显存参数和 health/speech API,以固定中文技术资讯文本验证首次与热调用、WAV 解码、实时率和峰值显存;成功后清理临时容器并留下可接力证据,失败则在一次官方低显存参数尝试后停止且不无界更换模型,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R9.1_Task_Report.md)。
#### R9.1.1 [in_progress]
依据 [UniDesk #2148](https://github.com/pikasTech/unidesk/issues/2148) 在 Qwen3-TTS 因 Torch/TorchAudio ABI 不兼容停止后,由 Artificer 经 trans 在 D518 /tmp 验证下一候选 CosyVoice3 0.5B:锁定官方 source/model ref 和 Apache-2.0 许可,使用稳定匹配的 Torch/TorchAudio Docker GPU 组合与本地自有或开源生成的中文参考 WAV,提供 health/speech API并以固定技术资讯文本完成 WAV、实时率和峰值显存 smoke;成功后为 R9.4 提供正式模型身份,失败则记录首个确定阻塞并停止无界试错,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R9.1.1_Task_Report.md)。
### R9.2 [in_progress]
依据 [SELFMEDIA #65](https://github.com/pikainc/selfmedia/issues/65) 由 Artificer 为 voice 单步增加 YAML 显式选择的 remote-openai-speech 自托管引擎:基础地址只从 YAML 声明的环境变量读取,模型、音色、指令、语速和引擎进入缓存身份,cache miss 调用 /v1/audio/speech 并原子写入 WAV,保留现有分段、edition 覆盖、FFmpeg 语速/响度和 timeline,禁止硬编码公网端口或静默回退 Kokoro,完成任务后将详细报告写入[任务报告](./details/selfmedia-production-delivery/R9.2_Task_Report.md)。