From f29ae92a88451d8f2b6d486870db66cc2635dffe Mon Sep 17 00:00:00 2001 From: huangyuxin Date: Fri, 25 Feb 2022 06:14:31 +0000 Subject: [PATCH] add unit test for deepspeech2online inference --- .../unit/asr/deepspeech2_online_model_test.py | 85 +++++++++++++++++- .../test_data/static_ds2online_inputs.pickle | Bin 0 -> 45895 bytes 2 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 tests/unit/asr/test_data/static_ds2online_inputs.pickle diff --git a/tests/unit/asr/deepspeech2_online_model_test.py b/tests/unit/asr/deepspeech2_online_model_test.py index f623c5ac..3d634945 100644 --- a/tests/unit/asr/deepspeech2_online_model_test.py +++ b/tests/unit/asr/deepspeech2_online_model_test.py @@ -15,9 +15,12 @@ import unittest import numpy as np import paddle +import pickle +import os +from paddle import inference from paddlespeech.s2t.models.ds2_online import DeepSpeech2ModelOnline - +from paddlespeech.s2t.models.ds2_online import DeepSpeech2InferModelOnline class TestDeepSpeech2ModelOnline(unittest.TestCase): def setUp(self): @@ -182,5 +185,85 @@ class TestDeepSpeech2ModelOnline(unittest.TestCase): paddle.allclose(final_state_c_box, final_state_c_box_chk), True) + + +class TestDeepSpeech2StaticModelOnline(unittest.TestCase): + + def setUp(self): + export_prefix = "exp/deepspeech2_online/checkpoints/test_export" + os.makedirs( os.path.dirname(export_prefix), mode=0o755) + infer_model = DeepSpeech2InferModelOnline( + feat_size=161, + dict_size=4233, + num_conv_layers=2, + num_rnn_layers=5, + rnn_size=1024, + num_fc_layers=0, + fc_layers_size_list=[-1], + use_gru=False) + static_model = infer_model.export() + paddle.jit.save(static_model, export_prefix) + + with open("test_data/static_ds2online_inputs.pickle", "rb") as f: + self.data_dict = pickle.load(f) + + self.setup_model(export_prefix) + + + def setup_model(self, export_prefix): + deepspeech_config = inference.Config( + export_prefix + ".pdmodel", + export_prefix + ".pdiparams") + if ('CUDA_VISIBLE_DEVICES' in os.environ.keys() and os.environ['CUDA_VISIBLE_DEVICES'].strip() != ''): + deepspeech_config.enable_use_gpu(100, 0) + deepspeech_config.enable_memory_optim() + deepspeech_predictor = inference.create_predictor(deepspeech_config) + self.predictor = deepspeech_predictor + + def test_unit(self): + input_names = self.predictor.get_input_names() + audio_handle = self.predictor.get_input_handle(input_names[0]) + audio_len_handle = self.predictor.get_input_handle(input_names[1]) + h_box_handle = self.predictor.get_input_handle(input_names[2]) + c_box_handle = self.predictor.get_input_handle(input_names[3]) + + + x_chunk = self.data_dict["audio_chunk"] + x_chunk_lens = self.data_dict["audio_chunk_lens"] + chunk_state_h_box = self.data_dict["chunk_state_h_box"] + chunk_state_c_box = self.data_dict["chunk_state_c_bos"] + + audio_handle.reshape(x_chunk.shape) + audio_handle.copy_from_cpu(x_chunk) + + audio_len_handle.reshape(x_chunk_lens.shape) + audio_len_handle.copy_from_cpu(x_chunk_lens) + + h_box_handle.reshape(chunk_state_h_box.shape) + h_box_handle.copy_from_cpu(chunk_state_h_box) + + c_box_handle.reshape(chunk_state_c_box.shape) + c_box_handle.copy_from_cpu(chunk_state_c_box) + + + + output_names = self.predictor.get_output_names() + output_handle = self.predictor.get_output_handle( + output_names[0]) + output_lens_handle = self.predictor.get_output_handle( + output_names[1]) + output_state_h_handle = self.predictor.get_output_handle( + output_names[2]) + output_state_c_handle = self.predictor.get_output_handle( + output_names[3]) + self.predictor.run() + + output_chunk_probs = output_handle.copy_to_cpu() + output_chunk_lens = output_lens_handle.copy_to_cpu() + chunk_state_h_box = output_state_h_handle.copy_to_cpu() + chunk_state_c_box = output_state_c_handle.copy_to_cpu() + return True + + if __name__ == '__main__': unittest.main() diff --git a/tests/unit/asr/test_data/static_ds2online_inputs.pickle b/tests/unit/asr/test_data/static_ds2online_inputs.pickle new file mode 100644 index 0000000000000000000000000000000000000000..8aca0543ad69f8bb64b77664375bbd281a3747c6 GIT binary patch literal 45895 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 literal 0 HcmV?d00001