Auto download missing model for bert_gen.py (#146)

* auto download missing model

* support openi

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix wrong delete

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* pass pre-commit

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix repeat login

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
Isotr0py
2023-11-04 04:06:10 +08:00
committed by GitHub
parent 4d6de240a0
commit 8609449b63
9 changed files with 92 additions and 25 deletions

View File

@@ -26,3 +26,23 @@ def get_bert(norm_text, word2ph, language, device):
lang_bert_func_map = {"ZH": zh_bert, "EN": en_bert, "JP": jp_bert}
bert = lang_bert_func_map[language](norm_text, word2ph, device)
return bert
def check_bert_models():
import json
from pathlib import Path
from config import config
from .bert_utils import _check_bert
if config.mirror.lower() == "openi":
import openi
kwargs = {"token": config.openi_token} if config.openi_token else {}
openi.login(**kwargs)
with open("./bert/bert_models.json", "r") as fp:
models = json.load(fp)
for k, v in models.items():
local_path = Path("./bert").joinpath(k)
_check_bert(v["repo_id"], v["files"], local_path)