游雁
2023-02-07 e21e66c6a36a6a2d2a0e82f030c745c857a8ab35
export model
1个文件已修改
1个文件已添加
38 ■■■■■ 已修改文件
funasr/export/README.md 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
funasr/export/export_model.py 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
funasr/export/README.md
New file
@@ -0,0 +1,21 @@
environment: ubuntu20.04-py37-torch1.11.0-tf1.15.5-1.2.0
Export onnx files from modelscope
```python
from funasr.export.export_model import ASRModelExportParaformer
output_dir = "../export"
export_model = ASRModelExportParaformer(cache_dir=output_dir, onnx=True)
export_model.export_from_modelscope('damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch')
```
Export onnx files from local path
```python
from funasr.export.export_model import ASRModelExportParaformer
output_dir = "../export"
export_model = ASRModelExportParaformer(cache_dir=output_dir, onnx=True)
export_model.export_from_local('/root/cache/export/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch')
```
funasr/export/export_model.py
@@ -41,12 +41,25 @@
            model,
            self.export_config,
        )
        if self.onnx:
            self._export_onnx(model, verbose, export_dir)
        self._export_onnx(model, verbose, export_dir)
        # if self.onnx:
        #     self._export_onnx(model, verbose, export_dir)
        # else:
        #     self._export_torchscripts(model, verbose, export_dir)
        logging.info("output dir: {}".format(export_dir))
    def _export_torchscripts(self, model, verbose, path, enc_size=None):
        if enc_size:
            dummy_input = model.get_dummy_inputs(enc_size)
        else:
            dummy_input = model.get_dummy_inputs()
        # model_script = torch.jit.script(model)
        model_script = torch.jit.trace(model, dummy_input)
        model_script.save(os.path.join(path, f'{model.model_name}.torchscripts'))
    def export_from_modelscope(
        self,
        tag_name: str = 'damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch',