GPT-SoVITS icon indicating copy to clipboard operation
GPT-SoVITS copied to clipboard

修改拼音成wei2一直读不对,但是改成其他读音可以读对

Open ueiyang2 opened this issue 1 year ago • 2 comments

我在代码中增加了一个自定义读音的功能,可以修改最终的拼音,主要的逻辑是在g2pw.py中修改: image 这个逻辑是没有问题的,因为我验证过可以修改成功。但是对于下面这句话: “佩通坦是泰国前总理他信的小女儿。她在选举前一天被为泰党主导的执政联盟,一致提名为总理候选人” 其中为泰党的"为"会读成"wei4",我改成"wei2",仍然是读"wei4",改成"wei1","wei3"都可以读出来,但"wei2"就是不可以。打印phones_list的结果,已经是wei2了: image 请问这个可能是什么原因呢?谢谢!

ueiyang2 avatar Aug 19 '24 07:08 ueiyang2

应该是被底模带跑了

KamioRinn avatar Aug 19 '24 08:08 KamioRinn

这太容易判断原因了:

(1)你把“为”,换成其它同音字比如: 唯/维/围。(华为/华唯/维持/围困)看能不能正确发音"wei2"。 (2)如果(唯/维/围)始终读成“wei4”,就说明是底模问题。 否则,就是某处的代码有BUG,哈哈~ @ueiyang2

改成其他同音字是可以的

ueiyang2 avatar Aug 20 '24 06:08 ueiyang2

我在代码中增加了一个自定义读音的功能,可以修改最终的拼音,主要的逻辑是在g2pw.py中修改: 图像 这个逻辑是没有问题的,因为我验证过可以修改成功。但是对于下面这句话: “佩通坦是泰国前总理他信的小女儿。她在选举前一天被为泰党主导的执政联盟,一致提名为总理候选人” 其中为泰党的"为"会读成"wei4",我改成"wei2",仍然是读"wei4",改成"wei1","wei3"都可以读出来,但"wei2"就是不可以。打印phones_list的结果,已经是wei2了: 图像 请问这个可能是什么原因呢?谢谢!

大佬,只用添加这个段代码就可以了吗?这段代码是放在哪个地方,后面两个参数怎么传入,并且text怎么传入

hjj-lmx avatar Nov 20 '24 13:11 hjj-lmx

你可以看下chinese2.py这个文件中_g2p这个函数的逻辑,拼音是在那里处理的,这个函数调用了correct_pronunciation,会根据多音字词典纠正读音

大佬,只用添加这个段代码就可以了吗?这段代码是放在哪个地方,后面两个参数怎么传入,并且text怎么传入

ueiyang2 avatar Nov 21 '24 01:11 ueiyang2

二楼正解,也可以试试其他不同的GPT和sovits预训练模型

RVC-Boss avatar Jun 05 '25 09:06 RVC-Boss