| | |
| | | 通过下述命令拉取并启动FunASR runtime-SDK的docker镜像: |
| | | |
| | | ```shell |
| | | sudo docker pull registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-cpu-0.2.1 |
| | | sudo docker pull \ |
| | | registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-cpu-0.2.2 |
| | | mkdir -p ./funasr-runtime-resources/models |
| | | sudo docker run -p 10095:10095 -it --privileged=true -v ./funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-cpu-0.2.1 |
| | | sudo docker run -p 10095:10095 -it --privileged=true \ |
| | | -v $PWD/funasr-runtime-resources/models:/workspace/models \ |
| | | registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-cpu-0.2.2 |
| | | ``` |
| | | 如果您没有安装docker,可参考[Docker安装](#Docker安装) |
| | | |
| | |
| | | # 或者 damo/speech_paraformer-large-contextual_asr_nat-zh-cn-16k-common-vocab8404-onnx(热词) |
| | | |
| | | ``` |
| | | 服务端详细参数介绍可参考[服务端参数介绍](#服务端参数介绍) |
| | | 服务端详细参数介绍可参考[服务端用法详解](#服务端用法详解) |
| | | ### 客户端测试与使用 |
| | | |
| | | 下载客户端测试工具目录samples |
| | |
| | | 若想直接运行client进行测试,可参考如下简易说明,以python版本为例: |
| | | |
| | | ```shell |
| | | python3 wss_client_asr.py --host "127.0.0.1" --port 10095 --mode offline --audio_in "../audio/asr_example.wav" --output_dir "./results" |
| | | python3 funasr_wss_client.py --host "127.0.0.1" --port 10095 --mode offline \ |
| | | --audio_in "../audio/asr_example.wav" --output_dir "./results" |
| | | ``` |
| | | |
| | | 命令参数说明: |
| | | ```text |
| | | --host 为FunASR runtime-SDK服务部署机器ip,默认为本机ip(127.0.0.1),如果client与服务不在同一台服务器,需要改为部署机器ip |
| | | --host 为FunASR runtime-SDK服务部署机器ip,默认为本机ip(127.0.0.1),如果client与服务不在同一台服务器, |
| | | 需要改为部署机器ip |
| | | --port 10095 部署端口号 |
| | | --mode offline表示离线文件转写 |
| | | --audio_in 需要进行转写的音频文件,支持文件路径,文件列表wav.scp |
| | | --thread_num 设置并发发送线程数,默认为1 |
| | | --ssl 设置是否开启ssl证书校验,默认1开启,设置为0关闭 |
| | | --hotword 如果模型为热词模型,可以设置热词: *.txt(每行一个热词) 或者空格分隔的热词字符串 (could be: 阿里巴巴 达摩院) |
| | | --hotword 如果模型为热词模型,可以设置热词: *.txt(每行一个热词) 或者空格分隔的热词字符串(阿里巴巴 达摩院) |
| | | --use_itn 设置是否使用itn,默认1开启,设置为0关闭 |
| | | ``` |
| | | |
| | |
| | | 命令参数说明: |
| | | |
| | | ```text |
| | | --server-ip 为FunASR runtime-SDK服务部署机器ip,默认为本机ip(127.0.0.1),如果client与服务不在同一台服务器,需要改为部署机器ip |
| | | --server-ip 为FunASR runtime-SDK服务部署机器ip,默认为本机ip(127.0.0.1),如果client与服务不在同一台服务器, |
| | | 需要改为部署机器ip |
| | | --port 10095 部署端口号 |
| | | --wav-path 需要进行转写的音频文件,支持文件路径 |
| | | --hotword 如果模型为热词模型,可以设置热词: *.txt(每行一个热词) 或者空格分隔的热词字符串 (could be: 阿里巴巴 达摩院) |
| | | --hotword 如果模型为热词模型,可以设置热词: *.txt(每行一个热词) 或者空格分隔的热词字符串 (阿里巴巴 达摩院) |
| | | --use-itn 设置是否使用itn,默认1开启,设置为0关闭 |
| | | ``` |
| | | |
| | |
| | | ``` |
| | | 详细可以参考文档([点击此处](../java/readme.md)) |
| | | |
| | | ## 服务端用法详解: |
| | | |
| | | |
| | | ## 服务端参数介绍: |
| | | |
| | | funasr-wss-server支持从Modelscope下载模型,设置模型下载地址(--download-model-dir,默认为/workspace/models)及model ID(--model-dir、--vad-dir、--punc-dir),示例如下: |
| | | ### 启动FunASR服务 |
| | | ```shell |
| | | cd /workspace/FunASR/funasr/runtime/websocket/build/bin |
| | | ./funasr-wss-server \ |
| | | cd /workspace/FunASR/funasr/runtime |
| | | nohup bash run_server.sh \ |
| | | --download-model-dir /workspace/models \ |
| | | --model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx \ |
| | | --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx \ |
| | |
| | | --io-thread-num 8 \ |
| | | --port 10095 \ |
| | | --certfile ../../../ssl_key/server.crt \ |
| | | --keyfile ../../../ssl_key/server.key |
| | | --keyfile ../../../ssl_key/server.key > log.out 2>&1 & |
| | | ``` |
| | | 命令参数介绍: |
| | | **run_server.sh命令参数介绍** |
| | | ```text |
| | | --download-model-dir 模型下载地址,通过设置model ID从Modelscope下载模型 |
| | | --model-dir modelscope model ID |
| | |
| | | --port 服务端监听的端口号,默认为 10095 |
| | | --decoder-thread-num 服务端启动的推理线程数,默认为 8 |
| | | --io-thread-num 服务端启动的IO线程数,默认为 1 |
| | | --certfile ssl的证书文件,默认为:../../../ssl_key/server.crt,如果需要关闭ssl,参数设置为”“ |
| | | --keyfile ssl的密钥文件,默认为:../../../ssl_key/server.key,如果需要关闭ssl,参数设置为”“ |
| | | --certfile ssl的证书文件,默认为:../../../ssl_key/server.crt,如果需要关闭ssl,参数设置为0 |
| | | --keyfile ssl的密钥文件,默认为:../../../ssl_key/server.key |
| | | ``` |
| | | |
| | | funasr-wss-server同时也支持从本地路径加载模型(本地模型资源准备详见[模型资源准备](#模型资源准备))示例如下: |
| | | ```shell |
| | | cd /workspace/FunASR/funasr/runtime/websocket/build/bin |
| | | ./funasr-wss-server \ |
| | | --model-dir /workspace/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx \ |
| | | --vad-dir /workspace/models/damo/speech_fsmn_vad_zh-cn-16k-common-onnx \ |
| | | --punc-dir /workspace/models/damo/punc_ct-transformer_zh-cn-common-vocab272727-onnx \ |
| | | --itn-dir /workspace/models/thuduj12/fst_itn_zh \ |
| | | --decoder-thread-num 32 \ |
| | | --io-thread-num 8 \ |
| | | --port 10095 \ |
| | | --certfile ../../../ssl_key/server.crt \ |
| | | --keyfile ../../../ssl_key/server.key |
| | | ``` |
| | | 命令参数介绍: |
| | | ### 关闭FunASR服务 |
| | | ```text |
| | | --model-dir ASR模型路径,默认为:/workspace/models/asr |
| | | --quantize True为量化ASR模型,False为非量化ASR模型,默认是True |
| | | --vad-dir VAD模型路径,默认为:/workspace/models/vad |
| | | --vad-quant True为量化VAD模型,False为非量化VAD模型,默认是True |
| | | --punc-dir PUNC模型路径,默认为:/workspace/models/punc |
| | | --punc-quant True为量化PUNC模型,False为非量化PUNC模型,默认是True |
| | | --itn-dir modelscope model ID |
| | | --port 服务端监听的端口号,默认为 10095 |
| | | --decoder-thread-num 服务端启动的推理线程数,默认为 8 |
| | | --io-thread-num 服务端启动的IO线程数,默认为 1 |
| | | --certfile ssl的证书文件,默认为:../../../ssl_key/server.crt,如果需要关闭ssl,参数设置为”“ |
| | | --keyfile ssl的密钥文件,默认为:../../../ssl_key/server.key,如果需要关闭ssl,参数设置为”“ |
| | | # 查看 funasr-wss-server 对应的PID |
| | | ps -x | grep funasr-wss-server |
| | | kill -9 PID |
| | | ``` |
| | | |
| | | ### 修改模型及其他参数 |
| | | 替换正在使用的模型或者其他参数,需先关闭FunASR服务,修改需要替换的参数,并重新启动FunASR服务。其中模型需为ModelScope中的ASR/VAD/PUNC模型,或者从ModelScope中模型finetune后的模型。 |
| | | ```text |
| | | # 例如替换ASR模型为 damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx,则如下设置参数 --model-dir |
| | | --model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx |
| | | # 设置端口号 --port |
| | | --port <port number> |
| | | # 设置服务端启动的推理线程数 --decoder-thread-num |
| | | --decoder-thread-num <decoder thread num> |
| | | # 设置服务端启动的IO线程数 --io-thread-num |
| | | --io-thread-num <io thread num> |
| | | # 关闭SSL证书 |
| | | --certfile 0 |
| | | ``` |
| | | |
| | | 执行上述指令后,启动离线文件转写服务。如果模型指定为ModelScope中model id,会自动从MoldeScope中下载如下模型: |
| | | [FSMN-VAD模型](https://www.modelscope.cn/models/damo/speech_fsmn_vad_zh-cn-16k-common-onnx/summary), |
| | | [Paraformer-lagre模型](https://www.modelscope.cn/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx/summary) |
| | | [CT-Transformer标点预测模型](https://www.modelscope.cn/models/damo/punc_ct-transformer_zh-cn-common-vocab272727-onnx/summary) |
| | | [FSMN-VAD模型](https://www.modelscope.cn/models/damo/speech_fsmn_vad_zh-cn-16k-common-onnx/summary), |
| | | [Paraformer-lagre模型](https://www.modelscope.cn/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx/summary), |
| | | [CT-Transformer标点预测模型](https://www.modelscope.cn/models/damo/punc_ct-transformer_zh-cn-common-vocab272727-onnx/summary), |
| | | [基于FST的中文ITN](https://www.modelscope.cn/models/thuduj12/fst_itn_zh/summary) |
| | | |
| | | 如果,您希望部署您finetune后的模型(例如10epoch.pb),需要手动将模型重命名为model.pb,并将原modelscope中模型model.pb替换掉,将路径指定为`model_dir`即可。 |