Skip to content

docs(tts): 补声音克隆内容侧噪声地板判据,勘误 emo_bias 立论并落档二轮选段勘探; - #1118

Merged
ThreeFish-AI merged 2 commits into
feature/1.x.xfrom
ThreeFish-AI/voice-clone-dynamic-tone
Sep 2, 2026
Merged

docs(tts): 补声音克隆内容侧噪声地板判据,勘误 emo_bias 立论并落档二轮选段勘探;#1118
ThreeFish-AI merged 2 commits into
feature/1.x.xfrom
ThreeFish-AI/voice-clone-dynamic-tone

Conversation

@ThreeFish-AI

Copy link
Copy Markdown
Owner

背景

核心变更

  • emo_bias 立论勘误tts.py sunny-pure 注释 + ADVANCED §3.2 告警块):施加 bias 的 normalize_emo_vec(上游 infer_v2_5.py:488)全仓唯一调用点是 webui.py:665infer() 从不调它 ⇒ 本管线名义权重即实际权重Feature/1.0.0 #10 原注以「surprised 只兑付 69%、calm 56%」论证砍配料维度,是把 WebUI 语义套到了本管线调用路径上,理由作废;反向证据:bias 表里被下调的恰是这两维,说明上游认为其在名义权重下偏强。顺带记入 emo_num=[3,17,2,8,4,5,10,24]——happy 仅 3 个原型(明快度天花板),surprised 有 10 个。
  • 新增 ADVANCED §6.6 内容侧噪声地板:固定 --seed 后音频逐字节可复现(热节流污染耗时不污染采样轨迹)⇒ 内容 A/B 免 75 s 冷却;但换一条 take 的 |ΔIQR_rel| 中位达 10.4% ⇒ 韵律类参数最小可归因效应量 ≈ 21%。附三条判据设计教训:主指标须无量纲(IQR_rel);身份护栏用中位而非逐句最大值(生产档自身有单句 186.9 Hz);n=7 下看符号一致性(7/7 → p=0.008)而非只看中位。
  • 新增 VOICE-CLONING §3.3b 第二轮选段勘探:把从未勘探的 me-full-*(663 s)纳入同一把尺子,另立新表(旧表质心列是路线图 fix(CI): 修复 GitHub Actions 单元测试失败与 pnpm 迁移 (Vibe Kanban) #13 改「限带质心」前的尺子,混排即错)。me-1 @106S 的 IQR_rel 较成片在用段 +18%、静音占比 +0.08;新增两个「样本起伏高但克隆起伏反而低」的反例;指出小样列自带 ±10% take 噪声、行间 <10% 差异不可解读。顺带修正 4 处过期档数(写死「7 档」、实际 9 档)——数量事实源在代码,文档不再复制该数字。

风险与回滚

  • 主要风险:极低——tts.py 改动为纯注释(vec/alpha/df 逐行核对无变动,不进缓存摘要);文档改动不影响任何执行路径。
  • 回滚方式:git revert 单提交即可。

验证证据

  • 单元测试:pipeline/tests/ 全量 261 通过(含缓存黄金哈希 test_digest.pytest_production_presets_untouched——二者绿即证明存量预设与缓存零失效)。
  • 集成测试:uv run 后子项目卫生测试抓到过我误留的 uv.lock 并已清除(该测试自身即验证)。
  • E2E/Workflow:本轮全部合成/测量走 tts_sample.py 单句路径(与成片同路径),未触碰任何剧集工程;git diff 确认零 episodes/ 改动。
  • 覆盖率/关键截图:五臂配对 A/B(7 句 × A/Ax/B/C/D,seed 4242)原始读数已记入 §3.3b 与 §6.6;试听产物按生物特征纪律留在 gitignore 的 .temp/

影响范围

  • 前端:无。
  • 后端:无(注释级)。
  • GitHub Actions / 文档:VOICE-CLONING.md、INDEXTTS-2.5-ADVANCED.md 两份运维手册更新。

Next Best Action

  • 用户盲听 .temp/voice-samples/blind/(7 句 × 2 档)择优后决定是否以「新增候选预设 + refs.toml 追加 me-1 @106s 样本条目」落地抑扬顿挫备选档——客观结论为「+8.6% IQR_rel、7/7 方向一致、但幅度贴噪声地板(门为 20.9%),且三个候选均超 +4% 时长红线(顿挫需以时长为代价),最终取舍须由人耳裁决」。

🤖 Generated with Claude Code

为「抑扬顿挫」备选音色做选段与向量 A/B 时核出三项与定档决策无关、但会误导后续工作的
问题,逐项落档(纯注释与文档,未改任何预设数值 ⇒ 已上线 8 集缓存零影响)。

1. emo_bias 立论勘误(tts.py sunny-pure 注释 + ADVANCED §3.2 告警块)
   施加 bias 的 normalize_emo_vec(infer_v2_5.py:488)全仓唯一调用点是 webui.py:665;
   infer() 内对 emo_vector 的唯一变换是 :605-607 的 int(x*alpha*10000)/10000,无 bias
   相乘。故本管线名义权重即实际权重。sunny-pure(路线图 #10)原注以「surprised 只兑付
   69%、calm 56%」论证「配料维度不划算」,把 WebUI 语义套到了本管线的调用路径上,该
   理由作废,本档退回纯 alpha 语义论证。反向证据:bias 表里被下调的恰是 surprised/calm,
   说明上游认为二者在名义权重下偏强。另记 emo_num=[3,17,2,8,4,5,10,24]——happy 仅 3 个
   原型(明快度天花板,加权重加不出来),surprised 有 10 个。

2. 新增 ADVANCED §6.6:内容侧噪声地板与三条判据设计教训
   §6.4–6.5 只解决了耗时侧可测量性,内容侧一直缺地板值。实测固定 seed 后音频逐字节
   可复现(热节流污染耗时不污染采样轨迹)⇒ 内容 A/B 免 75s 冷却,一轮 35 次合成从数
   小时压到约 18 分钟;但换一条 take 的 |ΔIQR_rel| 中位达 10.4%,故韵律类参数的最小
   可归因效应量约 21%。配套三条教训:主指标须无量纲(IQR_rel,否则「整体抬高」会假装
   成「起伏变大」);身份护栏用中位而非逐句最大值(生产档自己就有单句冲到 186.9 Hz);
   n=7 下看符号一致性而非只看中位。

3. 新增 VOICE-CLONING §3.3b:第二轮选段勘探(含从未勘探的 me-full-*,663 s)
   另立新表而不追加旧表——旧表质心列是路线图 #13 改「限带质心」前的尺子,混排即错。
   me-1 @106S 的 IQR_rel 较成片在用段高 18%、静音占比高 0.08;新增两个「样本起伏高但
   克隆起伏反而低」的反例,再次确认唯一有效判据是纯克隆小样;并指出旧表小样列自带约
   ±10% take 噪声,行间小于 10% 的差异不可解读。
   顺带修正 4 处过期档数(写死的「7 档」,实际已 9 档)——数量的事实源在代码,文档改为
   不复制该数字。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
@ThreeFish-AI ThreeFish-AI changed the title docs(tts): 声音克隆判据补内容侧噪声地板,勘误 emo_bias 立论并落档二轮选段勘探; docs(tts): 补声音克隆内容侧噪声地板判据,勘误 emo_bias 立论并落档二轮选段勘探; Sep 2, 2026
同步样本命令、bias 语义、噪声阈值、章节编号与统计说明,避免误用并保持运行时行为不变。

🤖 Generated with [Claude Code](https://github.com/claude), [CodeX](https://openai.com), [Gemini](https://github.com/apps/gemini-code-assist)
Co-Authored-By: Aurelius Huang<threefish.ai@gmail.com>
@ThreeFish-AI
ThreeFish-AI merged commit fffc634 into feature/1.x.x Sep 2, 2026
1 check passed
@ThreeFish-AI
ThreeFish-AI deleted the ThreeFish-AI/voice-clone-dynamic-tone branch September 2, 2026 06:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant