12 Commits

Author SHA1 Message Date
XucroYuri
e1720e7e5a feat: 兼容 proplus-hc-dev 训练数据 + 新增「情绪/括注」字段
兼容 proplus-hc-dev 分支基于 6 列 .list 训练的模型,并按主分支自身流程
增加 emotion 字段(标注/推理 UI 单输入框「情绪/括注」,存 emotion 列,
保留 remark 列以兼容 proplus 6 列结构)。emotion/remark 不参与训练。

核心兼容性修复(消除 3 处硬编码拒绝 proplus 的 6 列 .list):
- 新增 tools/list_metadata.py: 6 列 .list 解析/格式化器 (parse/format_list_line)
- 1-get-text.py:129  line.split("|") 严格 4 列解包 -> parse_list_line
                   (proplus 同款修复,只取训练所需前 4 列,emotion/remark 静默忽略)
- subfix_webui b_load_list: 仅接受 len==4 -> 改用 parse_list_line (>=4 列)
- subfix_webui b_save_list: 写 4 列 -> 写 6 列 (保留 emotion/remark,向前向后兼容)

标注 UI (tools/subfix_webui.py):
- 每条音频新增「情绪/括注」Text 输入框 (g_emotion_list)
- b_change_index/reload_data/b_submit_change 贯通 emotion 读写
- 8 个分页事件输出列表统一追加 *g_emotion_list

推理 WebUI (inference_webui.py):
- _read_emotion_map_for_webui: 读 output/asr_opt/<exp>/*.list 的 emotion 列
- 训练样本下拉标签附加【emotion】(有则显示)
- 选中样本时同步刷新「情绪/括注」只读文本框; 应用样本一并填入
- 无 emotion 数据则文本框留空 (符合「无数据不显示」)

API (api_v2.py):
- GET /models/{name}/samples 响应增加 emotion 字段 (来自同源 .list)

向后兼容: 主分支原生 4 列 .list 全程正常; 训练 pipeline 不感知 emotion。
list_metadata/parse/emotion/round-trip 单元自测通过; py_compile 全通过。
2026-07-07 11:44:02 +08:00
XucroYuri
7be8a59e52 feat: add training model/sample browsing API + WebUI, relax ref audio duration
为 TTS More 工作台增加远程获取训练数据的能力,并解除参考音频时长的硬编码阻断。

API (api_v2.py, 端口 9880):
- GET  /models                       列出训练角色(exp_name)及匹配权重
- GET  /models/{name}/samples        列出训练样本(音频+参考文本), 含目录穿越校验
- GET  /status                       当前权重/版本/设备状态
- POST /upload_ref                   上传参考音频, 文件名白名单清洗

Gradio WebUI (inference_webui.py):
- 新增「训练角色选择」区域: 模型名下拉/刷新/自动匹配权重/样本下拉/预览/应用样本
- on_auto_select_weights 采用稳健写法: 仅返回 Dropdown 值, 由已有 .change
  绑定触发切换 (change_sovits_weights 是生成器, 手动消费会丢失组件更新)

时长硬编码解除 (3~10s 不再阻断):
- TTS_infer_pack/TTS.py:815       raise OSError -> print [Warning]
- inference_webui.py:853          raise OSError -> gr.Warning (建议性文案)
- inference_webui.py:1367         标签改为「推荐3~10秒」

依赖: requirements.txt 追加 python-multipart (/upload_ref 必需)

向后兼容: 现有 /tts /set_gpt_weights /set_sovits_weights 签名与返回不变,
TTS 推理 pipeline 本体逻辑未改。所有改动 py_compile 通过。
2026-07-07 11:32:14 +08:00
ChasonJiang
abe984395c
对齐gpt topk默认采样参数 (#2696) 2025-12-19 16:05:36 +08:00
ChasonJiang
6fb441f65e
更友好的流模式选项 (#2678) 2025-11-28 22:13:48 +08:00
ChasonJiang
92ab59c553
更细粒度的流式推理模式 (#2671)
* 更好的流式推理模式

* 清理无用代码

* modified:   GPT_SoVITS/AR/models/t2s_model.py
	modified:   GPT_SoVITS/TTS_infer_pack/TTS.py
	modified:   GPT_SoVITS/module/models.py

* modified:   GPT_SoVITS/TTS_infer_pack/TTS.py

* modified:   .gitignore
	modified:   GPT_SoVITS/AR/models/t2s_model.py
	modified:   GPT_SoVITS/TTS_infer_pack/TTS.py
	modified:   GPT_SoVITS/module/models.py

* modified:   GPT_SoVITS/AR/models/t2s_model.py
	modified:   GPT_SoVITS/TTS_infer_pack/TTS.py
	modified:   GPT_SoVITS/module/models.py
	modified:   api_v2.py

* modified:   GPT_SoVITS/TTS_infer_pack/TTS.py

* 更正拼写错误

* 支持固定chunk长度的流式推理,优化sola算法

* 修复api_v2的ogg格式传输问题
2025-11-28 21:12:41 +08:00
Ella Zhang
4987df5a71
fixed syntax errors in api_v2.py (#2473) 2025-06-19 15:34:11 +08:00
XXXXRT666
53cac93589
Refactor: Format Code with Ruff and Update Deprecated G2PW Link (#2255)
* ruff check --fix

* ruff format --line-length 120 --target-version py39

* Change the link for G2PW Model

* update pytorch version and colab
2025-04-07 16:42:47 +08:00
ChasonJiang
7394dc7b0c
为api_v2和inference_webui_fast适配V3版本 (#2188)
* modified:   GPT_SoVITS/TTS_infer_pack/TTS.py
	modified:   GPT_SoVITS/TTS_infer_pack/TextPreprocessor.py
	modified:   GPT_SoVITS/inference_webui_fast.py

* 适配V3版本

* api_v2.py和inference_webui_fast.py的v3适配

* 修改了个远古bug,增加了更友好的提示信息

* 优化webui

* 修改为正确的path

* 修复v3 lora模型的载入问题

* 修复读取tts_infer.yaml文件时遇到的编码不匹配的问题
2025-03-26 14:34:51 +08:00
YSC-hain
5d126f98b2
修复 无法监听双栈 (#1621)
在调用时使用 -a None 参数,可以让 api 监听双栈
2024-10-18 11:40:44 +08:00
ChasonJiang
f35f6e9b5e
优化tts_config代码逻辑 (#1538)
* 优化tts_config

* fix

* 优化报错提示

* 优化报错提示
2024-08-29 00:33:07 +08:00
ChasonJiang
2a9512a63e
修改文档 (#1521) 2024-08-23 17:43:40 +08:00
ChasonJiang
52c50c6c81
All in one! 合并main分支和fast_inference_分支 (#1490)
* 合并main分支和fast_inference_分支

* 修复一些bug
2024-08-20 22:19:04 +08:00