From 94f7bd079c78d6b7f9ab1961e991caa2a929b858 Mon Sep 17 00:00:00 2001
From: shixian.shi <shixian.shi@alibaba-inc.com>
Date: 星期一, 05 二月 2024 11:15:06 +0800
Subject: [PATCH] update preset_spk_num
---
funasr/auto/auto_model.py | 26 ++++++++++----------------
1 files changed, 10 insertions(+), 16 deletions(-)
diff --git a/funasr/auto/auto_model.py b/funasr/auto/auto_model.py
index 9d957a3..8007d6e 100644
--- a/funasr/auto/auto_model.py
+++ b/funasr/auto/auto_model.py
@@ -88,7 +88,8 @@
class AutoModel:
def __init__(self, **kwargs):
- tables.print()
+ if kwargs.get("disable_log", False):
+ tables.print()
model, kwargs = self.build_model(**kwargs)
@@ -120,9 +121,6 @@
if spk_mode not in ["default", "vad_segment", "punc_segment"]:
logging.error("spk_mode should be one of default, vad_segment and punc_segment.")
self.spk_mode = spk_mode
- self.preset_spk_num = kwargs.get("preset_spk_num", None)
- if self.preset_spk_num:
- logging.warning("Using preset speaker number: {}".format(self.preset_spk_num))
self.kwargs = kwargs
self.model = model
@@ -133,8 +131,6 @@
self.spk_model = spk_model
self.spk_kwargs = spk_kwargs
self.model_path = kwargs.get("model_path")
-
-
def build_model(self, **kwargs):
assert "model" in kwargs
@@ -145,7 +141,7 @@
set_all_random_seed(kwargs.get("seed", 0))
device = kwargs.get("device", "cuda")
- if not torch.cuda.is_available() or kwargs.get("ngpu", 0) == 0:
+ if not torch.cuda.is_available() or kwargs.get("ngpu", 1) == 0:
device = "cpu"
kwargs["batch_size"] = 1
kwargs["device"] = device
@@ -199,8 +195,6 @@
res = self.model(*args, kwargs)
return res
-
-
def generate(self, input, input_len=None, **cfg):
if self.vad_model is None:
return self.inference(input, input_len=input_len, **cfg)
@@ -231,7 +225,7 @@
data_batch = data_list[beg_idx:end_idx]
key_batch = key_list[beg_idx:end_idx]
batch = {"data_in": data_batch, "key": key_batch}
- if (end_idx - beg_idx) == 1 and isinstance(data_batch[0], torch.Tensor): # fbank
+ if (end_idx - beg_idx) == 1 and kwargs.get("data_type", None) == "fbank": # fbank
batch["data_in"] = data_batch[0]
batch["data_lengths"] = input_len
@@ -394,7 +388,7 @@
if self.spk_model is not None:
all_segments = sorted(all_segments, key=lambda x: x[0])
spk_embedding = result['spk_embedding']
- labels = self.cb_model(spk_embedding.cpu(), oracle_num=self.preset_spk_num)
+ labels = self.cb_model(spk_embedding.cpu(), oracle_num=kwargs['preset_spk_num'])
del result['spk_embedding']
sv_output = postprocess(all_segments, None, labels, spk_embedding.cpu())
if self.spk_mode == 'vad_segment': # recover sentence_list
@@ -426,10 +420,10 @@
f"time_escape: {time_escape_total_per_sample:0.3f}")
- end_total = time.time()
- time_escape_total_all_samples = end_total - beg_total
- print(f"rtf_avg_all: {time_escape_total_all_samples / time_speech_total_all_samples:0.3f}, "
- f"time_speech_all: {time_speech_total_all_samples: 0.3f}, "
- f"time_escape_all: {time_escape_total_all_samples:0.3f}")
+ # end_total = time.time()
+ # time_escape_total_all_samples = end_total - beg_total
+ # print(f"rtf_avg_all: {time_escape_total_all_samples / time_speech_total_all_samples:0.3f}, "
+ # f"time_speech_all: {time_speech_total_all_samples: 0.3f}, "
+ # f"time_escape_all: {time_escape_total_all_samples:0.3f}")
return results_ret_list
--
Gitblit v1.9.1