# CosyVoice 3 零样本旁白教程：参考录音、逐字稿与试听验收

CosyVoice 3 零样本旁白教程通过独立输入、具体脚本和逐项回听完成。本页准备了真实音频输入与官方接口对应脚本，WhisperX/CosyVoice 模型本次未执行。

## 1. 准备与文字逐句一致的参考

下载 reference.wav 和 reference.txt：这是 macOS Tingting 合成的原创教材输入，不是真人声音或 CosyVoice 成功结果。自己的任务请换成自录或明确获使用许可的录音，并准确抄写参考语音。

## 2. 按当前官方路径建独立环境

官方原 FunAudioLLM 地址已跳转 QwenAudio/CosyVoice，参考 README 建 Python 3.10 独立环境及子模块。安装重量较大，本次未安装或运行 CosyVoice，不用 tiny ASR 结果冒充 TTS。 将 --repo-dir 设为已安装依赖的 CosyVoice 克隆目录；--model-dir 使用该目录中实际模型的绝对路径。运行脚本的数据文件仍从素材包所在目录读取。

## 3. 选择 Fun-CosyVoice3 权重

按官方模型路径下载对应权重并设置 model_dir。下载材料里的 run-cosy.py 使用 AutoModel；不要把百炼云端 cosyvoice-v3.5 API 名称当作开源权重目录。

```sh
python run-cosy.py --repo-dir /path/to/CosyVoice --model-dir /path/to/CosyVoice/pretrained_models/Fun-CosyVoice3-0.5B
python check.py --result generated.json
```

## 4. 区分参考文字和待朗读文字

reference.txt 描述参考录音，target.txt 是新的旁白。CosyVoice3 官方样例在提示文字前使用 You are a helpful assistant.<|endofprompt|>，保留结构并检查两份文字没有混淆。

## 5. 运行并逐块保存真正输出

run-cosy.py 把 tts_speech 的音频块按 sample_rate 保存。必须完整迭代并记录实际 WAV；本页试听检查表初始状态为 pending，没有空白文件冒充模型输出。

## 6. 逐字试听再进入视频工程

核对漏字、重复、数字和段尾，不能只比较音色。把实际生成 WAV 的 hash、采样率与试听结果关联；通过后再接已有视频混音页。

## 7. 下载材料、检查负例与继续操作

解压素材包后先运行 python check.py，再运行 python check.py --self-test。前者读取真实 WAV / JSON / SRT 与源 hash；后者拒绝损坏 WAV、倒置时间、越界时间和缺失词时间。文件通过不代表文字、情绪或说话人判定已通过。

## 来源与范围

见 PROVENANCE.md。WhisperX/CosyVoice 推理本次未执行，系统音频为原创练习输入。

- https://github.com/QwenAudio/CosyVoice
- https://github.com/QwenAudio/CosyVoice/blob/main/example.py
