FireRedASR-AED-L一键部署教程:Ubuntu 20.04系统环境配置详解

张开发
2026/4/11 12:15:13 15 分钟阅读

分享文章

FireRedASR-AED-L一键部署教程:Ubuntu 20.04系统环境配置详解
FireRedASR-AED-L一键部署教程Ubuntu 20.04系统环境配置详解想试试最新的语音识别模型但被复杂的依赖和环境配置劝退今天咱们就来聊聊怎么在Ubuntu 20.04上用最简单的方式把FireRedASR-AED-L这个强大的语音识别WebUI给跑起来。你不用再头疼什么CUDA版本、Docker命令跟着这篇教程从系统检查到服务启动一步步带你搞定。就算你之前没怎么接触过Linux或者AI部署也能轻松上手。1. 部署前先看看你的“地基”稳不稳在开始安装任何软件之前检查系统环境就像盖房子前要勘察地质一样重要。这一步做扎实了后面能省去一大堆莫名其妙的报错。1.1 确认你的Ubuntu 20.04系统首先咱们得确认系统版本对不对。打开终端输入下面这条命令lsb_release -a你会看到类似这样的输出No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.6 LTS Release: 20.04 Codename: focal关键看Release: 20.04这一行。如果不是20.04那这篇教程里的部分命令可能就不适用了。Ubuntu 20.04是个长期支持版系统比较稳定很多AI框架和驱动对它支持得也最好。1.2 检查GPU驱动和CUDAFireRedASR-AED-L模型推理需要GPU加速所以咱们的机器上得有NVIDIA显卡并且装好了驱动和CUDA。别被这些名词吓到检查起来很简单。先看看显卡驱动装没装装的是什么版本nvidia-smi这个命令会弹出一个表格最上面一行会显示你的驱动版本和CUDA版本。比如你可能会看到CUDA Version: 11.7。这里显示的CUDA版本是驱动支持的最高版本不一定是你系统里实际安装的。对于FireRedASR-AED-LCUDA 11.0及以上版本通常都可以。接下来检查系统里到底装了哪个版本的CUDA工具包nvcc --version如果这个命令能执行它会输出具体的CUDA编译器版本。如果提示“命令未找到”那说明可能没装CUDA Toolkit或者没配置好环境变量。不过别担心我们后续通过Docker部署很大程度上能规避系统CUDA环境的问题。简单来说只要nvidia-smi命令能正常跑出来看到你的显卡信息就说明驱动基本OK。CUDA环境如果有点小问题Docker会帮我们搞定。2. 搭建标准“集装箱”准备Docker环境Docker就像一个个标准化的集装箱。我们把应用和它所有的依赖比如特定版本的Python库、CUDA打包进一个“集装箱”镜像这样无论搬到哪台支持Docker的机器上都能以同样的方式运行起来彻底解决“在我电脑上好好的”这种问题。2.1 安装Docker引擎Ubuntu 20.04的官方软件源里就有Docker但可能不是最新版。我们按照Docker官方的推荐方式来安装。首先更新一下软件包列表并安装一些必要的工具sudo apt update sudo apt install -y apt-transport-https ca-certificates curl software-properties-common然后添加Docker的官方GPG密钥和软件源curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg echo deb [arch$(dpkg --print-architecture) signed-by/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable | sudo tee /etc/apt/sources.list.d/docker.list /dev/null再次更新软件源并安装Docker引擎sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io安装完成后启动Docker服务并设置成开机自启sudo systemctl start docker sudo systemctl enable docker最后做一个非常关键的操作将当前用户添加到docker用户组。这样以后运行Docker命令就不用每次都加sudo了方便很多。sudo usermod -aG docker $USER注意执行完上面这条命令后你需要完全退出当前终端并重新登录或者重启系统这个分组变更才会生效。你可以新开一个终端窗口试试。验证Docker是否安装成功docker --version看到版本号输出就说明安装好了。2.2 安装NVIDIA Container Toolkit为了让Docker容器能使用宿主机的GPU我们需要安装一个“桥梁”工具也就是NVIDIA Container Toolkit。同样先添加它的软件源和密钥distribution$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list安装工具包sudo apt update sudo apt install -y nvidia-container-toolkit安装后需要重启Docker服务来加载新的配置sudo systemctl restart docker现在你可以运行一个测试命令看看Docker容器能否调用GPUdocker run --rm --gpus all nvidia/cuda:11.7.1-base-ubuntu20.04 nvidia-smi这个命令会下载一个小测试镜像并在容器内运行nvidia-smi。如果一切正常你会看到和在宿主机上运行nvidia-smi一样的显卡信息表格。这说明你的Docker GPU环境已经配置正确了。3. 一键启航使用镜像启动FireRedASR-AED-L环境准备好了最激动人心的部分来了——启动服务。这里我们假设你已经在一个提供了预置镜像的平台上比如星图GPU平台找到了FireRedASR-AED-L的镜像。这种方式是最省心的。3.1 获取并运行镜像通常平台会提供一个现成的镜像名称或拉取命令。假设镜像名为registry.example.com/firered-asr-aed-l:latest。你只需要一条命令docker run -d --name firered-asr \ --gpus all \ -p 7860:7860 \ -v /path/to/your/audio:/app/audio \ registry.example.com/firered-asr-aed-l:latest我来解释一下这条命令的几个关键部分-d让容器在后台运行。--name firered-asr给容器起个名字方便管理。--gpus all把宿主机的所有GPU都分配给这个容器使用。-p 7860:7860端口映射。把容器内部的7860端口WebUI服务通常用的端口映射到宿主机的7860端口。这样你就能通过http://你的服务器IP:7860来访问了。-v /path/to/your/audio:/app/audio数据卷挂载。把宿主机上的一个目录比如你存放音频文件的/home/user/audio_data挂载到容器内的/app/audio目录。这样容器就能读取到你本地的音频文件识别结果也可能写回到这个目录实现数据持久化。最后一行就是镜像名。运行命令后可以用docker ps查看容器是否在运行。第一次运行会下载镜像需要稍等一会儿。3.2 访问WebUI并进行识别容器启动成功后打开你的浏览器访问http://你的服务器IP地址:7860。如果服务就在你本地电脑上那就访问http://127.0.0.1:7860或http://localhost:7860。你应该能看到FireRedASR-AED-L的Web界面。界面通常很直观会有一个区域让你上传音频文件比如WAV、MP3格式然后点击“识别”或“Transcribe”之类的按钮。稍等片刻模型就会把识别出的文字结果显示在页面上。你可以试试不同口音、不同背景噪音的音频感受一下这个模型的识别能力。整个过程不需要你写任何代码交互非常友好。4. 遇到问题别慌常见排错指南部署过程很少一帆风顺下面是一些你可能会遇到的“坑”以及解决办法。问题一运行docker run时提示docker: Error response from daemon: could not select device driver...这通常意味着NVIDIA Container Toolkit没有正确安装或Docker服务没有重启。请按顺序检查确认已执行sudo systemctl restart docker。重新运行安装NVIDIA Container Toolkit部分的测试命令docker run --rm --gpus all nvidia/cuda:11.7.1-base-ubuntu20.04 nvidia-smi看是否成功。问题二访问http://IP:7860打不开页面首先确认容器是否在运行docker ps查看firered-asr容器的状态是否为Up。 其次检查端口是否被占用。宿主机上可能已经有其他程序用了7860端口。你可以用sudo lsof -i:7860查看。如果被占用可以在docker run命令中修改端口映射比如-p 7861:7860然后通过新端口访问。 最后如果服务器有防火墙如UFW需要放行该端口sudo ufw allow 7860。问题三模型识别速度很慢或者日志提示CUDA不可用虽然容器启动了但可能没能成功调用GPU。进入容器内部检查一下docker exec -it firered-asr bash在容器内运行nvidia-smi。如果报错或没有输出显卡信息说明GPU穿透失败。请确保宿主机驱动正常nvidia-smi宿主机可用。docker run命令中包含了--gpus all参数。NVIDIA Container Toolkit安装无误。问题四磁盘空间不足镜像拉取失败Docker镜像和容器运行会占用空间。使用docker system df查看磁盘使用情况。如果空间紧张可以清理无用的镜像、容器和缓存docker system prune -a注意这个命令会删除所有已停止的容器、所有未被使用的网络、所有悬空的镜像以及构建缓存。执行前请确认。5. 写在最后走完这一套流程你应该已经成功在Ubuntu 20.04上把FireRedASR-AED-L的Web服务跑起来了。回顾一下核心其实就是三步检查系统基础尤其是GPU、用Docker把环境标准化、最后用一条命令拉起服务。这种用容器化部署AI应用的方式现在越来越普遍它确实能把人从繁琐的环境配置里解放出来。实际用下来通过WebUI来操作语音识别非常直观上传文件、点击按钮、查看结果门槛很低。如果你需要批量处理音频可以研究一下这个镜像是否提供了API接口那样就能用写脚本的方式自动化完成了。部署过程中如果遇到上面没提到的问题多看看容器的日志docker logs firered-asr里面通常会有详细的错误信息是解决问题的关键线索。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

更多文章