当前位置: 首页 > news >正文

【FunASR】Paraformer语音识别-中文-通用-16k-离线-large-onnx

模型亮点

  • 模型文件: damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch
  • Paraformer-large长音频模型集成VAD、ASR、标点与时间戳功能,可直接对时长为数小时音频进行识别,并输出带标点文字与时间戳:
    • ASR模型:Parformer-large模型结构为非自回归语音识别模型,多个中文公开数据集上取得SOTA效果,可快速地基于ModelScope对模型进行微调定制和推理。
    • 热词版本:Paraformer-large热词版模型支持热词定制功能,基于提供的热词列表进行激励增强,提升热词的召回率和准确率。

FunASR介绍

GitHub源码地址: https://github.com/alibaba-damo-academy/FunASR

FunASR是由阿里巴巴通义实验室语音团队开源的一款语音识别基础框架,集成了语音端点检测、语音识别、标点断句等领域的工业级别模型,吸引了众多开发者参与体验和开发。为了解决工业落地的最后一公里,将模型集成到业务中去,我们开发了社区软件包。 支持以下几种服务部署:

  • 中文离线文件转写服务(CPU版本),已完成
  • 中文流式语音识别服务(CPU版本),已完成
  • 英文离线文件转写服务(CPU版本),已完成
  • 中文离线文件转写服务(GPU版本),进行中
  • 更多支持中

中文离线文件转写服务(CPU版本)

中文语音离线文件服务部署(CPU版本),拥有完整的语音识别链路,可以将几十个小时的长音频与视频识别成带标点的文字,而且支持上百路请求同时进行转写。

最新动态

2023/11/08: 中文离线文件转写服务 3.0 发布,支持标点大模型、支持Ngram模型、支持fst热词(更新热词通信协议)、支持服务端加载热词、runtime结构变化适配(FunASR/funasr/runtime->FunASR/runtime),dokcer镜像版本funasr-runtime-sdk-cpu-0.3.0 (caa64bddbb43),原理介绍文档(点击此处)

模型下载

  • 模型介绍: https://modelscope.cn/models/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx/summary
  • 模型下载
# 安装git&git-lfs
yum install git
yum install git-lfs
git lfs installgit clone https://www.modelscope.cn/damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx.git

拉取镜像并推送到私有harbor

# 从公网拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-cpu-0.3.0
# 公有镜像重新打个私有tag
docker tag registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-cpu-0.3.0 harbor.xxx.com:443/base/funasr:funasr-runtime-sdk-cpu-0.3.0
# 推送到私有harbor
docker push harbor.xxx.com:443/base/funasr:funasr-runtime-sdk-cpu-0.3.0

Docker运行

# 创建挂载目录
mkdir -p funasr-runtime-resources/models
# 如果已安装docker,忽略本步骤
docker run -d -p 10096:10096 -it --privileged=true \-v $PWD/funasr-runtime-resources/models:/workspace/models -v $PWD/funasr-runtime-resources/models/run_server.sh:/workspace/FunASR/runtime/run_server.sh \harbor.xxx.com:443/base/funasr:funasr-runtime-sdk-cpu-0.3.0# 把一步命令返回的container_id放到下面命令中
docker exec -it <container_id> bash

服务端启动

docker启动之后,启动 funasr-wss-server服务程序:

cd FunASR/runtime
# 会在./funasr-runtime-resources/damo目录下下载模型文件
nohup bash run_server.sh \--download-model-dir /workspace/models \--vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx \--model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-onnx  \--punc-dir damo/punc_ct-transformer_cn-en-common-vocab471067-large-onnx \--lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst \--itn-dir thuduj12/fst_itn_zh \--hotword /workspace/models/hotwords.txt > log.out 2>&1 &
tail -fn200 log.out

run_server.sh命令参数介绍

