在Ubuntu服务器上部署faster-whisper服务端

安装Python 3.8或更高版本

确保服务器上安装了Python 3.8或更高版本。如果没有,请先安装:

sudo apt update
sudo apt install python3.8 python3.8-venv python3.8-dev

创建和激活虚拟环境

python3.8 -m venv faster-whisper-env
source faster-whisper-env/bin/activate

安装faster-whisper

pip install faster-whisper

安装Flask和其他依赖

pip install flask

创建一个服务端Python脚本

sudo vim whisper_server.py

让后将下面的代码粘贴进去

from flask import Flask, request, jsonify
from faster_whisper import WhisperModel

app = Flask(__name__)

# 加载本地模型
model_path = "/home/arthur/faster-whisper-large-v3"
model = WhisperModel(model_path, device="cuda", compute_type="float16")

@app.route('/transcribe', methods=['POST'])
def transcribe():
file = request.files['file']
beam_size = int(request.form.get('beam_size', 5))
segments, info = model.transcribe(file, beam_size=beam_size)

result = {
"language": info.language,
"language_probability": info.language_probability,
"transcription": [{"start": s.start, "end": s.end, "text": s.text} for s in segments]
}

return jsonify(result)

if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)

启动服务

python3 whisper_server.py

启动之后你可以看到类似如下的内容打印出来:

在Ubuntu服务器上部署faster-whisper服务端

客户端文件示例

import requests

url = 'http://<your-server-ip>:5000/transcribe'
file_path = 'path_to_your_audio_file.mp3'

with open(file_path, 'rb') as f:
files = {'file': f}
data = {'beam_size': 5}
response = requests.post(url, files=files, data=data)

result = response.json()
print(result)

原创文章,作者:朋远方,如若转载,请注明出处:https://caovan.com/zaiubuntufuwuqishangbushufaster-whisperfuwuduan/.html

Like (0)
Donate 微信扫一扫 微信扫一扫
朋远方的头像朋远方
Previous 2024年6月25日 上午7:55
Next 2024年6月26日 下午5:44

相关推荐

发表回复

Please Login to Comment