Spaces:
Sleeping
Sleeping
update
Browse files
toolbox/k2_sherpa/nn_models.py
CHANGED
@@ -312,8 +312,28 @@ model_map = {
|
|
312 |
"tokens_file_sub_folder": "data/lang_bpe_500",
|
313 |
"loader": "load_sherpa_offline_recognizer",
|
314 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
315 |
],
|
316 |
"Chinese+English": [
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
317 |
{
|
318 |
"repo_id": "csukuangfj/sherpa-onnx-paraformer-zh-2023-03-28",
|
319 |
"nn_model_file": "model.int8.onnx",
|
@@ -322,6 +342,22 @@ model_map = {
|
|
322 |
"tokens_file_sub_folder": ".",
|
323 |
"loader": "load_sherpa_offline_recognizer_from_paraformer",
|
324 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
325 |
],
|
326 |
"Chinese+Cantonese+English": [
|
327 |
{
|
@@ -477,6 +513,30 @@ def load_sherpa_offline_recognizer_from_whisper(encoder_model_file: str,
|
|
477 |
return recognizer
|
478 |
|
479 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
480 |
def load_recognizer(local_model_dir: Path,
|
481 |
decoding_method: str = "greedy_search",
|
482 |
num_active_paths: int = 4,
|
@@ -531,6 +591,10 @@ def load_recognizer(local_model_dir: Path,
|
|
531 |
recognizer = load_sherpa_offline_recognizer_from_whisper(
|
532 |
**kwargs_
|
533 |
)
|
|
|
|
|
|
|
|
|
534 |
else:
|
535 |
raise NotImplementedError("loader not support: {}".format(loader))
|
536 |
return recognizer
|
|
|
312 |
"tokens_file_sub_folder": "data/lang_bpe_500",
|
313 |
"loader": "load_sherpa_offline_recognizer",
|
314 |
},
|
315 |
+
{
|
316 |
+
"repo_id": "csukuangfj/wenet-english-model",
|
317 |
+
"nn_model_file": "final.zip",
|
318 |
+
"nn_model_file_sub_folder": ".",
|
319 |
+
"tokens_file": "units.txt",
|
320 |
+
"tokens_file_sub_folder": ".",
|
321 |
+
"loader": "load_sherpa_offline_recognizer",
|
322 |
+
},
|
323 |
],
|
324 |
"Chinese+English": [
|
325 |
+
{
|
326 |
+
"repo_id": "csukuangfj/sherpa-onnx-streaming-zipformer-bilingual-zh-en-2023-02-20",
|
327 |
+
"encoder_model_file": "encoder-epoch-99-avg-1.onnx",
|
328 |
+
"encoder_model_file_sub_folder": ".",
|
329 |
+
"decoder_model_file": "decoder-epoch-99-avg-1.onnx",
|
330 |
+
"decoder_model_file_sub_folder": ".",
|
331 |
+
"joiner_model_file": "joiner-epoch-99-avg-1.onnx",
|
332 |
+
"joiner_model_file_sub_folder": ".",
|
333 |
+
"tokens_file": "tokens.txt",
|
334 |
+
"tokens_file_sub_folder": ".",
|
335 |
+
"loader": "load_sherpa_online_recognizer_from_transducer",
|
336 |
+
},
|
337 |
{
|
338 |
"repo_id": "csukuangfj/sherpa-onnx-paraformer-zh-2023-03-28",
|
339 |
"nn_model_file": "model.int8.onnx",
|
|
|
342 |
"tokens_file_sub_folder": ".",
|
343 |
"loader": "load_sherpa_offline_recognizer_from_paraformer",
|
344 |
},
|
345 |
+
{
|
346 |
+
"repo_id": "ptrnull/icefall-asr-conv-emformer-transducer-stateless2-zh",
|
347 |
+
"nn_model_file": "cpu_jit-epoch-11-avg-1.pt",
|
348 |
+
"nn_model_file_sub_folder": "exp",
|
349 |
+
"tokens_file": "tokens.txt",
|
350 |
+
"tokens_file_sub_folder": "data/lang_char_bpe",
|
351 |
+
"loader": "load_sherpa_offline_recognizer",
|
352 |
+
},
|
353 |
+
{
|
354 |
+
"repo_id": "luomingshuang/icefall_asr_tal-csasr_pruned_transducer_stateless5",
|
355 |
+
"nn_model_file": "cpu_jit.pt",
|
356 |
+
"nn_model_file_sub_folder": "exp",
|
357 |
+
"tokens_file": "tokens.txt",
|
358 |
+
"tokens_file_sub_folder": "data/lang_char",
|
359 |
+
"loader": "load_sherpa_offline_recognizer",
|
360 |
+
},
|
361 |
],
|
362 |
"Chinese+Cantonese+English": [
|
363 |
{
|
|
|
513 |
return recognizer
|
514 |
|
515 |
|
516 |
+
def load_sherpa_online_recognizer_from_transducer(encoder_model_file: str,
|
517 |
+
decoder_model_file: str,
|
518 |
+
joiner_model_file: str,
|
519 |
+
tokens_file: str,
|
520 |
+
sample_rate: int = 16000,
|
521 |
+
decoding_method: str = "greedy_search",
|
522 |
+
feature_dim: int = 80,
|
523 |
+
num_threads: int = 2,
|
524 |
+
num_active_paths: int = 2,
|
525 |
+
):
|
526 |
+
recognizer = sherpa_onnx.OfflineRecognizer.from_transducer(
|
527 |
+
encoder=encoder_model_file,
|
528 |
+
decoder=decoder_model_file,
|
529 |
+
joiner=joiner_model_file,
|
530 |
+
tokens=tokens_file,
|
531 |
+
num_threads=num_threads,
|
532 |
+
sample_rate=sample_rate,
|
533 |
+
feature_dim=feature_dim,
|
534 |
+
decoding_method=decoding_method,
|
535 |
+
max_active_paths=num_active_paths,
|
536 |
+
)
|
537 |
+
return recognizer
|
538 |
+
|
539 |
+
|
540 |
def load_recognizer(local_model_dir: Path,
|
541 |
decoding_method: str = "greedy_search",
|
542 |
num_active_paths: int = 4,
|
|
|
591 |
recognizer = load_sherpa_offline_recognizer_from_whisper(
|
592 |
**kwargs_
|
593 |
)
|
594 |
+
elif loader == "load_sherpa_online_recognizer_from_transducer":
|
595 |
+
recognizer = load_sherpa_online_recognizer_from_transducer(
|
596 |
+
**kwargs_
|
597 |
+
)
|
598 |
else:
|
599 |
raise NotImplementedError("loader not support: {}".format(loader))
|
600 |
return recognizer
|