Skip to content

Latest commit

 

History

History
57 lines (46 loc) · 3.48 KB

File metadata and controls

57 lines (46 loc) · 3.48 KB

Python例程

目录

1. 环境准备

1.1 x86/arm PCIe平台

如果您在x86/arm平台安装了PCIe加速卡(如SC系列加速卡),并使用它测试本例程,您需要安装libsophon、sophon-opencv、sophon-ffmpeg和sophon-sail,具体请参考x86-pcie平台的开发和运行环境搭建arm-pcie平台的开发和运行环境搭建

此外您可能还需要安装其他第三方库:

pip3 install torch==1.13.1 torchaudio==0.13.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

1.2 SoC平台

如果您使用SoC平台(如SE、SM系列边缘设备),并使用它测试本例程,请使用发布版本v23.07.01之后的刷机包,刷机后在/opt/sophon/下已经预装了相应的libsophon、sophon-opencv和sophon-ffmpeg运行库包。您还需要交叉编译安装sophon-sail,具体可参考交叉编译安装sophon-sail

此外您可能还需要安装其他第三方库:

pip3 install torch==1.13.1 torchaudio==0.13.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

2. 推理测试

python例程不需要编译,可以直接运行,除了所需的模型、数据集之外,还需要确保python目录下存在目标平台对应架构的swig decoder模块,这些文件一般在准备模型与数据这一步就会准备完毕。PCIe平台和SoC平台的测试参数和运行方式是相同的。

2.1 参数说明

运行wenet.py文件,请注意修改相应的参数:
```bash
usage: wenet.py [--input INPUT_PATH] [--encoder_bmodel ENCODER_BMODEL] [--decoder_bmodel DECODER_BMODEL][--dev_id DEV_ID] [--result_file RESULT_FILE_PATH] [--mode MODE]

--input: 测试数据路径,必须是符合格式要求的数据列表;
--encoder_bmodel: 用于推理的encoder bmodel路径,默认使用stage 0的网络进行推理;
--decoder_bmodel: 用于推理的decoder bmodel路径,默认使用stage 0的网络进行推理;
--dev_id: 用于推理的tpu设备id;
--result_file: 用于保存结果的文件路径;
--mode: 对整句进行解码采用的方式。

2.2 测试音频

流式测试实例如下,通过传入相应的模型路径参数进行测试即可。

python3 wenet.py --input ../datasets/aishell_S0764/aishell_S0764.list --encoder_bmodel ../models/BM1684/wenet_encoder_streaming_fp32.bmodel --dev_id 0 --result_file ./result.txt --mode ctc_prefix_beam_search

如果需要测试非流式,只需要设置--encoder_bmodel为非流式的encoder bmodel即可。

默认情况下decoder不开启,如果想要开启decoder重打分,请指定mode和decoder_bmodel参数如下:

python3 wenet.py --input ../datasets/aishell_S0764/aishell_S0764.list --encoder_bmodel ../models/BM1684/wenet_encoder_streaming_fp32.bmodel --decoder_bmodel ../models/BM1684/wenet_decoder_fp32.bmodel --dev_id 0 --result_file ./result.txt --mode attention_rescoring

测试结束后,会将预测的文本结果保存在result.txt下,同时会打印预测结果、推理时间等信息。