# R9.1.1 任务报告：D518 CosyVoice3 先进中文语音实验

## 结论

D518 本地 Docker GPU smoke 已通过。`FunAudioLLM/Fun-CosyVoice3-0.5B-2512` 可在 RTX 2060 6 GiB 上以 FP16、单 worker、串行推理运行，能够提供 OpenAI Speech 风格的 `/health` 与 `/v1/audio/speech` 接口。实验未发布 FRP、未修改集群，正式发布继续由 R9.4 YAML-first 控制面负责。

## 固定身份

- 源码：`FunAudioLLM/CosyVoice@074ca6dc9e80a2f424f1f74b48bdd7d3fea531cc`
- 模型：`FunAudioLLM/Fun-CosyVoice3-0.5B-2512@9f9c56f2514700ef79d64fd0afb693e0d672373b`
- 基础镜像：`docker.m.daocloud.io/pytorch/pytorch:2.3.1-cuda12.1-cudnn8-runtime@sha256:fc47f8018254e6df30f48c48f2db1c758d44de21a8c553de1a1c451a65baa70a`
- 基础镜像 ID：`sha256:2d1dee23cc95bf01aad2a292c10f051b01ddc6e7fa7535620cc8a7457720794c`
- 实验镜像 ID：`sha256:5e941831593d2d98c618fb7584f41af260f68c6899cf7faa88c9f72064ed7bda`
- 运行组合：Torch `2.3.1`、torchaudio `2.3.1`、CUDA `12.1`
- 低显存参数：`fp16=true`、`load_trt=false`、`load_vllm=false`
- Python 构建：pip `24.0`、`setuptools<81`、`openai-whisper==20231117 --no-build-isolation`、`onnxruntime-gpu==1.18.0`
- 参考音：官方 Apache-2.0 源码中的 `asset/zero_shot_prompt.wav`

模型通过 ModelScope Git/LFS 获取：先验证远端 `master` 等于锁定 commit，再检出该 commit 并拉取 LFS；没有把 SDK 的可漂移 revision 当成不可变身份。

## smoke 结果

固定文本：`我国新一代人工智能平台今日完成升级，将为科研与产业协同提供更高效的算力支持。`

- 模型加载：38 秒
- cold：请求 14.147833 秒，推理 14.141894 秒，WAV 8.24 秒，RTF 1.716970，395598 字节
- hot：请求 12.421401 秒，推理 12.416900 秒，WAV 10.52 秒，RTF 1.180742，505038 字节
- GPU：RTX 2060 6144 MiB
- 显存：基线 412 MiB，峰值 5831 MiB
- OOM：无

显存余量约 313 MiB，因此正式服务必须单副本、单 worker、串行推理，禁止并发模型副本。

## 完整性证据

- 核心权重 SHA-256：`/tmp/selfmedia-voice-r9-1-1/model-files.sha256`
- 结构化 smoke：`/tmp/selfmedia-voice-r9-1-1/smoke-result.json`
- Torch/GPU import：`/tmp/selfmedia-voice-r9-1-1/import-smoke.txt`
- 冷/热 WAV、headers 与日志：`/tmp/selfmedia-voice-r9-1-1/`
- GitHub 证据：[UniDesk #2148 comment](https://github.com/pikasTech/unidesk/issues/2148#issuecomment-4978683332)

实验容器已经清理；保留模型缓存、哈希、WAV 和日志供 R9.4 正式部署复用。

## 收敛过程

1. Qwen3-TTS 路径因 Torch/torchaudio ABI 不一致停止后，按子任务边界切换到 CosyVoice3。
2. Whisper 的 PEP517 隔离构建缺少 `pkg_resources`，改为独立非隔离安装。
3. 默认 PyPI 下载过慢；临时实验使用公开 USTC 镜像，正式实现将下载源放入 owning YAML。
4. 大依赖拆分为独立成功缓存层，避免后续失败时重复下载 ONNX Runtime。
5. ModelScope SDK 不接受 Git SHA revision，改用 Git/LFS 固定 commit。
6. 当前 CosyVoice3 构造器不接受旧 `load_jit` 参数，按锁定源码真实签名使用 `load_trt/load_vllm/fp16`。
7. D518 宿主无 `ffprobe`，WAV 校验改用运行镜像内工具。

## 后续

R9.4 将使用以上精确身份更新 YAML、容器、API、FRP 与受控 CLI；只有 plan/validate 和配置审核通过后才执行正式 apply，并继续在 SELFMEDIA 开发环境 4317 完成 voice 单步 smoke。
