Spaces:
Running
on
Zero
Running
on
Zero
Update inference_webui.py
Browse files- inference_webui.py +13 -0
inference_webui.py
CHANGED
|
@@ -253,6 +253,7 @@ def get_first(text):
|
|
| 253 |
from text import chinese
|
| 254 |
def get_phones_and_bert(text,language,version):
|
| 255 |
if language in {"en", "all_zh", "all_ja", "all_ko", "all_yue"}:
|
|
|
|
| 256 |
language = language.replace("all_","")
|
| 257 |
if language == "en":
|
| 258 |
LangSegment.setfilters(["en"])
|
|
@@ -263,27 +264,39 @@ def get_phones_and_bert(text,language,version):
|
|
| 263 |
while " " in formattext:
|
| 264 |
formattext = formattext.replace(" ", " ")
|
| 265 |
if language == "zh":
|
|
|
|
| 266 |
if re.search(r'[A-Za-z]', formattext):
|
|
|
|
| 267 |
formattext = re.sub(r'[a-z]', lambda x: x.group(0).upper(), formattext)
|
| 268 |
formattext = chinese.mix_text_normalize(formattext)
|
|
|
|
| 269 |
return get_phones_and_bert(formattext,"zh",version)
|
| 270 |
else:
|
|
|
|
| 271 |
phones, word2ph, norm_text = clean_text_inf(formattext, language, version)
|
|
|
|
| 272 |
bert = get_bert_feature(norm_text, word2ph).to(device)
|
|
|
|
| 273 |
elif language == "yue" and re.search(r'[A-Za-z]', formattext):
|
| 274 |
formattext = re.sub(r'[a-z]', lambda x: x.group(0).upper(), formattext)
|
| 275 |
formattext = chinese.mix_text_normalize(formattext)
|
|
|
|
| 276 |
return get_phones_and_bert(formattext,"yue",version)
|
| 277 |
else:
|
|
|
|
| 278 |
phones, word2ph, norm_text = clean_text_inf(formattext, language, version)
|
|
|
|
| 279 |
bert = torch.zeros(
|
| 280 |
(1024, len(phones)),
|
| 281 |
dtype=torch.float16 if is_half == True else torch.float32,
|
| 282 |
).to(device)
|
|
|
|
| 283 |
elif language in {"zh", "ja", "ko", "yue", "auto", "auto_yue"}:
|
| 284 |
textlist=[]
|
| 285 |
langlist=[]
|
|
|
|
| 286 |
LangSegment.setfilters(["zh","ja","en","ko"])
|
|
|
|
| 287 |
if language == "auto":
|
| 288 |
for tmp in LangSegment.getTexts(text):
|
| 289 |
langlist.append(tmp["lang"])
|
|
|
|
| 253 |
from text import chinese
|
| 254 |
def get_phones_and_bert(text,language,version):
|
| 255 |
if language in {"en", "all_zh", "all_ja", "all_ko", "all_yue"}:
|
| 256 |
+
print(":1")
|
| 257 |
language = language.replace("all_","")
|
| 258 |
if language == "en":
|
| 259 |
LangSegment.setfilters(["en"])
|
|
|
|
| 264 |
while " " in formattext:
|
| 265 |
formattext = formattext.replace(" ", " ")
|
| 266 |
if language == "zh":
|
| 267 |
+
print(":2")
|
| 268 |
if re.search(r'[A-Za-z]', formattext):
|
| 269 |
+
print(":3")
|
| 270 |
formattext = re.sub(r'[a-z]', lambda x: x.group(0).upper(), formattext)
|
| 271 |
formattext = chinese.mix_text_normalize(formattext)
|
| 272 |
+
print(":4")
|
| 273 |
return get_phones_and_bert(formattext,"zh",version)
|
| 274 |
else:
|
| 275 |
+
print(":5")
|
| 276 |
phones, word2ph, norm_text = clean_text_inf(formattext, language, version)
|
| 277 |
+
print(":6")
|
| 278 |
bert = get_bert_feature(norm_text, word2ph).to(device)
|
| 279 |
+
print(":7")
|
| 280 |
elif language == "yue" and re.search(r'[A-Za-z]', formattext):
|
| 281 |
formattext = re.sub(r'[a-z]', lambda x: x.group(0).upper(), formattext)
|
| 282 |
formattext = chinese.mix_text_normalize(formattext)
|
| 283 |
+
print(":8")
|
| 284 |
return get_phones_and_bert(formattext,"yue",version)
|
| 285 |
else:
|
| 286 |
+
print(":9")
|
| 287 |
phones, word2ph, norm_text = clean_text_inf(formattext, language, version)
|
| 288 |
+
print(":10")
|
| 289 |
bert = torch.zeros(
|
| 290 |
(1024, len(phones)),
|
| 291 |
dtype=torch.float16 if is_half == True else torch.float32,
|
| 292 |
).to(device)
|
| 293 |
+
print(":11")
|
| 294 |
elif language in {"zh", "ja", "ko", "yue", "auto", "auto_yue"}:
|
| 295 |
textlist=[]
|
| 296 |
langlist=[]
|
| 297 |
+
print(":12")
|
| 298 |
LangSegment.setfilters(["zh","ja","en","ko"])
|
| 299 |
+
print(":13")
|
| 300 |
if language == "auto":
|
| 301 |
for tmp in LangSegment.getTexts(text):
|
| 302 |
langlist.append(tmp["lang"])
|