RVC-Boss / GPT-SoVITS

1 min voice data can also be used to train a good TTS model! (few shot voice cloning)
MIT License
36.23k stars 4.14k forks source link

SoVITS训练失败 #1099

Closed angryjinyan11 closed 6 months ago

angryjinyan11 commented 6 months ago

本来以为可能是我显卡太差了但我在colab上也能复现一样的问题(colab没仔细看显卡配置),报错合集也看过了,没看到在训练里有类似的问题

一键三连分开跑了好几遍,都是成功的 image

跑SoVITS训练的时候,报了AssertionError(报错合集里的AssertionError报在assert os.path.exists(self.path2),我报的是在assert len(audiopaths_sid_text_new) > 1 # 至少能凑够batch size,这里todoimage

加了几行log,看到是在读path: logs/xxx/2-name2text.txt的时候报错,2-name2text.txt长这样 image

所以问题是Pretrained BERT model 用的是GPT_SoVITS/pretrained_models/chinese-roberta-wwm-ext-large所以对其他语种的数据集预处理不了?如果是这个问题的话,教程就有些误导性了,fast whisper可以标注99种语言,是目前最好的英语和日语识别,模型尺寸选large V3,语种选auto自动就好了。

啊如果本身是没有对其他语种的直接支持的那是我理解错了,还是想确认一下是不是这个问题

SapphireLab commented 6 months ago

看起来是构造数据时全被跳过了,原因应该是标注文件用了GSV无法使用的语言 (目前仅中日英有对应音素和文本预处理), 因此在一键三连第一步时就没能获得对应的音素序列, 没有数据也就无法训练. Faster Whisper 是支持其他语言的识别,但 GSV 目前不支持中日英以外其他语言的训练推理.

angryjinyan11 commented 6 months ago

明白了,这样的话建议在教程提一句仅支持中日英的文本处理,或者在读slicer_opt.list的时候发现其他语种的时候直接抛出更直观的错误 image 其他语种(我处理的是德语)直到打标都没有问题,fast whisper确实可以标注德语,现在的AssertionError有点让人费解

SapphireLab commented 6 months ago

是个好建议, 做了一点修改.

angryjinyan11 commented 6 months ago

关于教程方面误导性方面我是想说这个部分https://www.yuque.com/baicaigongchang1145haoyuangong/ib3g1e/xyyqrfwiu3e2bgyk#TMHGp 说得更明白一点其他语种打标可以但训练不支持比较好

RVC-Boss commented 6 months ago

https://github.com/RVC-Boss/GPT-SoVITS?tab=readme-ov-file#dataset-format 这里写了目前项目支持的语言