描述一下网站建设的基本流程,怎么把源码做网站,it培训班出来现状,网站组成元素SenseVoice-Small模型Ubuntu 20.04系统部署全指南#xff1a;从镜像到服务 想快速搭建一个能听懂人说话的AI服务吗#xff1f;今天咱们就来聊聊怎么在Ubuntu 20.04系统上#xff0c;把SenseVoice-Small这个语音识别模型给跑起来。整个过程其实没你想的那么复杂#xff0c;…SenseVoice-Small模型Ubuntu 20.04系统部署全指南从镜像到服务想快速搭建一个能听懂人说话的AI服务吗今天咱们就来聊聊怎么在Ubuntu 20.04系统上把SenseVoice-Small这个语音识别模型给跑起来。整个过程其实没你想的那么复杂跟着步骤走一个小时左右就能搞定。我会把每一步都掰开揉碎了讲就算你之前没怎么接触过Docker或者GPU环境也能轻松上手。1. 部署前先看看你的“地基”牢不牢在开始安装任何东西之前咱们得先确认一下你的Ubuntu 20.04系统是不是准备好了。这就好比盖房子得先看看地基稳不稳。主要检查三样东西系统版本、GPU驱动和CUDA。打开你的终端咱们先来几个简单的命令。首先确认系统版本。lsb_release -a运行后你应该能看到类似Ubuntu 20.04的字样。如果不是那可能得先考虑升级或者重装系统了因为不同版本的系统软件包和依赖可能会有差异。接着看看有没有GPU以及驱动装好了没。对于深度学习模型尤其是语音识别这种有GPU帮忙计算会快很多。检查命令如下nvidia-smi如果这个命令能正常运行并且显示出一张表格里面有你的GPU型号比如NVIDIA GeForce RTX 3090、驱动版本和CUDA版本那就恭喜你这一步已经完成了。如果提示“command not found”那就说明NVIDIA驱动还没装咱们后面会讲到怎么装。最后检查一下Docker。我们这次部署会用到Docker它能帮我们把模型运行需要的所有环境打包好避免各种依赖冲突。检查命令是docker --version同样如果显示了版本号比如Docker version 24.0.7那就没问题。如果没有也不用慌安装步骤很简单。做完这些检查你对自己系统的状态就有了基本了解。接下来我们就针对可能缺失的部分一步步补全。2. 搭建核心环境驱动、CUDA和Docker如果你的检查发现缺了哪部分就从这里开始补。如果都齐了可以快速浏览一下或者直接跳到下一节。2.1 安装NVIDIA驱动和CUDA Toolkit如果你的nvidia-smi命令不管用那咱们就先装驱动。Ubuntu 20.04有个很方便的工具叫ubuntu-drivers。更新软件包列表并安装工具sudo apt update sudo apt install ubuntu-drivers-common自动检测并推荐驱动ubuntu-drivers devices这个命令会列出所有可用的驱动并推荐一个通常后面会标有“recommended”。记住这个推荐的版本号。安装推荐的驱动假设推荐的是nvidia-driver-535那么运行sudo apt install nvidia-driver-535安装完成后一定要重启你的电脑。sudo reboot验证驱动安装重启后再次运行nvidia-smi。这次应该能看到GPU信息了。表格顶部会显示一个CUDA Version比如12.2。这表示你的驱动支持最高到CUDA 12.2。但我们需要安装完整的CUDA Toolkit来获得编译工具和库。安装CUDA Toolkit 11.8很多AI镜像为了兼容性会选择CUDA 11.8。我们去NVIDIA官网找对应版本。 访问NVIDIA CUDA Toolkit存档页面找到适用于Ubuntu 20.04的CUDA 11.8 runfile安装指令。通常类似下面这样wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run sudo sh cuda_11.8.0_520.61.05_linux.run注意运行安装程序时在选项页面记得取消勾选驱动安装Driver因为我们已经装好了。只安装CUDA Toolkit即可。配置环境变量安装完成后把CUDA路径加到系统环境里。编辑你的~/.bashrc文件echo export PATH/usr/local/cuda-11.8/bin:$PATH ~/.bashrc echo export LD_LIBRARY_PATH/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH ~/.bashrc source ~/.bashrc验证安装nvcc --version应该能看到CUDA 11.8的信息。2.2 安装和配置Docker如果之前检查没有Docker现在来安装。卸载旧版本如果有sudo apt remove docker docker-engine docker.io containerd runc设置Docker仓库并安装sudo apt update sudo apt install apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository deb [archamd64] https://download.docker.com/linux/ubuntu focal stable sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io验证Docker安装sudo docker run hello-world如果看到“Hello from Docker!”的欢迎信息说明安装成功。一个重要的设置让Docker能用GPU。默认情况下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 sudo systemctl restart docker测试GPU在Docker中是否可用sudo docker run --rm --gpus all nvidia/cuda:11.8.0-base-ubuntu20.04 nvidia-smi这个命令会启动一个带有CUDA 11.8基础环境的容器并运行nvidia-smi。如果能看到和宿主机一样的GPU信息那就完美了。环境搭建好比备好了灶台、锅和铲子接下来我们就可以开始“烹饪”我们的AI服务了。3. 拉取并运行SenseVoice-Small镜像这里就是最核心的一步了。我们将使用一个已经打包好的镜像里面包含了SenseVoice-Small模型、ONNX运行时以及所有必要的依赖。从镜像仓库拉取镜像假设我们的镜像名字叫sensevoice-small-onnx托管在某个镜像仓库比如registry.example.com/ai-mirrors。拉取命令如下sudo docker pull registry.example.com/ai-mirrors/sensevoice-small-onnx:latest这个过程会下载镜像时间取决于你的网速和镜像大小。喝杯咖啡等待一下。运行镜像启动服务镜像拉取成功后我们用docker run命令让它跑起来。这里有几个关键参数需要解释一下-d让容器在后台运行。--gpus all把宿主机的所有GPU都分配给这个容器使用这是模型加速的关键。-p 8000:8000端口映射。把容器内部的8000端口映射到宿主机的8000端口。这样我们就能通过访问宿主机的8000端口来调用容器里的服务了。--name sensevoice给容器起个名字方便后续管理。完整的运行命令sudo docker run -d --gpus all -p 8000:8000 --name sensevoice registry.example.com/ai-mirrors/sensevoice-small-onnx:latest检查容器是否正常运行sudo docker ps你应该能看到一个名为sensevoice的容器状态STATUS是Up比如Up About a minute。如果状态是Exited可以用sudo docker logs sensevoice查看日志来排查错误。到这一步你的语音识别服务已经在后台默默运行起来了。它就像一个24小时待命的“耳朵”在8000端口等着接收音频数据。4. 试试看你的服务“耳朵”灵不灵服务跑起来了我们得验证一下它是不是真的在工作并且能正确识别语音。通常这类AI服务会提供一个HTTP API接口。健康检查很多服务会提供一个简单的健康检查端点比如/health或/。我们可以用curl命令快速测试curl http://localhost:8000/health或者curl http://localhost:8000/如果返回{status: ok}或类似的JSON消息说明服务进程是健康的。功能测试真正的测试是发送一段音频给它看它能不能转成文字。你需要准备一个音频文件比如test.wav最好是单声道、16kHz采样率的WAV格式这是大多数语音模型的“标配”。假设服务提供了一个/transcribe的API来接收音频。测试命令可能长这样curl -X POST http://localhost:8000/transcribe \ -H Content-Type: multipart/form-data \ -F audio/path/to/your/test.wav-X POST表示用POST方法发送请求。-H设置请求头告诉服务器我们发送的是表单数据。-F用于上传文件audio是接口约定的字段名后面是你的音频文件绝对路径。如果一切顺利你应该会收到一个JSON响应里面包含识别出来的文本大概像这样{ text: 你好世界。这是一个语音识别测试。, language: zh }看到这个就大功告成了你的SenseVoice-Small语音识别服务已经部署成功并且能正常工作了。5. 总结走完这一趟你会发现部署一个AI模型服务并没有想象中那么神秘。关键就是几步准备好系统环境GPU、CUDA、Docker拉取现成的镜像然后运行起来。整个过程最花时间的可能就是下载驱动和镜像真正的操作命令就那么几条。用Docker的好处特别明显它把模型、依赖和环境都打包好了避免了“在我机器上能跑”的尴尬。只要镜像没问题在任何有Docker和GPU的环境里你都能用同样的方式一键启动服务。这次我们用的是别人做好的镜像省去了自己配置模型、转换ONNX格式、搭建服务框架的麻烦。对于快速验证和部署来说这是最高效的方式。如果你后续想修改模型、调整参数或者学习服务是怎么构建的可以再去研究镜像里面的Dockerfile和项目代码。现在你的Ubuntu 20.04服务器上已经有了一个随时可用的语音识别引擎。你可以把它集成到你的应用里比如做实时字幕、会议纪要或者语音助手。下次再需要部署其他AI服务这套流程你也完全可以照搬是不是感觉轻松多了获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。