欢迎光临散文网 会员登陆 & 注册

k2语音识别:使用docker快速部署k2

2023-01-31 10:39 作者:从孑开始  | 我要投稿

新一代Kaldi包含Lhotse、k2、Icefall、sherpa,是有着良好的生态且专于ASR的开源项目,k2的模型较丰富,推理速度快准确度高、且支持并行解码。其中icefall主要用于各种模型的训练,eg非常详细,几乎包含数据预处理、训练、模型评估和预测,模型导出、量化,及转换onnx的所有步骤;而sherpa可以用于快速部署语音识别服务,开箱即用的方式,可以快速应用于项目生产。项目源码简洁干练,可读性强,从中亦能学到软件架构、设计模式、神经网络计算等知识。

那么如何使用docker快速部署新一代kaldi?

一、准备工作,首先对系统环境做基本了解:

宿主机系统windows10/11或linux/ubuntu20等,需要装有支持cuda10.1+显卡,以便进行模型训练和GPU推理(仅部署CPU推理服务,则不需要)。

在宿主机系统中安装nvidia-docker 。

在宿主机系统中安装nvidia cuda驱动,文中使用 CUDA 11.6/11.7。

可使用python3.7+,文中使用Python3.8(推荐python3.8+)。

文中使用nvidia/cuda:11.0-base基础镜像,也可以使用官方提供的其他更新版本的镜像。

Sherpa里websocket服务需要开启的端口:6006、6008(使用dockerx镜像部署,docker run的时候,需提前做好端口映射)。

若使用conda安装,可直接跳过docker的步骤,在conda的虚拟环境中安装好cuda+cudnn之后,执行步骤8及后续操作。

二、在docker中部署k2的具体操作步骤

1.拉取基础镜像

测试:

2.使用基础镜像启动一个容器

3.进入容器

4.安装依赖

清除apt-get缓存

5.安装cudatoolkit,去掉驱动选项,然后Install:

修改环境变量,并添加:

使环境变量生效:

查看:

6.安装cudnn

查看cuDNN的信息:

(完成以上步骤,可建快照,以复用。)

7.安装torch(与cuda版本配套的torch)

8.安装lhotse(只推理不训练,例如仅体验sherpa,可跳过此步骤)

9.安装icefall(只推理不训练,例如仅体验sherpa,可跳过此步骤)

10.安装kaldifeat

11.安装k2

12.安装sherpa

以上部署成功之后,使用sherpa可快速体验新一代kaldi。


k2语音识别:使用docker快速部署k2的评论 (共 条)

分享到微博请遵守国家法律