From 1c5849fd9622af22f3d4e0c172b791ac410243cc Mon Sep 17 00:00:00 2001 From: XucroYuri Date: Tue, 7 Jul 2026 13:13:38 +0800 Subject: [PATCH] =?UTF-8?q?style(webui):=20=E6=A8=A1=E5=9E=8B=E5=90=8D?= =?UTF-8?q?=E7=A7=BB=E5=85=A5=E6=A8=A1=E5=9E=8B=E5=88=87=E6=8D=A2=E6=9D=BF?= =?UTF-8?q?=E5=9D=97(GPT/SoVITS=E4=B8=8A=E6=96=B9),=20=E8=AE=AD=E7=BB=83?= =?UTF-8?q?=E6=A0=B7=E6=9C=AC=E7=8B=AC=E7=AB=8B=E6=9D=BF=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 按操作层级重组: 模型名(实验名)是 GPT/SoVITS 的上游选择(选角色->自动匹配权重), 逻辑上应与其操作的 GPT/SoVITS 下拉同板块且在其上方。 布局调整: - 「模型名(实验名)」+「刷新模型列表」移入「模型切换」板块顶部行 - 「GPT模型列表」「SoVITS模型列表」「刷新模型路径」保留在下方行 - 原「训练角色选择」板块改名为「训练样本选择」, 只剩训练样本下拉 (模型名移走后这里不再需要「角色」二字) 新结构: 模型切换: [模型名 | 刷新模型列表] / [GPT | SoVITS | 刷新模型路径] 训练样本选择: [训练样本音频(满宽)] 参考信息: [参考音频 | 参考文本+情绪/括注] 事件绑定不变(组件变量名未改), 端到端验证通过: 选模型名->40样本+GPT(e10)+SoVITS(e16); 切样本->参考音频+文本+情绪自动填入。 --- GPT_SoVITS/inference_webui.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/GPT_SoVITS/inference_webui.py b/GPT_SoVITS/inference_webui.py index af325d0c..8991a3fb 100644 --- a/GPT_SoVITS/inference_webui.py +++ b/GPT_SoVITS/inference_webui.py @@ -1446,6 +1446,16 @@ with gr.Blocks(title="GPT-SoVITS WebUI", analytics_enabled=False, js=js, css=css ) with gr.Group(): gr.Markdown(html_center(i18n("模型切换"), "h3")) + # 模型名(实验名) 是 GPT/SoVITS 的上游选择: 选角色 -> 自动匹配权重 + with gr.Row(): + model_name_dropdown = gr.Dropdown( + label=i18n("模型名(训练实验名)"), + choices=[], + value="", + interactive=True, + scale=21, + ) + refresh_models_btn = gr.Button(i18n("刷新模型列表"), variant="primary", scale=7) with gr.Row(): GPT_dropdown = gr.Dropdown( label=i18n("GPT模型列表"), @@ -1463,18 +1473,9 @@ with gr.Blocks(title="GPT-SoVITS WebUI", analytics_enabled=False, js=js, css=css ) refresh_button = gr.Button(i18n("刷新模型路径"), variant="primary", scale=14) refresh_button.click(fn=change_choices, inputs=[], outputs=[SoVITS_dropdown, GPT_dropdown]) - # ===== 新增:训练角色选择区域(独立 Group,按操作流程纵向排列) ===== + # ===== 训练样本选择(选中即自动引用为参考音频) ===== with gr.Group(): - gr.Markdown(html_center(i18n("训练角色选择(从训练数据中快速选择)"), "h3")) - with gr.Row(): - model_name_dropdown = gr.Dropdown( - label=i18n("模型名(训练实验名)"), - choices=[], - value="", - interactive=True, - scale=21, - ) - refresh_models_btn = gr.Button(i18n("刷新模型列表"), variant="primary", scale=7) + gr.Markdown(html_center(i18n("训练样本选择"), "h3")) ref_sample_dropdown = gr.Dropdown( label=i18n("训练样本音频(选中即自动引用为参考音频)"), choices=[],