wenet环境部署

2024-01-06 08:04
文章标签 部署 环境 wenet

本文主要是介绍wenet环境部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. 下载镜像、生成container

原始nvidia 提供镜像的网站(包含kaldi):

  • https://docs.nvidia.com/deeplearning/frameworks/kaldi-release-notes/rel_20-03.html#rel_20-03

  • 本次采用的是21.02版本,包含如下内容:

    Ubuntu 20.04 including Python 3.8
    NVIDIA CUDA 11.2.0 including cuBLAS 11.3.1
    NVIDIA cuDNN 8.1.0
    NVIDIA NCCL 2.8.4 (optimized for NVLink™)
    MLNX_OFED 5.1
    OpenMPI 4.0.5
    Nsight Compute 2020.3.0.18
    Nsight Systems 2020.4.3.7
    TensorRT 7.2.2

  • 130服务器更新为 22.01 版本

Ubuntu 20.04 including Python 3.8
NVIDIA CUDA 11.6.0
cuBLAS 11.8.1.74
NVIDIA cuDNN 8.3.2.44
NVIDIA NCCL 2.11.4 (optimized for NVLink™)
rdma-core 36.0
NVIDIA HPC-X 2.10
OpenMPI 4.1.2rc4+
OpenUCX 1.12.0
GDRCopy 2.3
Nsight Systems 2021.5.2.53
TensorRT 8.2.2
SHARP 2.5
DALI 1.9

  • 下载命令:docker pull nvcr.io/nvidia/kaldi:22.01-py3

    下载之后,docker images就可以看到这个镜像了。

  • 使用如下命令创建容器:

      NV_GPU=0,1 nvidia-docker run -itd -P \--name wyr_wenet_kaldi_cuda11.2 \--mount type=bind,source=/home/work/wangyaru05,target=/home/work/wangyaru05 \-v /opt/wfs1/aivoice:/opt/wfs1/aivoice \--net host \--shm-size 8G \nvcr.io/nvidia/kaldi:21.02-py3 bashNV_GPU=0,1,2,3,4,5,6,7 nvidia-docker run -itd -P \--name wyr_wenet_kaldi_cuda11.2 \--mount type=bind,source=/home/work/wangyaru05,target=/home/work/wangyaru05 \-v /opt/wfs1/aivoice:/opt/wfs1/aivoice \--net host \--shm-size 8G \nvcr.io/nvidia/kaldi:21.02-py3 bash
    

NV_GPU=0,1,2,3,4,5,6,7 nvidia-docker run -itd -P
–name wyr_wenet_kaldi_cuda11.6
–mount type=bind,source=/home/work/wangyaru05,target=/home/work/wangyaru05
-v /opt/wfs1/aivoice:/opt/wfs1/aivoice
–net host
–shm-size 8G
nvcr.io/nvidia/kaldi:22.01-py3 bash

  • 启动容器:

      docker container start wyr_wenet_kaldi_cuda11.6
    
  • 进入容器:

      nvidia-docker exec -it wyr_wenet_kaldi_cuda11.6 bash
    
  • 进入容器快捷命令:

    vim ~/.bashrc

      alias wyr_docker_connect='nvidia-docker exec -it wyr_wenet_kaldi_cuda11.6 bash'
    
  • 查看ubantu版本

      cat /etc/issue
    
  1. 配置pip镜像

    vim ~/.pip/pip.conf
    添加如下内容

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com

  1. 配置conda镜像

vim ~/.condarc

channels:- defaults
show_channel_urls: true
default_channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmsys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudbioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmenpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudsimpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  1. 下载wenet代码

     git clone --branch v1.0.0 https://github.com/wenet-e2e/wenet.gitgit clone https://github.com/wenet-e2e/wenet.git
    
  2. 创建conda虚拟环境

    下载conda

     wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh
    

    安装conda

     bash Anaconda3-2021.05-Linux-x86_64.sh
    

    添加anaconda3环境变量

     vim ~/.bashrc添加: export PATH=$PATH:/root/anaconda3/bin
    

    安装wenet虚拟环境

     conda create -n wenet python=3.8source activateconda activate wenet
    
  3. 安装依赖 pytorch torchvision torchaudio cudatoolkit

     pip install -r requirements.txtconda install pytorch torchvision torchaudio cudatoolkit=11.2 -c pytorch -c conda-forgeconda install pytorch torchvision torchaudio cudatoolkit=11.6 -c pytorch -c conda-forge
    
  • 问题是:nvcc 版本是11.2 但是官方pytorch安装例子里只有11.1,使用以上命令安装11.2对应版本的时候总是装CPU版本的

    • 尝试解决方法:据说安装11.1也是可以的,只能试一下
      conda install pytorch=1.8.1 torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge

        conda install pytorch=1.8.1 torchvision torchaudio cudatoolkit=11.6 -c pytorch -c conda-forge
      

conda install pytorch torchvision torchaudio cudatoolkit=11.5 -c pytorch -c conda-forge

	成功了✅

conda install pytorch=1.12.1 torchvision torchaudio cudatoolkit=11.3 -c pytorch -c conda-forge

  1. 下载1.0.0代码

git clone --branch v1.0.0 https://github.com/wenet-e2e/wenet.git

  1. conda环境配置
  • conda create -n wenet python=3.8

  • conda activate wenet

    报错 需要conda init:解决方法 source activate

  • pip install -r requirements.txt

  • conda install pytorch torchvision torchaudio cudatoolkit=10.1 -c pytorch -c conda-forge

    本来cudatoolkit的版本是11.1, 这里本地的是10.1,所以改为了10.1.

    通过安装命令可以看到,pytorch的版本是1.8.1, torchaudio的版本是0.8.1, cudatoolkit的版本是10.1.243,都没有问题。唯一有问题的有两个地方:一个是网上有cuda和pytorhc版本的对应关系,总是显示pytorch版本1.7.0需要11.0的cuda版本。可能是cuda不能装太低版本的pytorch,能装比较高的pytorch。

    安装时间非常长,于是改了conda的镜像。

    channels:

    • defaults
      show_channel_urls: true
      default_channels:

    • https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main

    • https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r

    • https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
      custom_channels:
      conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

      安装会很快。

      另外查了一下官网的是在哪下载的,通过conda info找到了下载包的临时存放地址,通过查看urls.txt看到了下载地址:https://conda.anaconda.org/pytorch/linux-64/torchaudio-0.8.1-py38.tar.bz2

  1. pip镜像源配置文件

vim ~/.pip/pip.conf
添加如下内容

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com

这篇关于wenet环境部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/575720

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

Java 与 LibreOffice 集成开发指南(环境搭建及代码示例)

《Java与LibreOffice集成开发指南(环境搭建及代码示例)》本文介绍Java与LibreOffice的集成方法,涵盖环境配置、API调用、文档转换、UNO桥接及REST接口等技术,提供... 目录1. 引言2. 环境搭建2.1 安装 LibreOffice2.2 配置 Java 开发环境2.3 配

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本