跳到内容
mvp OFFLINE MODEL ADAPTATION / lora-tts-studio

lora-tts-studio · model adaptation workstation

自用视觉与声音身份资产管线 — 全开源底模 (SDXL / Flux 等) LoRA 训练 + TTS 声音克隆端到端编排

在体系里属于 独立分类 · Offline Model Adaptation & Identity Assets (离线模型适配与身份资产) · Evie 的离线资产生产管线, 给 Evie Runtime 提供身份锚 (视觉一致性) 与声音资产, 不在实时调用链上 · 上游接 Civitai 素材 + Hugging Face 全开源底模 + pod GPU 远端训练 + TTS 声音克隆素材 · 下游给 Evie Runtime · Interaction (talking-with 生图所用 LoRA + 自用音色) 与 Cognition (evie-agent persona LoRA) 提供资产 (见 架构图) · 最近验证: 2026-06

01 / demo 展示

demo · 截图 · 架构片段

4 张 desktop app surface (train / lab / queue / sort) 静态展示. 架构示意见 architecture/p4.svg.

02 / 在系统里的位置

为什么这一层需要它

整个体系上层 — 不论是 Interaction 层的 PWA 生图、虚拟人的自用音色, 还是 Cognition 层的虚拟人 persona 视觉锚 — 都依赖一份"自己的"基本模型. 现成 ckpt 拼凑可以走到 demo, 但走不到一个有人格、有视觉一致性、有专属声音的虚拟人. 训练 (视觉 LoRA + TTS 声音克隆) 就是这条路上不可外包的地基.

lora-tts-studio 在体系里是训练场地 — Civitai 抓素材进、Hugging Face 全开源底模 (SDXL / Flux 等) 进、TTS 声音克隆素材进、pod GPU 跑、训完的 LoRA 与自用音色回流到 Evie Runtime.

没有它, 体系会陷入 "永远拼 OSS ckpt" 的状态, 虚拟人就停留在通用脸通用风格, 走不到 persona 持久化.

03 / 想解决什么

vision-aligned 问题陈述

全开源底模 (SDXL / Flux 等) 的 LoRA 训练与 TTS 声音克隆的 OSS 工具链是分散的 — Civitai 抓素材是一套, kohya 训 LoRA 是一套, 声音克隆又是一套, ComfyUI 测再是一套. 桌面端没有把它们捏在一起的人. 每开一炉训练都要手工切环境、改 config、登 pod、看日志, 中断了还要从头判断进度.

如果虚拟人的视觉身份与专属声音要做到可控、可迭代、可复现, 训练就不能是手工活. 必须有一个 desktop app + LLM confirm-gate 工具循环, 让训练这件事可以无人值守 + 可审计 + 出问题能回放.

lora-tts-studio 想解决的不是 "训得更快", 而是 "训这件事 (无论是视觉 LoRA 还是声音克隆) 不再依赖单个人坐在电脑前". 这条路通了, 上层 (PWA / Cognition persona) 才有持续供给.

04 / 现状 + 已知 limit

现在做到哪了

当前是 mvp 状态 — 桌面端可以走通一次完整训练, 但故障自愈和参数自适应还没做完.

A已落地

3 层架构 (frontend pywebview frameless + Mica 半透明 · backend FastAPI · pod 远端训练 paramiko SSH); 7 个 backend module (server / agent / pipeline_runner / pod_trainer / hf_transfer / param_engine / comfyui_manager); 5 个 UI surface (train / lab / queue / tts / sort); SSE 实时日志推送; Win32 Job Object 桌面关窗自动清子进程, 不留孤儿; frontend ~3,200 LOC.

B探索中

训练参数自动推荐 (LLM-driven config — 让模型根据素材特征拟一份 hyperparameter, 而不是人去查文档); queue 故障自愈 (pod 掉线 / OOM 后自动重排).

C待解决

