From 81fe1e0a098458a22a961eeb3e7d3dbcf8e43663 Mon Sep 17 00:00:00 2001
From: 嘉渊 <wangjiaming.wjm@alibaba-inc.com>
Date: 星期三, 19 七月 2023 10:58:08 +0800
Subject: [PATCH] update
---
funasr/build_utils/build_diar_model.py | 28 +++++++++++++++-------------
1 files changed, 15 insertions(+), 13 deletions(-)
diff --git a/funasr/build_utils/build_diar_model.py b/funasr/build_utils/build_diar_model.py
index 6406404..2969fd2 100644
--- a/funasr/build_utils/build_diar_model.py
+++ b/funasr/build_utils/build_diar_model.py
@@ -179,12 +179,20 @@
def build_diar_model(args):
# token_list
if args.token_list is not None:
- with open(args.token_list) as f:
- token_list = [line.rstrip() for line in f]
- args.token_list = list(token_list)
+ if isinstance(args.token_list, str):
+ with open(args.token_list, encoding="utf-8") as f:
+ token_list = [line.rstrip() for line in f]
+
+ # Overwriting token_list to keep it as "portable".
+ args.token_list = list(token_list)
+ elif isinstance(args.token_list, (tuple, list)):
+ token_list = list(args.token_list)
+ else:
+ raise RuntimeError("token_list must be str or list")
vocab_size = len(token_list)
logging.info(f"Vocabulary size: {vocab_size}")
else:
+ token_list = None
vocab_size = None
# frontend
@@ -194,18 +202,16 @@
frontend = frontend_class(cmvn_file=args.cmvn_file, **args.frontend_conf)
else:
frontend = frontend_class(**args.frontend_conf)
- input_size = frontend.output_size()
else:
args.frontend = None
args.frontend_conf = {}
frontend = None
- input_size = args.input_size
# encoder
encoder_class = encoder_choices.get_class(args.encoder)
- encoder = encoder_class(input_size=input_size, **args.encoder_conf)
+ encoder = encoder_class(**args.encoder_conf)
- if args.model_name == "sond":
+ if args.model == "sond":
# data augmentation for spectrogram
if args.specaug is not None:
specaug_class = specaug_choices.get_class(args.specaug)
@@ -243,11 +249,7 @@
# decoder
decoder_class = decoder_choices.get_class(args.decoder)
- decoder = decoder_class(
- vocab_size=vocab_size,
- encoder_output_size=encoder.output_size(),
- **args.decoder_conf,
- )
+ decoder = decoder_class(**args.decoder_conf)
# logger aggregator
if getattr(args, "label_aggregator", None) is not None:
@@ -272,7 +274,7 @@
**args.model_conf,
)
- elif args.model_name == "eend_ola":
+ elif args.model == "eend_ola":
# encoder-decoder attractor
encoder_decoder_attractor_class = encoder_decoder_attractor_choices.get_class(args.encoder_decoder_attractor)
encoder_decoder_attractor = encoder_decoder_attractor_class(**args.encoder_decoder_attractor_conf)
--
Gitblit v1.9.1