Qwen3-ASR-0.6B部署教程Windows 11 WSLg图形界面GPU直通完整配置语音识别本地化部署新选择6亿参数轻量模型支持中英文混合识别完全离线运行1. 环境准备与系统要求在开始部署之前请确保你的Windows 11系统满足以下要求硬件要求GPUNVIDIA显卡建议RTX 3060 12GB或更高至少8GB显存内存16GB或以上存储至少10GB可用空间用于模型文件和系统环境软件要求Windows 11 22H2或更高版本WSL2Windows Subsystem for Linux 2NVIDIA显卡驱动最新版本CUDA 11.8或更高版本必要组件检查 打开PowerShell管理员权限运行以下命令检查系统状态# 检查WSL状态 wsl --list --verbose # 检查NVIDIA驱动 nvidia-smi # 检查CUDA版本 nvcc --version如果缺少任何组件请先安装或更新相应软件。2. WSLg环境配置步骤2.1 启用WSL和虚拟机平台首先需要启用Windows的WSL功能和虚拟机平台# 以管理员身份打开PowerShell dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart # 重启计算机 Restart-Computer2.2 安装Ubuntu发行版重启后安装Ubuntu 22.04 LTS# 设置WSL2为默认版本 wsl --set-default-version 2 # 安装Ubuntu 22.04 wsl --install -d Ubuntu-22.04安装完成后首次启动Ubuntu时会提示设置用户名和密码。2.3 配置GPU直通支持在Ubuntu环境中配置NVIDIA CUDA支持# 更新系统包 sudo apt update sudo apt upgrade -y # 安装基础依赖 sudo apt install -y python3-pip python3-venv git wget # 安装NVIDIA CUDA工具包 wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600 sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub sudo add-apt-repository deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ / sudo apt update sudo apt install -y cuda-toolkit-12-23. Qwen3-ASR环境部署3.1 创建Python虚拟环境为了避免依赖冲突我们创建独立的Python环境# 创建项目目录 mkdir qwen3-asr cd qwen3-asr # 创建Python虚拟环境 python3 -m venv asr-env source asr-env/bin/activate # 升级pip pip install --upgrade pip3.2 安装依赖包安装运行Qwen3-ASR所需的所有依赖# 安装PyTorch with CUDA支持 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 # 安装语音处理相关库 pip install transformers4.37.0 pip install streamlit1.28.0 pip install librosa soundfile pydub # 安装音频处理工具 sudo apt install -y ffmpeg3.3 下载模型文件下载Qwen3-ASR-0.6B模型权重# 创建模型存储目录 mkdir -p models/qwen3-asr-0.6B # 使用git lfs下载模型需要先安装git-lfs sudo apt install -y git-lfs git lfs install git clone https://huggingface.co/Qwen/Qwen3-ASR-0.6B models/qwen3-asr-0.6B # 如果没有git lfs可以使用wget手动下载 # wget -P models/qwen3-asr-0.6B https://huggingface.co/Qwen/Qwen3-ASR-0.6B/resolve/main/pytorch_model.bin4. Streamlit应用配置4.1 创建应用脚本创建主要的Streamlit应用文件# app.py import streamlit as st import torch from transformers import AutoModelForSpeechSeq2Seq, AutoProcessor import librosa import soundfile as sf import tempfile import os # 设置页面标题和布局 st.set_page_config( page_titleQwen3-ASR 语音识别工具, page_icon️, layoutwide ) # 侧边栏信息 with st.sidebar: st.title(️ Qwen3-ASR-0.6B) st.info( **模型特点** - 6亿参数轻量级语音识别 - 支持中英文自动检测 - GPU加速FP16推理 - 完全本地运行保护隐私 ) def load_model(): 加载语音识别模型 model_path models/qwen3-ASR-0.6B # 使用FP16精度加载模型到GPU model AutoModelForSpeechSeq2Seq.from_pretrained( model_path, torch_dtypetorch.float16, device_mapauto, low_cpu_mem_usageTrue ) processor AutoProcessor.from_pretrained(model_path) return model, processor def transcribe_audio(audio_path, model, processor): 转录音频文件 try: # 加载音频文件 audio, sr librosa.load(audio_path, sr16000) # 处理音频 inputs processor( audio, sampling_rate16000, return_tensorspt, paddingTrue ) # 移动到GPU inputs {k: v.to(model.device) for k, v in inputs.items()} # 生成转录结果 with torch.no_grad(): outputs model.generate(**inputs) # 解码结果 transcription processor.batch_decode( outputs, skip_special_tokensTrue )[0] return transcription except Exception as e: return f识别错误: {str(e)} # 主界面 st.title(Qwen3-ASR 智能语音识别工具) st.write(上传音频文件自动转换为文字内容支持中英文混合识别) # 文件上传 uploaded_file st.file_uploader( 请上传音频文件 (WAV / MP3 / M4A / OGG), type[wav, mp3, m4a, ogg] ) if uploaded_file is not None: # 创建临时文件 with tempfile.NamedTemporaryFile(deleteFalse, suffixos.path.splitext(uploaded_file.name)[1]) as tmp_file: tmp_file.write(uploaded_file.getvalue()) audio_path tmp_file.name # 显示音频播放器 st.audio(uploaded_file) # 识别按钮 if st.button( 开始识别, typeprimary): with st.spinner(模型加载中...): model, processor load_model() with st.spinner(音频识别中...): transcription transcribe_audio(audio_path, model, processor) # 显示结果 st.success(✅ 识别完成) st.text_area( 识别结果, transcription, height200) # 清理临时文件 os.unlink(audio_path) if __name__ __main__: # 预加载模型 if model not in st.session_state: with st.spinner(初始化模型...): st.session_state.model, st.session_state.processor load_model()4.2 创建启动脚本创建方便的启动脚本# run.sh #!/bin/bash source asr-env/bin/activate streamlit run app.py --server.port 8501 --server.address 0.0.0.0给脚本添加执行权限chmod x run.sh5. 运行与测试5.1 启动应用在WSL Ubuntu终端中启动应用cd ~/qwen3-asr ./run.sh启动成功后终端会显示访问地址通常在http://localhost:85015.2 测试语音识别打开浏览器访问显示地址进行测试上传音频文件点击上传按钮选择测试音频预览播放确认音频可以正常播放开始识别点击识别按钮等待处理完成查看结果在文本框中查看识别结果5.3 常见问题解决问题1GPU内存不足# 修改模型加载方式使用更少内存 model AutoModelForSpeechSeq2Seq.from_pretrained( model_path, torch_dtypetorch.float16, device_mapauto, low_cpu_mem_usageTrue, max_memory{0: 6GB} # 限制GPU内存使用 )问题2音频格式不支持# 安装额外的音频处理工具 sudo apt install -y ffmpeg libavcodec-extra问题3WSLg显示问题# 在Windows PowerShell中重置WSL wsl --shutdown wsl -d Ubuntu-22.046. 使用技巧与优化建议6.1 性能优化设置为了获得更好的识别效果和速度可以进行以下优化# 在模型加载时添加优化参数 model AutoModelForSpeechSeq2Seq.from_pretrained( model_path, torch_dtypetorch.float16, device_mapauto, low_cpu_mem_usageTrue, use_flash_attention_2True, # 使用Flash Attention加速 attn_implementationsdpa # 使用SDPA注意力机制 )6.2 批量处理功能如果需要处理多个音频文件可以添加批量处理功能# 添加批量处理选项 uploaded_files st.file_uploader( 选择多个音频文件, type[wav, mp3, m4a, ogg], accept_multiple_filesTrue ) if len(uploaded_files) 1: if st.button(批量处理所有文件): results [] for file in uploaded_files: # 处理每个文件 transcription process_single_file(file) results.append({文件名: file.name, 转写结果: transcription}) # 显示所有结果 st.write(批量处理结果) for result in results: st.text_area(f{result[文件名]}, result[转写结果])6.3 音频预处理建议为了提高识别准确率建议对音频进行预处理采样率统一确保所有音频转换为16kHz采样率音量标准化避免音量过大或过小噪声抑制使用降噪算法处理背景噪声分段处理长音频分割成短片段处理7. 总结通过本教程你已经在Windows 11 WSLg环境下成功部署了Qwen3-ASR-0.6B语音识别工具。这个方案的优势在于主要优点完全本地运行保护音频隐私GPU加速提升处理速度支持中英文混合识别图形化界面易于使用适用场景会议录音转文字学习笔记整理音频内容提取多语言语音处理后续优化方向添加实时语音识别功能支持更多音频格式增加语音翻译能力优化模型推理速度现在你可以开始使用这个强大的本地语音识别工具享受高效、安全的语音转文字服务了。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。