失败重试还是人工 — 跑断了要人手动判断重启还是放弃; 跨 base model 的 hyperparameter 自适应没做 — SDXL 一套参数, Flux 一套, 切换全靠记忆; 训出的 LoRA 还没闭环回流到 PWA 生图的自动测试.

05 / 下一里程碑

接下来推什么

01

pod 端故障自愈 — pod 掉线 / OOM / 网络抖动后, queue 自动重排不需要人介入.

02

LLM-driven config — 素材进来后, agent 拟一份 hyperparameter 候选, 用户在 confirm-gate 拍板, 不再手工查文档.

03

multi-base 适配 — SDXL 与 Flux 的 hyperparameter 差异内置成 profile, 切 base model 不靠记忆.

04

训出第一个真实场景化 LoRA 回流到 PWA 生图, 闭环 Offline Model Adaptation → Evie Runtime · Interaction 数据流.

05

训完自动出对照评估 (baseline ckpt vs trained LoRA), 不再靠肉眼看 5 张图判断收没收敛.

06 / 迭代日志

版本演进 · 问题驱动

以下是训练管线从单机参数手调到远端 pod 双环境 + 远端文件中转通道稳定的关键迭代节点. 每条记录的结构: 遇到什么问题 → 用什么思路解决. 不列全部版本, 只列有工程决策意义的节点.

2026-06-05

精细签名 + 人工复核. 问题: 多维自动评分高分中仍混遮眼 / 侧脸 / 糊脸, 数据集原 label 也脏. 解决: 自动评分 → top 候选 → 人工复核留 clean exemplars, 标量向量做真值, 弃数据集原 label.

2026-06-05

多维度数据筛选. 问题: 单指标 (清晰度) 选片抓不住构图 / 表情 / 多样性, 高分中 80% 假阳. 解决: 分割模型算遮挡度 + 哈希去重 + 角度软闸门 + 感知去重, 实时动态加权, 低内存机器限并发防爆.

2026-06-04

pod 基础环境统一. 问题: 裸镜像缺常用库, 多个 bootstrap 脚本各自漂移. 解决: 统一基线脚本自动补齐依赖, 频道动态拉版本, 兼容多代 pod.

2026-06-02

TTS 训练环境隔离. 问题: TTS 框架要求的深度学习库版本与图像训练冲突, 端口被默认服务占用. 解决: 独立虚拟环境不与主环境共享, 端口偏移规避冲突, 整套环境全装本地盘.

2026-06-02

LoRA dim 维度实证回退. 问题: 教科书路线认为维度越高越能装细节, 调到 dim 64. 解决: 同 seed 同 prompt 横评 10 张, dim 32 full 反比 dim 64 更接近本人, 高容量在小数据集学噪音. 回退 dim ≤ 32, 控制变量横评成定规.

2026-06-01

训完自动验图面板. 问题: 训完只能手动拉权重到本地跑验图, 反馈链路过长. 解决: 加 API 端点直接驱动远端验图, 出图走中转通道, 前端骨架加载体验.

2026-06-01

远端文件中转通道替换 SFTP. 问题: 原直传协议单线程压垮带宽 (慢 14 倍), 打标工具装入主环境污染深度学习库, 根盘 17 GB 日志爆满. 解决: 数据 / 模型 / 日志全走专用中转通道, 打标工具隔离虚拟环境, 缓存目录导流避免根盘炸.

2026-05-31

训练与验图共驻一台 pod. 问题: 训练框架与验图框架的深度学习库版本冲突, GPU 显存争用. 解决: 隔离虚拟环境配独立站点包, 模型路径统一指向同一目录, 多层 smoke 通过.

2026-05-31

多基模超参 profile. 问题: 不同底模 (SDXL / Flux / RealVisXL 等) 最优学习率、噪声、SNR 系数差异大, 手切换易错. 解决: 内置写实模式开关一键联动一组超参, 真机显存占用稳定不溢出.

以上节点涉及训练管线稳定性、超参控制策略、数据清洗体系与远端环境一致性. 完整迭代远不止于此.

体系 / 模块