【语音识别】vLLM 部署 Whisper 语音识别模型指南

目录

[1. 模型下载](#1. 模型下载)

[2. 环境安装](#2. 环境安装)

[3. 部署脚本](#3. 部署脚本)

[4. 服务测试](#4. 服务测试)


语音识别技术在现代人工智能应用中扮演着重要角色,OpenAI开源的Whisper模型以其出色的识别准确率和多语言支持能力成为当前最先进的语音识别解决方案之一。本文将详细介绍如何使用vLLM(一个高效的大模型推理和服务框架)来部署Whisper-large-v3-turbo模型,构建一个可扩展的语音识别API服务。

vLLM是专为大规模语言模型推理优化的服务框架,它通过创新的注意力算法和高效的内存管理,能够显著提升模型推理速度并降低资源消耗。将Whisper与vLLM结合,可以充分发挥两者的优势,为语音识别应用提供高性能、低延迟的服务能力。

1. 模型下载

复制代码
# pip install -U huggingface_hub 
# 国内镜像见 https://hf-mirror.com/
set -x
export HF_ENDPOINT=https://hf-mirror.com 

# https://huggingface.co/openai/whisper-large-v3-turbo
REPO=openai/whisper-large-v3-turbo
huggingface-cli download --resume-download $REPO --local-dir $REPO --exclude "*fp32*"

2. 环境安装

复制代码
# vllm 安装
pip install -U vllm[audio]

# 如果下载太慢,可以尝试清华源
pip config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/

# 以下操作可跳过
# 部署时候如果遇到 ValueError: Model architectures ['WhisperForConditionalGeneration'] failed to be inspected. Please check the logs for more details.
# 则需要执行如下操作,本质上是 flash-attn 与 vllm 内置的 flash-attn 冲突
# https://github.com/vllm-project/vllm/issues/13216
# pip uninstall flash-attn -y

3. 部署脚本

复制代码
# path 为自己的目录
model_path=/path/openai/whisper-large-v3-turbo
model_name=whisper-large-v3-turbo
vllm serve $model_path \
    --served-model-name $model_name \
    --api-key token-abc123 \
    --gpu-memory-utilization 0.9 \
    --host 0.0.0.0 \
    --port 8000 \
    --task transcription \
    --trust-remote-code \
    --enforce-eager

# 部署成功后可以看到 VLLM API server 以及支持的 endpoint/route

4. 服务测试

复制代码
# 使用如下 POST 请求服务,tmp.mp3 为本地文件
curl -X POST "http://0.0.0.0:8000/v1/audio/transcriptions" \
  -H "Content-Type: multipart/form-data" \
  -H "Authorization: Bearer token-abc123" \
  -F file="@tmp.mp3" \
  -F model="whisper-large-v3-turbo" \
  -F language="zh" \
  -F response_format="text"

# 执行后可得到
# {
#   "text": "此存储库实现一个语音到语音集联管道该管道由以下部分组成"
# }

tmp.mp3 已经上传到资源,跳转到文章开头部分下载即可,或者自己录制一个 mp3 也可以。

相关推荐
董厂长3 小时前
langchain :记忆组件混淆概念澄清 & 创建Conversational ReAct后显示指定 记忆组件
人工智能·深度学习·langchain·llm
G皮T6 小时前
【人工智能】ChatGPT、DeepSeek-R1、DeepSeek-V3 辨析
人工智能·chatgpt·llm·大语言模型·deepseek·deepseek-v3·deepseek-r1
九年义务漏网鲨鱼6 小时前
【大模型学习 | MINIGPT-4原理】
人工智能·深度学习·学习·语言模型·多模态
元宇宙时间6 小时前
Playfun即将开启大型Web3线上活动,打造沉浸式GameFi体验生态
人工智能·去中心化·区块链
开发者工具分享6 小时前
文本音频违规识别工具排行榜(12选)
人工智能·音视频
产品经理独孤虾7 小时前
人工智能大模型如何助力电商产品经理打造高效的商品工业属性画像
人工智能·机器学习·ai·大模型·产品经理·商品画像·商品工业属性
老任与码7 小时前
Spring AI Alibaba(1)——基本使用
java·人工智能·后端·springaialibaba
蹦蹦跳跳真可爱5897 小时前
Python----OpenCV(图像増强——高通滤波(索贝尔算子、沙尔算子、拉普拉斯算子),图像浮雕与特效处理)
人工智能·python·opencv·计算机视觉
雷羿 LexChien7 小时前
从 Prompt 管理到人格稳定:探索 Cursor AI 编辑器如何赋能 Prompt 工程与人格风格设计(上)
人工智能·python·llm·编辑器·prompt
两棵雪松8 小时前
如何通过向量化技术比较两段文本是否相似?
人工智能