news 2026/8/2 23:17:18

Whisper-large-v3快速部署:使用traefik实现多模型服务(Whisper+Qwen)路由

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Whisper-large-v3快速部署:使用traefik实现多模型服务(Whisper+Qwen)路由

Whisper-large-v3快速部署:使用traefik实现多模型服务(Whisper+Qwen)路由

1. 项目概述

今天我们要介绍一个基于OpenAI Whisper Large v3的多语言语音识别Web服务,它支持99种语言的自动检测与转录。这个项目由113小贝二次开发构建,特别适合需要处理多语言语音识别的场景。

核心亮点

  • 支持99种语言自动检测
  • 提供转录和翻译双模式
  • 采用GPU加速推理
  • 可通过Web界面或API调用

2. 环境准备

2.1 硬件要求

资源最低规格推荐规格
GPUNVIDIA RTX 3060 (8GB)NVIDIA RTX 4090 D (23GB)
内存8GB16GB+
存储5GB10GB+
系统Ubuntu 20.04+Ubuntu 24.04 LTS

2.2 软件依赖

# 安装基础依赖 sudo apt-get update && sudo apt-get install -y ffmpeg python3-pip # 安装Python依赖 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 pip install gradio==4.0.0 whisper-web

3. 基础部署

3.1 快速启动服务

# 克隆项目 git clone https://github.com/by113/Whisper-large-v3.git cd Whisper-large-v3 # 启动服务 python3 app.py

服务启动后,可以通过浏览器访问http://localhost:7860使用Web界面。

3.2 服务验证

import whisper # 加载模型 model = whisper.load_model("large-v3", device="cuda") # 测试转录 result = model.transcribe("example/audio.wav", language="zh") print(result["text"])

4. 使用Traefik实现多模型路由

4.1 Traefik安装与配置

# 安装Traefik wget https://github.com/traefik/traefik/releases/download/v2.10.7/traefik_v2.10.7_linux_amd64.tar.gz tar -zxvf traefik_v2.10.7_linux_amd64.tar.gz sudo mv traefik /usr/local/bin/

创建配置文件traefik.yml:

entryPoints: web: address: ":80" websecure: address: ":443" providers: file: filename: "/etc/traefik/rules.yml" watch: true api: dashboard: true insecure: true

4.2 路由规则配置

创建路由规则文件/etc/traefik/rules.yml:

http: routers: whisper: rule: "Host(`whisper.yourdomain.com`)" service: "whisper" entryPoints: - "web" qwen: rule: "Host(`qwen.yourdomain.com`)" service: "qwen" entryPoints: - "web" services: whisper: loadBalancer: servers: - url: "http://localhost:7860" qwen: loadBalancer: servers: - url: "http://localhost:8000"

4.3 启动Traefik服务

# 启动Traefik traefik --configFile=traefik.yml

5. 多模型服务集成

5.1 Whisper服务配置

修改app.py确保服务监听正确端口:

app = gr.Interface( fn=transcribe_audio, inputs=gr.Audio(source="upload", type="filepath"), outputs="text", title="Whisper Large v3 语音识别" ) app.launch(server_name="0.0.0.0", server_port=7860)

5.2 Qwen服务集成

假设我们同时部署了Qwen大模型服务:

# 启动Qwen服务 python -m qwen.serve --server-port 8000

6. 核心功能验证

6.1 Whisper功能测试

通过浏览器访问http://whisper.yourdomain.com应该能看到:

  1. 音频文件上传区域(支持WAV/MP3/M4A/FLAC/OGG)
  2. 麦克风实时录音按钮
  3. 语言自动检测选项
  4. 转录/翻译模式切换

6.2 Qwen功能测试

访问http://qwen.yourdomain.com应该能看到Qwen大模型的交互界面。

7. 性能优化建议

7.1 GPU资源管理

# 监控GPU使用情况 watch -n 1 nvidia-smi # 限制显存使用(在app.py中添加) import torch torch.cuda.set_per_process_memory_fraction(0.8)

7.2 负载均衡配置

对于高并发场景,可以扩展多个实例:

services: whisper: loadBalancer: servers: - url: "http://localhost:7860" - url: "http://localhost:7861" - url: "http://localhost:7862"

8. 常见问题解决

8.1 服务启动问题

问题解决方案
端口冲突修改app.py中的server_port或停止占用端口的进程
CUDA内存不足使用mediumsmall模型版本
FFmpeg缺失运行sudo apt-get install -y ffmpeg

8.2 路由配置问题

# 检查路由规则 curl -H "Host: whisper.yourdomain.com" http://localhost curl -H "Host: qwen.yourdomain.com" http://localhost # 查看Traefik日志 journalctl -u traefik -f

9. 总结

通过本文的部署指南,我们成功实现了:

  1. Whisper-large-v3语音识别服务的快速部署
  2. 使用Traefik实现多模型服务的智能路由
  3. Whisper与Qwen大模型的协同工作环境搭建
  4. 性能监控与优化方案

这种架构特别适合需要同时运行多个AI服务的场景,通过统一的入口管理不同模型,既提高了资源利用率,又简化了访问方式。

获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/14 15:05:01

如何定义一个 IoT 产品的核心用户价值

——面向高级产品负责人的系统方法 目录 一、什么是 IoT 产品的核心用户价值 二、IoT用户价值的三层结构 第一层:功能价值(Functional Value) 第二层:场景价值(Scenario Value) 第三层:情感…

作者头像 李华
网站建设 2026/7/14 15:05:02

AI职业末日图爆火,6000万白领岗危了

【导读】今天,Karpathy一张图爆火全网:AI真的开始「端掉」饭碗了!全美6000万个岗位告急,年薪10万美金白领成高危人群,最稳的竟是水管工。 AI时代的「职场判决书」,6000万人要失业? 昨晚&#…

作者头像 李华
网站建设 2026/7/14 15:05:05

01 spring ai alibaba(SAA1.1.2)基础聊天实现-ChatModel

前置条件 在使用 DashScopeChatModel 之前&#xff0c;你需要&#xff1a; 获取 DashScope API Key&#xff1a;访问 阿里云百炼设置环境变量&#xff1a;export AI_DASHSCOPE_API_KEYyour_api_key 添加依赖 <dependency><groupId>com.alibaba.cloud.ai</gr…

作者头像 李华
网站建设 2026/7/14 15:05:07

APM使用LUA脚本发送实现遥控器PWM信号输出CAN协议信号

需求&#xff1a;由于舵机是CAN总线舵机&#xff0c;需实现APM开源飞控遥控器输入PWM通道到CAN的发送。 方法1&#xff1a;修改APM固件源码&#xff0c;编译&#xff0c;运行&#xff0c;测试。实现复杂。 方法2&#xff1a;使用lua脚本。实现简单 目前采用方法2&#xff0c;使…

作者头像 李华