当前位置: 首页 > ds >正文

Docker部署whisper转写模型

部署 whisper-asr-webservice 指南
whisper-asr-webservice 是一个将 Whisper 模型封装为 HTTP API 服务的项目,以下是详细的部署方法:

  1. 准备工作
    确保你的系统已安装:

Docker 和 Docker Compose
NVIDIA 驱动和 nvidia-docker(如需 GPU 加速)
2. 快速部署(使用 Docker)
方法一:直接使用预构建镜像


docker run -d --gpus all \-p 9000:9000 \-e ASR_MODEL=medium \-v ~/whisper_models:/root/.cache/whisper \onerahmet/openai-whisper-asr-webservice:latest

方法二:使用 Docker Compose
创建 docker-compose.yml 文件:


version: '3.8'services:whisper-api:image: onerahmet/openai-whisper-asr-webservice:latestdeploy:resources:reservations:devices:- driver: nvidiacount: 1capabilities: [gpu]ports:- "9000:9000"environment:- ASR_MODEL=medium  # 可选: tiny, base, small, medium, large- ASR_LANGUAGE=zh  # 可选: 指定默认语言volumes:- whisper_cache:/root/.cache/whispervolumes:whisper_cache:

然后运行:


docker-compose up -d
  1. 从源码构建部署
    如果你想自定义构建:

git clone https://github.com/ahmetoner/whisper-asr-webservice.git
cd whisper-asr-webservice

构建镜像

docker build -t whisper-service .

运行

docker run -d --gpus all -p 9000:9000 -e ASR_MODEL=large whisper-servicegit clone https://github.com/ahmetoner/whisper-asr-webservice.git
cd whisper-asr-webservice# 构建镜像
docker build -t whisper-service .# 运行
docker run -d --gpus all -p 9000:9000 -e ASR_MODEL=large whisper-service# 报错则换命令执行(显卡驱动限制导致)docker run -d --runtime=nvidia -p 9000:9000 -e ASR_MODEL=large whisper-service

在这里插入图片描述

  1. 使用 API
    服务启动后提供以下端点:

POST /asr - 语音识别


curl -X POST -F "audio_file=@audio.mp3" http://localhost:9000/asr
  • GET /models - 获取可用模型

  • GET /languages - 获取支持语言

示例 Python 调用:


import requestsurl = "http://localhost:9000/asr"
files = {"audio_file": open("audio.mp3", "rb")}
response = requests.post(url, files=files)print(response.json())
  1. 高级配置
    可以通过环境变量配置:

变量名 说明 默认值
ASR_MODEL 模型大小 (tiny,base,small,medium,large) small
ASR_LANGUAGE 默认语言代码 (如 zh, en) auto
ASR_DEVICE 计算设备 (cuda 或 cpu) cuda
ASR_COMPUTE_TYPE 计算类型 (int8, float16 等) 根据设备自动选择
6. 注意事项
首次运行会自动下载模型文件,medium/large 模型较大需要耐心等待
中文识别建议使用 medium 或 large 模型
对于生产环境,建议:
添加认证中间件
使用 Nginx 反向代理
设置资源限制
7. 扩展部署
对于 Kubernetes 部署,可以使用类似的配置,确保正确配置 GPU 资源请求。

如需更复杂的部署方案,可以 fork 项目并根据需要修改代码,特别是 app/main.py 中的 API 逻辑。

在这里插入图片描述

http://www.xdnf.cn/news/17494.html

相关文章:

  • VS Git巨坑合并分支失败导致多项无关改变
  • urmom damn the jvm
  • SqlSugar vs EF Core 对比 2025年 .NET ORM
  • GPT-5深度解析:革命性AI模型的全面报告与实战指南
  • 零基础小白如何使用QGIS制作研究区地形区位图教程
  • 浅试A2A
  • 宁商平台税务升级之路:合规为纲,服务为本
  • SVM算法实战应用
  • ESP32-menuconfig(2) -- Application manager
  • 线程死锁相关知识点
  • 如何在 Ubuntu 24.04 LTS 或 22.04/20.04 上安装 Apache Maven
  • 特征值和特征向量的直觉
  • DeepSeek辅助编写的带缓存检查的数据库查询缓存系统
  • Omron(欧姆龙)SysmacStudio软件下载,定期更新(最新更新到1.63升级包)
  • 软件销售跟进思路
  • 网络基础——网络层级
  • HTML应用指南:利用GET请求获取全国Apple Store 零售店位置信息
  • 内网穿透原理与部署实战指南:从理论到企业级应用
  • pycharm常见环境配置和快捷键
  • 五、SpringBoot工程打包与运行
  • 登录注册前端详细实现 (Angular 15+)
  • AI漫画翻译器-上传图片自动翻译,支持多语言
  • OpenAI 的 GPT-5 来了
  • 提升LLM服务效率的秘密武器——vLLM!
  • 企业本地知识库助手 大模型+本地知识库
  • 五、CV_ResNet
  • 深入理解模板方法模式:框架设计的“骨架”艺术
  • 豆包新模型矩阵+PromptPilot:AI开发效率革命的终极方案
  • Netflix Live架构学习笔记(一)
  • 频谱图学习笔记