Qwen3-ASR-0.6B在Ubuntu 20.04上的安装与部署保姆级教程

张开发
2026/5/3 9:30:18 15 分钟阅读
Qwen3-ASR-0.6B在Ubuntu 20.04上的安装与部署保姆级教程
Qwen3-ASR-0.6B在Ubuntu 20.04上的安装与部署保姆级教程最近有不少朋友在问有没有一个既轻量又足够好用的语音识别模型能在自己的开发机上快速跑起来。如果你也在找这样的工具那今天聊的Qwen3-ASR-0.6B可能正合你意。它是一个只有6亿参数的开源语音识别模型主打的就是一个“小而美”——部署简单对硬件要求不高但识别效果却相当能打。这篇文章我就手把手带你走一遍在Ubuntu 20.04系统上从零开始把这个模型部署起来的完整过程。咱们不聊复杂的原理就聚焦在“怎么做”上把每一步都掰开揉碎了讲清楚。无论你是想快速搭建一个语音转文字的demo还是为后续的应用开发准备环境跟着这篇教程走半小时内让你看到效果。1. 动手之前理清思路与准备环境在开始敲命令之前咱们先花两分钟把整体思路和需要的东西捋一捋。部署一个AI模型尤其是涉及音频处理的最怕的就是环境依赖出问题。咱们的目标很明确在Ubuntu 20.04这个稳定的系统上搭建一个纯净、可复现的Python环境然后把模型和相关服务跑起来。1.1 你需要准备什么首先确保你手头的机器满足以下基本要求操作系统Ubuntu 20.04 LTS。这是很多生产环境的标配稳定性好社区支持也完善。其他版本理论上也行但可能会遇到不同的依赖问题咱们今天以20.04为准。硬件有个支持CUDA的NVIDIA显卡当然最好识别速度会快很多。但如果没有只用CPU也能跑就是稍微慢点。内存建议8GB以上。网络需要能顺畅访问GitHub和一些模型下载站点因为我们要从网上下载代码和模型文件。软件方面核心是Python和PyTorch。我会带你用conda来管理环境这能最大程度避免包冲突是AI开发者的好习惯。1.2 整体部署流程预览整个过程可以分成四个清晰的阶段咱们一步一步来搭建舞台安装系统必要的工具创建独立的Python虚拟环境。安装主角在虚拟环境里安装PyTorch和模型运行所需的所有Python库。请来模型下载Qwen3-ASR-0.6B的模型文件并放到正确的位置。启动服务运行Web界面用你的声音亲自测试一下效果。思路清晰了那咱们就正式开始吧。2. 第一阶段搭建基础Python环境好的开始是成功的一半。这一步咱们要把系统的基础编译环境和Python管理工具准备好。2.1 更新系统与安装编译工具打开你的终端首先更新一下系统的软件包列表然后安装一些后续编译Python包可能会用到的开发工具。sudo apt update sudo apt upgrade -y sudo apt install -y build-essential curl git wget这几条命令的作用分别是更新软件源、升级已安装的包、安装编译工具链和常用的下载工具。执行起来很快喝口水的时间就好了。2.2 安装Miniconda管理Python环境我强烈推荐使用Miniconda来管理Python环境。它轻量而且能完美解决不同项目间Python版本和库版本冲突的问题。我们下载并安装最新版的Miniconda。下面的命令会下载安装脚本并执行。wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh -b安装过程中一直按回车阅读许可协议最后输入yes同意即可。-b参数表示自动安装不需要交互确认。安装完成后需要让终端识别到conda命令echo export PATH$HOME/miniconda3/bin:$PATH ~/.bashrc source ~/.bashrc现在输入conda --version如果能看到版本号说明安装成功了。2.3 创建专属的虚拟环境接下来我们为Qwen3-ASR模型创建一个独立的“房间”这里我们使用Python 3.10一个兼容性很好的版本。conda create -n qwen_asr python3.10 -y conda activate qwen_asr第一行命令创建了一个名为qwen_asr的新环境并安装了Python 3.10。第二行命令激活了这个环境。你会注意到终端提示符前面变成了(qwen_asr)这表示你已经在这个虚拟环境里了之后所有操作都不会影响系统其他Python项目。3. 第二阶段安装核心依赖与PyTorch环境搭好了现在把模型运行需要的“家具”搬进来最主要的就是PyTorch。3.1 安装PyTorch与相关库访问PyTorch官网获取安装命令是最稳妥的。根据你是否有GPU选择不同的命令。如果你有NVIDIA GPU并且已经安装了CUDA驱动可以通过nvidia-smi命令检查建议安装CUDA版本的PyTorch以加速计算。以CUDA 11.8为例pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118如果你只有CPU或者不想配置CUDA安装CPU版本即可pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu安装完成后可以在Python里简单测试一下import torch print(torch.__version__) print(CUDA可用:, torch.cuda.is_available()) # 如果有GPU这里会显示True3.2 安装模型运行所需的Python包接下来安装Qwen3-ASR模型代码运行所必需的其他库。这些库涵盖了Web服务、音频处理、模型加载等方方面面。pip install transformers accelerate sentencepiece einops scipy gradio简单解释一下这几个包transformersHugging Face的核心库用于加载和运行模型。accelerate帮助优化模型在各类硬件上的运行。sentencepiece分词器依赖。einops一种便于操作张量的工具。scipy科学计算库这里用于音频处理。gradio一个非常方便的库能快速为你的模型构建一个Web交互界面。4. 第三阶段获取模型并准备启动依赖都齐了现在去把“主角”——模型权重文件请过来。4.1 下载模型权重文件Qwen3-ASR的模型通常发布在Hugging Face Model Hub上。我们可以直接用git来克隆仓库这会下载模型权重和相关的配置文件。git clone https://huggingface.co/Qwen/Qwen3-ASR-0.6B cd Qwen3-ASR-0.6B这个仓库可能比较大几个GB下载时间取决于你的网速。如果下载中断可以进入目录后使用git lfs pull继续。4.2 编写一个简单的启动脚本为了更直观地启动服务我们创建一个Python脚本。在Qwen3-ASR-0.6B目录下新建一个文件叫app.py把下面的代码贴进去。import gradio as gr from transformers import AutoModelForSpeechSeq2Seq, AutoProcessor import torch import scipy # 1. 指定模型路径就是当前目录 model_path . # 2. 加载模型和处理器并移动到GPU如果可用 print(正在加载模型请稍候...) model AutoModelForSpeechSeq2Seq.from_pretrained( model_path, torch_dtypetorch.float16, # 使用半精度浮点数节省显存 low_cpu_mem_usageTrue, use_safetensorsTrue ) processor AutoProcessor.from_pretrained(model_path) device cuda:0 if torch.cuda.is_available() else cpu model.to(device) print(f模型已加载至: {device}) # 3. 定义核心的识别函数 def transcribe_audio(audio_file): if audio_file is None: return 请先上传或录制一段音频。 # 读取音频文件 sampling_rate, audio_data scipy.io.wavfile.read(audio_file) # 预处理音频 inputs processor(audio_data, sampling_ratesampling_rate, return_tensorspt) inputs inputs.to(device) # 模型推理 with torch.no_grad(): predicted_ids model.generate(**inputs) # 后处理将ID转换为文字 transcription processor.batch_decode(predicted_ids, skip_special_tokensTrue)[0] return transcription # 4. 创建Gradio交互界面 demo gr.Interface( fntranscribe_audio, inputsgr.Audio(sources[upload, microphone], typefilepath, label上传音频文件或使用麦克风录制), outputsgr.Textbox(label识别结果), titleQwen3-ASR-0.6B 语音识别演示, description上传一个.wav音频文件或直接点击录制按钮说话模型会将其转为文字。 ) # 5. 启动服务 if __name__ __main__: demo.launch(server_name0.0.0.0, server_port7860, shareFalse) # shareFalse表示仅本地访问这个脚本做了几件事加载模型、处理上传的音频、调用模型识别、最后用一个网页界面把输入输出连接起来。5. 第四阶段启动服务与功能测试万事俱备只差最后一步运行它看看效果。5.1 启动WebUI服务确保你的终端当前位于Qwen3-ASR-0.6B目录下并且qwen_asr虚拟环境是激活状态。然后运行我们刚写的脚本python app.py你会看到一些加载信息最后出现一行类似Running on local URL: http://0.0.0.0:7860的输出。这说明服务已经成功启动了。5.2 进行语音识别测试打开你电脑上的浏览器访问http://localhost:7860。你会看到一个简洁的网页界面。现在你可以用两种方式测试上传音频文件点击“上传”区域选择一个.wav格式的音频文件如果其他格式可能需要先转换。支持中文普通话可以试试新闻片段、会议录音等。实时录音点击“使用麦克风录制”允许浏览器使用麦克风然后直接说话说完停止录制。点击“提交”按钮后稍等片刻第一次推理会慢一点因为要加载模型到内存识别结果就会显示在下面的文本框里了。5.3 可能遇到的问题与解决思路部署过程很少一帆风顺这里列举两个最常见的问题和解决办法端口冲突如果7860端口被占用启动时会报错。你可以在app.py的launch()函数里把server_port7860改成其他端口比如7861。显存不足如果使用GPU且显存较小比如小于4GB可能在加载模型时报错。可以尝试在加载模型时使用更低的精度比如将torch_dtypetorch.float16改为torch_dtypetorch.float32或者完全使用CPU模式将脚本中所有.to(device)相关代码注释掉或修改。音频格式问题模型对音频采样率有要求。如果上传的音频识别效果差可以尝试用工具如FFmpeg将其转换为单声道、16kHz采样率的WAV文件。6. 写在最后走完以上所有步骤你应该已经成功在Ubuntu 20.04上搭建起一个本地可用的Qwen3-ASR-0.6B语音识别服务了。整个过程最关键的其实就是环境隔离与依赖管理用conda创建独立环境能避开90%的奇怪错误。这个部署好的服务本身已经是一个可交互的演示工具。但它的价值不止于此你刚写好的app.py脚本其中的模型加载和推理代码完全可以作为你后续开发项目的起点。比如你可以把它集成到你的自动化脚本里或者为它添加批量处理文件的功能。语音识别正在变得无处不在从会议纪要自动生成到智能设备交互都有它的用武之地。现在你手头有了一个可以快速实验、低成本试错的工具接下来怎么玩就看你天马行空的想象力了。如果部署中遇到其他问题多看看终端的报错信息大部分都能通过搜索找到答案。祝你玩得开心获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

更多文章