From 7f2a4a8f3e4692825b55c50210c45d99d3a9e202 Mon Sep 17 00:00:00 2001 From: liruk <34234523+liruk@users.noreply.github.com> Date: Fri, 21 Jun 2024 09:07:09 +0900 Subject: [PATCH] =?UTF-8?q?=E3=82=B3=E3=83=BC=E3=83=89=E6=95=B4=E7=90=86+?= =?UTF-8?q?=E6=9A=AB=E5=AE=9A=E3=81=A7=E3=83=8C=E3=83=AB=E3=83=A2=E3=83=87?= =?UTF-8?q?=E3=83=AB=E4=BD=BF=E7=94=A8=E6=99=82=E3=81=AF=E5=B8=B8=E6=99=82?= =?UTF-8?q?load()=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit TODO:ヌルモデルの変更を検知できればそれがよさそう。 --- gradio_tabs/inference.py | 10 +++------- style_bert_vits2/tts_model.py | 11 ++--------- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/gradio_tabs/inference.py b/gradio_tabs/inference.py index 324b72c..570fce6 100644 --- a/gradio_tabs/inference.py +++ b/gradio_tabs/inference.py @@ -208,7 +208,7 @@ null_models_frame = 0 def change_null_model_row(null_model_index:int, null_model_name:str, null_model_path:str,null_voice_weights:float, null_voice_pitch_weights:float, null_speech_style_weights:float,null_tempo_weights:float, null_models:dict[int,dict[str, Any]]): - logger.debug("change_null_model_row:sta"+str(null_models)) + #logger.debug("change_null_model_row:sta"+str(null_models)) mid_result={} mid_result["name"]=null_model_name mid_result["path"]=null_model_path @@ -217,12 +217,12 @@ def change_null_model_row(null_model_index:int, null_model_name:str, null_model_ mid_result["style"]=null_speech_style_weights mid_result["tempo"]=null_tempo_weights null_models[null_model_index] = mid_result - logger.debug("decreasing:"+str(null_models_frame)+":"+str(len(null_models.keys()))) + #logger.debug("decreasing:"+str(null_models_frame)+":"+str(len(null_models.keys()))) if null_models_frame < len(null_models.keys()): for i in range(null_models_frame ,len(null_models.keys())): _ = null_models.pop(i, None) result = null_models - logger.debug("change_null_model_row:res"+str(null_models)) + #logger.debug("change_null_model_row:res"+str(null_models)) return result def create_inference_app(model_holder: TTSModelHolder) -> gr.Blocks: @@ -253,10 +253,6 @@ def create_inference_app(model_holder: TTSModelHolder) -> gr.Blocks: model_holder.get_model(model_name, model_path) assert model_holder.current_model is not None - if len(null_models.keys()) > 0: - model_holder.get_null_models(null_models) - assert len(model_holder.null_models_params.keys()) > 0 - wrong_tone_message = "" kata_tone: Optional[list[tuple[str, int]]] = None if use_tone and kata_tone_json_str != "": diff --git a/style_bert_vits2/tts_model.py b/style_bert_vits2/tts_model.py index f8a387b..4e1cdac 100644 --- a/style_bert_vits2/tts_model.py +++ b/style_bert_vits2/tts_model.py @@ -298,6 +298,8 @@ class TTSModel: if assist_text == "" or not use_assist_text: assist_text = None if null_model_params is not {}: + #ヌルモデルがあるときは常時ロードしなおすけどもっといい手段ありそう + self.__net_g = None self.null_model_params = null_model_params else: self.null_model_params = {} @@ -407,7 +409,6 @@ class TTSModelHolder: self.device: str = device self.model_files_dict: dict[str, list[Path]] = {} self.current_model: Optional[TTSModel] = None - self.null_models_params: dict[int,dict[str,Union[str, float]]] = {} self.model_names: list[str] = [] self.models_info: list[TTSModelInfo] = [] self.refresh() @@ -420,7 +421,6 @@ class TTSModelHolder: self.model_files_dict = {} self.model_names = [] self.current_model = None - self.null_models_params = {} self.models_info = [] model_dirs = [d for d in self.root_dir.iterdir() if d.is_dir()] @@ -482,13 +482,6 @@ class TTSModelHolder: ) return self.current_model - def get_null_models(self, null_model_index:dict[int,dict[str,Union[str, float]]]) -> dict[int, dict[str, Union[str, float]]]: - """ - get_modelをヌルモデル用に改変。複数まとめて使うかも知れないのでdictで戻す - - """ - self.null_models_params = null_model_index - return self.null_models_params def get_model_for_gradio(self, model_name: str, model_path_str: str): import gradio as gr