--download-model-dir 模型下载地址,通过设置model ID从Modelscope下载模型
--model-dir  modelscope model ID 或者 本地模型路径
--quantize  True为量化ASR模型,False为非量化ASR模型,默认是True
--vad-dir  modelscope model ID 或者 本地模型路径
--vad-quant   True为量化VAD模型,False为非量化VAD模型,默认是True
--punc-dir  modelscope model ID 或者 本地模型路径
--punc-quant   True为量化PUNC模型,False为非量化PUNC模型,默认是True
--lm-dir modelscope model ID 或者 本地模型路径
--itn-dir modelscope model ID 或者 本地模型路径
--port  服务端监听的端口号,默认为 10095
--decoder-thread-num  服务端线程池个数(支持的最大并发路数),脚本会根据服务器线程数自动配置decoder-thread-num、io-thread-num
--io-thread-num  服务端启动的IO线程数
--model-thread-num  每路识别的内部线程数(控制ONNX模型的并行),默认为 1,其中建议 decoder-thread-num*model-thread-num 等于总线程数
--certfile  ssl的证书文件,默认为:../../../ssl_key/server.crt,如果需要关闭ssl,参数设置为0
--keyfile   ssl的密钥文件,默认为:../../../ssl_key/server.key
--hotword   热词文件路径,每行一个热词,格式:热词 权重(例如:阿里巴巴 20),如果客户端提供热词,则与客户端提供的热词合并一起使用,服务端热词全局生效,客户端热词只针对对应客户端生效。

客户端测试与使用

  • 下载客户端测试工具
cd funasr-runtime-resources
curl -O https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/sample/funasr_samples.tar.gz
# 解压
tar -zxvf funasr_samples.tar.gz cd samples/python
python3 funasr_wss_client.py --host "127.0.0.1" --port 10095 --mode offline --audio_in "../audio/asr_example.wav"
  • 使用nginx搭建web访问
  • funasr-runtime-resources/samples/html下static目录重命名为asr
  • 在nginx已有域名转发下添加如下配置:
server {listen       80;server_name  xxx.com;location /asr {root /home/funasr-runtime-resources/samples/html;index index.html;}
}

在这里插入图片描述

http://www.lryc.cn/news/260797.html

相关文章:

  • C语言中的柔性数组
  • ca-certificates.crt解析加载到nssdb中
  • 聊聊Java中的常用类String
  • R语言piecewiseSEM结构方程模型在生态环境领域实践技术
  • IDEA设置查看JDK源码
  • SSM—Mybatis
  • MYSQL在不删除数据的情况下,重置主键自增id
  • SpringMVC-servlet交互
  • DICOM 文件中,VR,VL,SQ,图像二进制的几个注意点
  • git 的使用
  • 详解—【C++】lambda表达式
  • Qt Desktop Widgets 控件绘图原理逐步分析拆解
  • 什么是rocketmq❓
  • 【网络安全】HTTP Slowloris攻击原理解析
  • 从最近爆火的ChatGPT,我看到了电商的下一个形态
  • 云原生向量计算引擎 PieCloudVector:为大模型提供独特记忆
  • 大创项目推荐 深度学习 opencv python 实现中国交通标志识别
  • 深度学习实战67-基于Stable-diffusion的图像生成应用模型的搭建,在Kaggle平台的搭建部署,解决本地没有算力资源问题
  • 云原生之深入解析Kubernetes本地持久化存储方案OpenEBS LocalPV的最佳实践
  • 设计模式-策略(Strategy)模式
  • Star 4.1k!Gitee GVP开源项目!新一代桌面应用开发框架 ElectronEgg!
  • node.js学习(简单聊天室)
  • cfa一级考生复习经验分享系列(四)
  • PPT插件-好用的插件-放映笔、绘图板-大珩助手
  • 弧形导轨的安装注意事项
  • Elasticsearch优化-04
  • Springboot+vue的公寓报修管理系统(有报告)。Javaee项目,springboot vue前后端分离项目
  • uniapp腾讯地图路线规划
  • Python 全栈体系【四阶】(五)
  • 原点处可微问题