Red Alert 2 · Mental Omega — 四阵营副官语音模型
Red Alert 2 · Mental Omega — Four-Faction Adjutant Voice Model
基于 VITS-fast-fine-tuning 微调的多说话人 TTS 模型, 包含《红色警戒 2 · 心灵终结》四个阵营的副官(EVA)音色,支持 中文 / 英文 / 日文 及同句混读。
Ready for VITS-Fast-Fine-Tuning Inference.
Included characters(包含角色)
| 阵营 Faction | 说话人 Speaker | Speaker ID | 语言标记 |
|---|---|---|---|
| 盟军 Allied | us_eva |
3 | [EN] [ZH] [JA] |
| 苏联 Soviet | su_eva |
2 | [EN] [ZH] [JA] |
| 焚风 Foehn | ff_eva |
1 | [EN] [ZH] [JA] |
| 厄普西隆 Epsilon | ep_eva |
0 | [EN] [ZH] [JA] |
⚠️ Speaker ID 由训练时的目录扫描顺序决定,请以
configs/modified_finetune_speaker.json里的speakers字段为准,不要硬编码。
仓库文件 Files
.
├── OUTPUT_MODEL/
│ └── G_latest.pth # 生成器权重(推理只需这一个)159 MB
├── configs/
│ └── modified_finetune_speaker.json # 模型配置(含 speakers 映射)2.5 KB
├── assets/
│ └── eval/ # 模型评测图表
│ ├── fig_overview.png
│ ├── fig_secs.png
│ ├── fig_wer.png
│ └── fig_utmos.png
├── README.md
└── 使用协议.txt
| 文件 | 说明 |
|---|---|
OUTPUT_MODEL/G_latest.pth |
生成器权重,推理只需要这个文件 |
configs/modified_finetune_speaker.json |
模型配置:sampling_rate=22050、n_speakers=4、text_cleaners=["cjke_cleaners2"]、speakers 映射 |
OUTPUT_MODEL/D_latest.pth |
判别器权重(187 MB),推理不需要,仅用于继续训练 |
assets/eval/*.png |
模型评测图表(SECS / WER / UTMOS),见下方「模型评测」章节 |
模型信息 Model details
| 项目 | 值 |
|---|---|
| 架构 | VITS(多说话人),n_speakers = 4 |
| 底模 Base model | CJE / uma_trilingual(22050 Hz,三语底模) |
| 采样率 | 22050 Hz,单声道,16 bit PCM |
| 文本清洗器 | cjke_cleaners2(中日英三语) |
| 音素表 | 107 symbols |
| 训练方式 | VITS-fast-fine-tuning finetune_speaker_v2.py |
| 微调数据 | 504 条游戏内语音,约 14 分钟 |
| 训练量 | 100 epoch = 3500 step,起步于底模 iteration 419 |
| 训练硬件 | RTX 3060 Laptop(6 GB),batch 16 + fp16,约 1 小时 57 分 |
| 权重更新步 | G_latest.pth = iteration 101 |
| 权限 | 只读(gated: false,公开可用) |
快速使用 Usage
1. 准备环境
git clone https://github.com/Plachtaa/VITS-fast-fine-tuning.git
cd VITS-fast-fine-tuning
# 按官方 README_ZH.md 装好依赖(Python 3.8 + PyTorch CUDA 版)
2. 下载本仓库
pip install -U "huggingface_hub[cli]"
huggingface-cli download gurentan/RedAlert2_Adjutant_Voice_Model --local-dir ./
或者直接 git clone https://huggingface.co/gurentan/RedAlert2_Adjutant_Voice_Model
3. 单句合成
cmd_inference.py 是官方自带的命令行推理脚本:
python cmd_inference.py \
-m OUTPUT_MODEL/G_latest.pth \
-c configs/modified_finetune_speaker.json \
-o output/vits \
-on test \
-l English \
-t "Warning. Nuclear silo detected." \
-s us_eva \
-ls 1
| 参数 | 含义 | 可选值 |
|---|---|---|
-m |
模型权重路径 | 本仓库的 OUTPUT_MODEL/G_latest.pth |
-c |
配置文件路径 | 本仓库的 configs/modified_finetune_speaker.json |
-o |
输出目录 | 例:output/vits |
-t |
要合成的文本 | 任意 |
-s |
说话人名称(不是 ID) | us_eva / su_eva / ff_eva / ep_eva |
-l |
语言 | English / 简体中文 / 日本語 / Mix |
-on |
输出文件名(不含扩展名) | 默认 output |
-ns |
感情变化程度 | 默认 0.667,越大语气起伏越明显 |
-nsw |
音素发音长度 | 默认 0.6 |
-ls |
语速倍率 | 默认 1;**-ls 2 = 语速翻倍**(内部按 1/length_scale 计算) |
4. 语言标记(多语言混读)
-l 选单一语言时,脚本会自动在文本首尾包裹对应标记;
需要同一句混读多种语言时,用 Mix 并在文本里手写标记:
-l Mix -t "[ZH]核弹发射井已就绪。[ZH][EN]Stand by.[EN]"
| 语言 | 标记 |
|---|---|
| 英文 | [EN] ... [EN] |
| 中文 | [ZH] ... [ZH] |
| 日文 | [JA] ... [JA] |
配套网页服务 Web UI
本模型有一个开箱即用的 Gradio 网页端(四阵营下拉选择、语速 0.1~2.0、 Mix 模式自动识别语言、一键保存 wav),代码与文档见:
https://github.com/lightbryond/RedAlert2_Adjutant_TTS
模型评测 Evaluation
评测采用 80 条「官方参考 → 模型生成」配对样本(每个阵营 20 条):从游戏官方短语音(2–8 s,焚风放宽至 ≥1.5 s)中抽取,人工校对转写文本作为参考;再通过本项目 Web UI,以 英文、感情变化 0.667、语素时长随机度 0.85、语速 0.8× 生成对应音频。官方音频与生成音频统一为 22050 Hz / 单声道 / 16 bit PCM。
三项指标与基线
- SECS(说话人相似度 ↑):提取 WavLM 说话人嵌入,L2 归一化后计算生成音频与官方参考的余弦相似度。人类基线 = 同阵营官方音频两两互比(每阵营 190 对),代表官方素材自身的一致性水平。
- WER(内容保真度 ↓):Whisper-large-v3 对生成音频做 ASR 回译,与参考文本同时做文本归一化后按 jiwer 计算。官方 ASR 基线 = 对官方音频跑同一套 ASR 管线,代表 ASR 自身的误差下限。
- UTMOS(自然度 ↑):UTMOSv2 无参考预测,对生成音频与官方音频分别打分,用于观察相对差距。
评测结果
| 阵营 | SECS ↑ 生成 vs 官方 |
SECS 人类基线 |
WER ↓ 生成 |
WER 官方 ASR 基线 |
UTMOS ↑ 生成 |
UTMOS 官方基线 |
|---|---|---|---|---|---|---|
| ep_eva 厄普西隆 | 0.947 | 0.942 | 22.3% | 13.1% | 1.99 | 2.76 |
| ff_eva 焚风 | 0.918 | 0.867 | 3.2% | 3.2% | 1.07 | 1.23 |
| su_eva 苏联 | 0.956 | 0.952 | 18.8% | 14.4% | 1.90 | 2.08 |
| us_eva 盟军 | 0.920 | 0.938 | 18.0% | 9.9% | 2.13 | 2.38 |
| 全部(ALL) | 0.935 | 0.925 | 15.6% | 10.2% | 1.77 | 2.11 |
数值为各阵营 20 条样本的均值。SECS ≥ 0.80 通常可认为音色接近,≥ 0.85 属于良好水平。 WER 呈长尾分布:80 条整体中位数为 0(41 条完全无误),但少数严重样本会显著拉高均值。 工具:SECS = WavLM-base-plus-sv(WavLMForXVector)+ L2 归一化余弦;WER = Whisper-large-v3(faster-whisper,CPU int8)+ jiwer,参考文本与识别结果使用同一套归一化;UTMOS = UTMOSv2 fusion_stage3 fold0(wav2vec2-base + 4×EfficientNetV2-S),5-TTA。
总体结论
- 音色还原是本次微调最大的成功点。 四阵营 SECS 均 ≥ 0.918,整体 0.935 已达到甚至略高于官方音频互比的人类基线(0.925),说明模型稳定学到了各阵营副官的说话人特征,且全部超过 0.85 的良好线。
- 内容保真度整体尚可,错误集中在专有名词。 80 条中 41 条 WER = 0、整体中位数为 0;阵营差异明显(ff 20 条中 17 条全对,ep/us 的错误更普遍)。可复现的错误主要是专有名词发音(Tertiary、Radar、Iron Curtain、Genetic Mutator、Airfield、Chronosphere 等),把均值拉高到 15.6%(官方音频的 ASR 下限为 10.2%)。这类问题可通过发音词典或补充语料针对性解决,而不是整体语言能力不足。
- 自然度是最弱环节。 生成音频 UTMOS 为 1.77,官方基线为 2.11(相对 -16%)。红警游戏语音本身压缩重、时长短,UTMOSv2 对官方音频也只给出 1.2–2.8 分,绝对值不宜与通用 TTS 横向比较;但相对降幅仍说明自然度有提升空间(训练仅 3500 step,评测使用 0.8× 语速也可能压低评分)。
分阵营结论
su_eva(苏联)综合表现最好:SECS 0.956 全场最高且波动最小(标准差 0.020),与人类基线 0.952 基本打平;UTMOS 相对官方仅下降 8.5%,是四阵营中自然度损失最小的;WER 相对基线差距 4.4pp,位列第二。它是唯一没有任何指标垫底的阵营。
其余阵营各有偏科:
- ff_eva(焚风)——内容最好,音色最弱。 WER 3.2% 已压到 ASR 误差下限(20 条中 17 条完全正确);但 SECS 0.918 绝对值最低,且官方素材多为 1.5–2.0 s 短音频、阵营内差异大(人类基线仅 0.867),因此「超过基线」更多说明生成结果接近阵营中心,而非音色更精准。UTMOS 1.07 虽全场最低,但官方 ff 本身也只有 1.23。
- us_eva(盟军)——自然度最高,音色略低于基线。 生成 UTMOS 2.13 为四阵营最高,但它是唯一 SECS 低于自身人类基线的阵营(0.920 vs 0.938),且 WER 相对基线差距 8.1pp,音色还原与咬字都还有欠账。
- ep_eva(厄普西隆)——音色好,内容与自然度最差。 SECS 0.947 接近基线(0.942),但 WER 相对基线差距最大(+9.2pp),UTMOS 从官方的 2.76 掉到 1.99(-28%),是微调后自然度损失最明显的阵营,应优先排查。
评测图表
图 1:SECS 分组条形图,虚线为 0.80 可接受阈值。
图 2:WER 条形图,误差线为 ±1 标准差,菱形为官方音频的 ASR 回译 WER(误差下限)。
图 3:UTMOS 哑铃图,连线长度即生成音频与官方基线的差距。
评测限制:每阵营 20 条、每条仅生成一次;UTMOS 为预测分数而非人工 MOS;官方参考为单条短语音;ff_eva 素材时长偏短。评测音频与训练语料同源(官方游戏语音),未单独校验是否存在重叠,因此 SECS 更应理解为「对同源音色的还原度」,而非对未见说话人的泛化能力。以上结论适合做相对比较,绝对分数不宜与其他模型跨数据集直接对比。
训练数据与限制 Training data & limitations
- 数据来自游戏内语音提取,共 504 条 / 约 14 分钟,四个阵营分布不均 (盟军 138 / 苏联 139 / 厄普西隆 138 / 焚风 90)
- 文本由 Whisper
small转写后人工校对,仍有少量识别误差可能残留 - 训练步数(3500 step)偏少,音质仍有提升空间;长句、生僻词可能含糊
- 训练集与验证集内容相同(数据量过小,上游脚本未做划分), 验证 loss 不能反映泛化能力
适用场景:个人学习、同人创作、游戏 Mod 语音补充 不适用场景:商业用途、真实人物语音冒充、任何违法用途
免责声明 Disclaimer
- 音色来源于《命令与征服:红色警戒 2》及其模组《心灵终结(Mental Omega)》, 版权归原作与模组作者所有
- 本模型仅供技术学习与个人研究使用,禁止商用
- 由此产生的一切版权纠纷与本仓库作者无关,如权利方有异议请联系删除
致谢 Credits
- 框架:plachtaa/VITS-fast-fine-tuning
- 底模:CJE /
uma_trilingual三语底模(22050 Hz) - 原始 VITS:jaywalnut310/vits
- 参考仓库:kingsznhone/Red-Alert-2-Full-Voice-Model
- 语音素材:Mental Omega 模组制作组


