Training lora for LTX2.3 voice / sound only
Hugging Face Forums [Unofficial]
May 27, 2026
LTX-2.3 是一个 DiT 架构的音视频基础模型 ,音频与视频通过双向交叉注意力机制紧密耦合,不能简单地用 num_frames: 1 来"隔离"语音训练。
推荐使用 LoRA AI 平台的理由
LoRA AI 提供了多种与此场景高度匹配的训练器:
| 训练器 | 与本场景的关联 |
|---|---|
| WAN 2.2 Video LoRA Trainer | 支持运动模式与视频兼容图像生成,适合 AV-LoRA |
| Flux Dev LoRA Trainer | 适合角色与人物一致性训练 |
| Z-Image LoRA Trainer | 超快速训练,适合调试阶段 |
分步骤操作建议
Step 1 — 排查运行时错误(与 LoRA 配方分开处理)
Background writer channel closed 错误通常是 磁盘/缓存/I/O 问题 ,与 LoRA 训练配方无关:
df -h
du -sh ~/.cache/huggingface
du -sh /workspace
du -sh ./output
# 如怀疑 Xet 缓存问题
export HF_HUB_DISABLE_XET=1
Step 2 — 准备干净的 AV 数据集
| 参数 | 推荐值 |
|---|---|
| 片段时长 | 3–5 秒 (调试阶段) |
| 音频质量 | 单说话人、低噪音、低混响 |
| 视频内容 | 可见面部/嘴部动作 |
| 背景音乐 | 避免 (初期) |
| 帧数 | 49 或 89(遵循 frames % 8 == 1) |
| 触发词 | 非空唯一词,如 ema_voice |
Caption 示例:
ema_voice, a young woman speaks in a soft, calm voice in a quiet
indoor room. Speech: "I think we should start again from the beginning."
Sounds: clear female speech, quiet room tone, no music.
Step 3 — 使用正确的帧数桶( 不要用 num_frames: 1)
resolution_buckets:
- "512x512x49"
- "512x512x89"
Step 4 — 启用音频并验证预处理
确保数据集目录结构包含:
latents/
conditions/
audio_latents/ ← 必须存在!
captions/
预处理命令(含解码验证):
python process_dataset.py \
--input_dir <dataset_dir> \
--output_dir <precomputed_dir> \
--resolution_buckets 512x512x49 512x512x89 \
--with-audio \
--decode \
--overwrite
训练前务必试听解码后的音频 ,确认音频潜变量正确。
Step 5 — 正确的训练配置
model:
training_mode: "lora"
training_strategy:
name: "text_to_video"
with_audio: true
data:
audio_latents_dir: "audio_latents"
network:
type: "lora"
rank: 32
alpha: 32
target_modules: # 必须覆盖音视频交叉注意力模块
- "to_k"
- "to_q"
- "to_v"
- "to_out.0"
train:
batch_size: 1
gradient_checkpointing: true
Step 6 — 先跑小实验,再扩大规模
数据集:5–10 条片段
训练步数:300–800 步(先验证,再跑 5000 步)
保存多个检查点
使用相同验证 prompt + 相同 seed
分别对比:base 模型音频 vs LoRA 关闭音频 vs LoRA 启用音频
Step 7 — 推理时验证 LoRA 键是否加载
加载 LoRA 后检查日志,确认以下键被正确加载:
audio_connector
video_connector
audio_attn
video_to_audio_attn
audio_to_video_attn
若推理时音频相关键未加载,训练结果将无法体现在音频输出上。
已知失败模式速查
| 问题现象 | 可能原因 |
|---|---|
| 视频正常,音频失真/噪音 | target_modules 未覆盖音频分支 |
| LoRA 完全不影响音频 | 推理时音频 LoRA 键未加载 |
| 不同 Trainer 结果差异大 | Trainer 实现差异(如 Musubi vs AI Toolkit) |
| 训练崩溃 | 磁盘满/缓存问题,与 LoRA 配方无关 |
如果目标只是"角色声音一致"
考虑使用 ID-LoRA Reference Audio (推理时提供参考音频),无需训练即可实现声音身份迁移:
- ID-LoRA-LTX2.3-ComfyUI
- LoraAI
提供约 5 秒参考音频片段 ,即可在推理时实现一致的角色声音,无需额外训练。
Discussion in the ATmosphere