| | |
| | | |
| | | |
| | | |
| | | ## 基于ModelScope进行推理 |
| | | |
| | | - 推理支持音频格式如下: |
| | | - wav文件路径,例如:data/test/asr_example.wav |
| | | - pcm文件路径,例如:data/test/asr_example.pcm |
| | | - ark文件路径,例如:data/test/data.ark |
| | | - wav文件url,例如:https://www.modelscope.cn/api/v1/models/iic/LCB-NET/repo?Revision=master&FilePath=example/asr_example.wav |
| | | - wav二进制数据,格式bytes,例如:用户直接从文件里读出bytes数据或者是麦克风录出bytes数据。 |
| | | - 已解析的audio音频,例如:audio, rate = soundfile.read("asr_example_zh.wav"),类型为numpy.ndarray或者torch.Tensor。 |
| | | - wav.scp文件,需符合如下要求(以下分别为sound和kaldi_ark格式): |
| | | |
| | | ```sh |
| | | cat wav.scp |
| | | asr_example1 data/test/asr_example1.wav |
| | | asr_example2 data/test/asr_example2.wav |
| | | |
| | | cat wav.scp |
| | | asr_example1 data/test/data_wav.ark:22 |
| | | asr_example2 data/test/data_wav.ark:90445 |
| | | ... |
| | | ``` |
| | | |
| | | - 推理支持OCR预测文本格式如下: |
| | | - ocr.txt文件,需符合如下要求: |
| | | ```sh |
| | | cat ocr.txt |
| | | asr_example1 ANIMAL <blank> RIGHTS <blank> MANAGER <blank> PLOEG |
| | | asr_example2 UNIVERSITY <blank> CAMPUS <blank> DEANO |
| | | ... |
| | | ``` |
| | | |
| | | - 若输入格式wav文件和ocr文件均为url,api调用方式可参考如下范例: |
| | | |
| | | ```python |
| | | from funasr import AutoModel |
| | | |
| | | model = AutoModel(model="iic/LCB-NET", |
| | | model_revision="v2.0.0") |
| | | res = model.generate(input=("https://www.modelscope.cn/api/v1/models/iic/LCB-NET/repo?Revision=master&FilePath=example/asr_example.wav","https://www.modelscope.cn/api/v1/models/iic/LCB-NET/repo?Revision=master&FilePath=example/ocr.txt"),data_type=("sound", "text")) |
| | | ``` |
| | | |
| | | |
| | | ## 复现论文中的结果 |
| | | ```python |
| | | python -m funasr.bin.inference \ |
| | | --config-path=${file_dir} \ |
| | | --config-name="config.yaml" \ |
| | | ++init_param=${file_dir}/model.pt \ |
| | | ++tokenizer_conf.token_list=${file_dir}/tokens.txt \ |
| | | ++input=[${_logdir}/wav.scp,${_logdir}/ocr.txt] \ |
| | | +data_type='["kaldi_ark", "text"]' \ |
| | | ++tokenizer_conf.bpemodel=${file_dir}/bpe.pt \ |
| | | ++output_dir="${inference_dir}/results" \ |
| | | ++device="${inference_device}" \ |
| | | ++ncpu=1 \ |
| | | ++disable_log=true |
| | | |
| | | ``` |
| | | |
| | | |
| | | 识别结果输出路径结构如下: |
| | | |
| | | ```sh |
| | | tree output_dir/ |
| | | output_dir/ |
| | | └── 1best_recog |
| | | ├── text |
| | | └── token |
| | | ``` |
| | | |
| | | token:语音识别结果文件 |
| | | |
| | | 可以使用funasr里面提供的run_bwer_recall.sh计算WER、BWER、UWER和Recall。 |
| | | |
| | | |
| | | ## 相关论文以及引用信息 |