(简体中文|[English](./install.md)) # 安装方法 `PaddleSpeech` 有三种安装方法。根据安装的难易程度,这三种方法可以分为 **简单**, **中等** 和 **困难**. | 方式 | 功能 | 支持系统 | | :--- | :----------------------------------------------------------- | :------------------ | | 简单 | (1) 使用 PaddleSpeech 的命令行功能.
(2) 在 Aistudio上体验 PaddleSpeech. | Linux, Mac(不支持M1芯片),Windows (安装详情查看[#1195](https://github.com/PaddlePaddle/PaddleSpeech/discussions/1195)) | | 中等 | 支持 PaddleSpeech 主要功能,比如使用已有 examples 中的模型和使用 PaddleSpeech 来训练自己的模型. | Linux, Mac(不支持M1芯片,不支持训练), Windows(不支持训练) | | 困难 | 支持 PaddleSpeech 的各项功能,包含结合 kaldi 使用 join ctc decoder 方式解码 ([asr2](../../examples/librispeech/asr2 )),训练语言模型,使用强制对齐等。并且你更能成为一名开发者! | Ubuntu | ## 先决条件 - Python >= 3.7 - 最新版本的 PaddlePaddle (请看 [安装向导](https://www.paddlepaddle.org.cn/documentation/docs/en/beginners_guide/index_en.html)) - C++ 编译环境 - 提示: 对于 Linux 和 Mac,请不要使用 `sh` 代替安装文档中的 `bash` - 提示: 我们建议在安装 `paddlepaddle` 的时候使用百度源 https://mirror.baidu.com/pypi/simple ,而在安装 `paddlespeech` 的时候使用清华源 https://pypi.tuna.tsinghua.edu.cn/simple 。 ## 简单: 获取基本功能(支持 Linux,Mac 和 Windows) - 如果你是一个刚刚接触 `PaddleSpeech` 的新人并且想要很方便地体验一下该项目。我们建议你体验一下 [AI Studio](https://aistudio.baidu.com/aistudio/index)。我们在 AI Studio上面建立了一个让你一步一步运行体验来使用 `PaddleSpeech` 的[教程](https://aistudio.baidu.com/aistudio/education/group/info/25130)。 - 如果你想使用 `PaddleSpeech` 的命令行功能,你需要跟随下面的步骤来安装 `PaddleSpeech`。如果你想了解更多关于使用 `PaddleSpeech` 命令行功能的信息,你可以参考 [cli](https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/paddlespeech/cli)。 ### 安装 Conda Conda是一个包管理的环境。你可以前往 [minicoda](https://docs.conda.io/en/latest/miniconda.html) 去下载并安装 conda(请下载 py>=3.7 的版本)。 然后你需要安装 `paddlespeech` 的 conda 依赖: ```bash conda install -y -c conda-forge sox libsndfile bzip2 ``` ### 安装 C++ 编译环境 (如果你系统上已经安装了 C++ 编译环境,请忽略这一步。) #### Windows 对于 Windows 系统,需要安装 `Visual Studio` 来完成 C++ 编译环境的安装。 https://visualstudio.microsoft.com/visual-cpp-build-tools/ 你可以前往讨论区[#1195](https://github.com/PaddlePaddle/PaddleSpeech/discussions/1195)获取更多帮助。 #### Mac ```bash brew install gcc ``` #### Linux ```bash # centos sudo yum install gcc gcc-c++ ``` ```bash # ubuntu sudo apt install build-essential ``` ```bash # Others conda install -y -c gcc_linux-64=8.4.0 gxx_linux-64=8.4.0 ``` ### 安装 PaddleSpeech 部分用户系统由于默认源的问题,安装中会出现kaldiio安转出错的问题,建议首先安装pytest-runner: ```bash pip install pytest-runner -i https://pypi.tuna.tsinghua.edu.cn/simple ``` 然后你可以使用如下命令: ```bash pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple pip install paddlespeech -i https://pypi.tuna.tsinghua.edu.cn/simple ``` 你也可以安装指定版本的paddlepaddle,或者安装 develop 版本。 ```bash # 安装2.3.1版本. 注意:2.3.1只是一个示例,请按照对paddlepaddle的最小依赖进行选择。 pip install paddlepaddle==2.3.1 -i https://mirror.baidu.com/pypi/simple # 安装 develop 版本 pip install paddlepaddle==0.0.0 -f https://www.paddlepaddle.org.cn/whl/linux/cpu-mkl/develop.html ``` > 如果您在使用 paddlespeech 的过程中遇到关于下载 **nltk_data** 的问题,可能是您的网络不佳,我们建议您下载我们提供的 [nltk_data](https://paddlespeech.bj.bcebos.com/Parakeet/tools/nltk_data.tar.gz) 并解压缩到您的 `${HOME}` 目录下。 > 如果出现 paddlespeech-ctcdecoders 无法安装的问题,无须担心,这个只影响 deepspeech2 模型的推理,不影响其他模型的使用。 ## 中等: 获取主要功能(支持 Linux, Mac 和 Windows 不支持训练) 如果你想要使用 `paddlespeech` 的主要功能。你需要完成以下几个步骤 ### Git clone PaddleSpeech 你需要先 git clone 本仓库 ```bash git clone https://github.com/PaddlePaddle/PaddleSpeech.git cd PaddleSpeech ``` ### 安装 Conda Conda 是一个包管理的环境。你可以前往 [minicoda](https://docs.conda.io/en/latest/miniconda.html) 去下载并安装 conda(请下载 py>=3.7 的版本)。windows 系统可以使用 conda 的向导安装,linux 和 mac 可以使用以下的命令: ```bash # 下载 miniconda wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -P tools/ # 安装 miniconda bash tools/Miniconda3-latest-Linux-x86_64.sh -b # conda 初始化 $HOME/miniconda3/bin/conda init # 激活 conda bash ``` 然后你可以创建一个 conda 的虚拟环境: ```bash conda create -y -p tools/venv python=3.8 ``` 激活 conda 虚拟环境: ```bash conda activate tools/venv ``` 安装 `paddlespeech` 的 conda 依赖: ```bash conda install -y -c conda-forge sox libsndfile swig bzip2 ``` ### 安装 C++ 编译环境 (如果你系统上已经安装了 C++ 编译环境,请忽略这一步。) 你可以使用如下的步骤来安装 C++ 的编译环境 `gcc` 和 `gxx`: ```bash # centos sudo yum install gcc gcc-c++ ``` ```bash # ubuntu sudo apt install build-essential ``` ```bash # Others conda install -y -c gcc_linux-64=8.4.0 gxx_linux-64=8.4.0 ``` (提示: 如果你想使用**困难**方式完成安装,请不要使用最后一条命令) ### 安装 PaddlePaddle 你可以根据系统配置选择 PaddlePaddle 版本,例如系统使用 CUDA 10.2, CuDNN7.6,你可以安装 paddlepaddle-gpu 2.4.1: ```bash # 注意:2.4.1 只是一个示例,请按照对paddlepaddle的最小依赖进行选择。 python3 -m pip install paddlepaddle-gpu==2.4.1 -i https://mirror.baidu.com/pypi/simple ``` 你也可以安装 develop 版本的PaddlePaddle. 例如系统使用 CUDA 10.2, CuDNN7.6 ,你可以安装 paddlepaddle-gpu develop: ```bash python3 -m pip install paddlepaddle-gpu==0.0.0.post102 -f https://www.paddlepaddle.org.cn/whl/linux/gpu/develop.html ``` ### 安装 PaddleSpeech 最后安装 `paddlespeech`,这样你就可以使用 `paddlespeech` 中已有的 examples: ```bash # 部分用户系统由于默认源的问题,安装中会出现 kaldiio 安转出错的问题,建议首先安装pytest-runner: pip install pytest-runner -i https://pypi.tuna.tsinghua.edu.cn/simple # 请确保目前处于PaddleSpeech项目的根目录 pip install . -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ## 困难: 获取所有功能(支持 Ubuntu) ### 先决条件 - Ubuntu >= 16.04 - 选择 1: 使用`Ubuntu` docker。 - 选择 2: 使用`Ubuntu` ,并且拥有 root 权限。 为了避免各种环境配置问题,我们非常推荐你使用 docker 容器。如果你不想使用 docker,但是可以使用拥有 root 权限的 Ubuntu 系统,你也可以完成**困难**方式的安装。 ### 选择1: 使用 Docker 容器(推荐) Docker 是一种开源工具,用于在和系统本身环境相隔离的环境中构建、发布和运行各类应用程序。如果您没有 Docker 运行环境,请参考 [Docker 官网](https://www.docker.com/)进行安装,如果您准备使用 GPU 版本镜像,还需要提前安装好 [nvidia-docker](https://github.com/NVIDIA/nvidia-docker) 。 我们提供了包含最新 PaddleSpeech 代码的 docker 镜像,并预先安装好了所有的环境和库依赖,您只需要**拉取并运行 docker 镜像**,无需其他任何额外操作,即可开始享用 PaddleSpeech 的所有功能。 在 [Docker Hub](https://hub.docker.com/repository/docker/paddlecloud/paddlespeech) 中获取这些镜像及相应的使用指南,包括 CPU、GPU、ROCm 版本。 如果您对自动化制作 docker 镜像感兴趣,或有自定义需求,请访问 [PaddlePaddle/PaddleCloud](https://github.com/PaddlePaddle/PaddleCloud/tree/main/tekton) 做进一步了解。 完成这些以后,你就可以在 docker 容器中执行训练、推理和超参 fine-tune。 ### 选择2: 使用有 root 权限的 Ubuntu - 使用apt安装 `build-essential` ```bash sudo apt install build-essential ``` - 克隆 `PaddleSpeech` 仓库 ```bash git clone https://github.com/PaddlePaddle/PaddleSpeech.git # 进入PaddleSpeech目录 cd PaddleSpeech ``` ### 安装 Conda ```bash # 下载 miniconda wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -P tools/ # 安装 miniconda bash tools/Miniconda3-latest-Linux-x86_64.sh -b # conda 初始化 $HOME/miniconda3/bin/conda init # 激活 conda bash # 创建 Conda 虚拟环境 conda create -y -p tools/venv python=3.8 # 激活 Conda 虚拟环境: conda activate tools/venv # 安装 Conda 包 conda install -y -c conda-forge sox libsndfile swig bzip2 libflac bc ``` ### 安装 PaddlePaddle 请确认你系统是否有 GPU,并且使用了正确版本的 paddlepaddle。例如系统使用 CUDA 10.2, CuDNN7.6 ,你可以安装 paddlepaddle-gpu 2.4.1: ```bash # 注意:2.4.1 只是一个示例,请按照对paddlepaddle的最小依赖进行选择。 python3 -m pip install paddlepaddle-gpu==2.4.1 -i https://mirror.baidu.com/pypi/simple ``` 你也可以安装 develop 版本的PaddlePaddle. 例如系统使用 CUDA 10.2, CuDNN7.6 ,你可以安装 paddlepaddle-gpu develop: ```bash python3 -m pip install paddlepaddle-gpu==0.0.0.post102 -f https://www.paddlepaddle.org.cn/whl/linux/gpu/develop.html ``` ### 用开发者模式安装 PaddleSpeech 部分用户系统由于默认源的问题,安装中会出现 kaldiio 安转出错的问题,建议首先安装 pytest-runner: ```bash pip install pytest-runner -i https://pypi.tuna.tsinghua.edu.cn/simple ``` 然后安装 PaddleSpeech: ```bash pip install -e .[develop] -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ### 安装 Kaldi(可选) ```bash pushd tools bash extras/install_openblas.sh bash extras/install_kaldi.sh popd ```