whisper技术部署及简单使用

whisper技术部署及简单使用

    正在检查是否收录...

文章目录

安装ffmpeg(解压模式) 安装python(源码编译模式) 安装pytorch 安装whisper whisper命令行使用 python调用whisper pip包离线导出安装

whisper是openai开源的语音转文字的技术,可以作为国内收费语音转文字相关软件的替代

安装ffmpeg(解压模式)

查看系统架构

dpkg --print-architecture 

下载对应版本的ffmpeg

https://www.johnvansickle.com/ffmpeg/old-releases/

 # 解压 xz -d ffmpeg-5.0.1-amd64-static.tar.xz tar -xvf ffmpeg-5.0.1-amd64-static.tar # 进入解压后的目录 cd ffmpeg-5.0.1-amd64-static/ # 查看版本 ./ffmpeg ./ffprobe 

配置ffmpeg命令全局可用,可以在bin目录加个链接。比如,分别执行如下命令,即可在:/usr/bin目录下创建ffmpegffprobe软链接。

cd /usr/bin ln -s /root/whisper/ffmpeg-5.0.1-amd64-static/ffmpeg ffmpeg ln -s /data/software/ffmpeg-git-20190424-amd64-static/ffprobe ffprobe 

全局查看版本

ffmpeg ffprobe 

安装python(源码编译模式)

https://www.python.org/ftp/python/3.11.4/

卸载python

python3 -V apt list --installed | grep python apt-get remove python3.8.5 apt-get remove --auto-remove python3.8.5 apt-get purge python3.8.5 # 刷新包目录 apt update 

安装python

# 上传压缩包 Python-3.11.4.tar.xz # 安装依赖 apt install build-essential gdb lcov libbz2-dev libffi-dev libgdbm-dev liblzma-dev libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev lzma lzma-dev tk-dev uuid-dev zlib1g-dev # 进入解压后的目录 cd Python-3.11.4 ./configure --prefix=/usr/local/python3 --enable-shared --enable-optimizations # 编译 make # 构建测试 make test # 安装 make install # 清除构建 make clean cd /usr/local/bin ln -s /usr/local/python3/bin/python3 /usr/bin/python3 查看python版本 python3 -V 

安装pytorch

官网 https://pytorch.org/get-started/locally/

Linux查看显卡信息: lspci | grep -i vga 00:02.0 VGA compatible controller: Cirrus Logic GD 5446 使用nvidia GPU可以: lspci | grep -i nvidia 

登陆官网下载对应版本torch,这里用cpu模式

pip3 install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cpu 

安装whisper

不推荐 pip3 install -U openai-whisper==20230314 推荐 pip3 install git+https://github.com/openai/whisper.git 

whisper命令行使用

cd /Users/aiksyuan/yxt/python-workspace/whisper/whisper-doc whisper audio-cn.mp3 --model_dir /root/whisper/models/whisper --language Chinese --model small -o ./ -f srt --device cpu --fp16 False --initial_prompt "以下是普通话的句子。" 各个参数含义可以使用whisper --help查看 

python调用whisper

基本案例

# 这个脚本可以直接输出音频转出的文字。 import whisper model = whisper.load_model("base") result = model.transcribe("I_Have_A_Dream_Speech.mp3",fp16="False") print(result["text"]) 

进阶案例

import whisper from whisper.utils import get_writer import time def test_whisper(model_type, file_path, target_path, file_name): T1 = time.time() model = whisper.load_model( model_type, 'cpu', '/Users/aiksyuan/.cache/whisper') result = model.transcribe(file_path, fp16=False, initial_prompt='以下是普通话的句子') T2 = time.time() print(model_type + "模式" + file_name + '解析所需时间:%s秒' % ((T2 - T1))) writer = get_writer("srt", target_path) writer(result, file_name + '_' + model_type + ".srt", {"highlight_words": True, "max_line_count": 3, "max_line_width": 3}) T3 = time.time() print(model_type + "模式" + file_name + '生成srt文件耗时:%s秒' % ((T3 - T2))) writer2 = get_writer('txt', target_path) writer2(result, file_name + '_' + model_type + '.txt', {}) T4 = time.time() print(model_type + "模式" + file_name + '生成txt文件耗时:%s秒' % ((T4 - T3))) if __name__ == '__main__': models = ['base', 'small', 'medium'] for model_type in models: # test_whisper(model_type, 'audio/audio.mp3', "audio/", "audio") # test_whisper(model_type, '踏山河/踏山河.mp3', "踏山河/", "踏山河") test_whisper(model_type, 't1/1.m4a', "t1/", "1") # test_whisper(model_type, '红日/红日.mp3', "红日/", "红日") # test_whisper(model_type, 'test001/test001.mp4', "test001/", "test001") # test_whisper(model_type, 'test001/2m.mp4', "test001/", "2m") 

pip包离线导出安装

pip3 install wheel mkdir packs cd packs 导出环境中的所有第三方包 pip3 freeze > requirements.txt python导出依赖成whl文件 pip3 wheel -r requirements.txt 离线批量安装包 pip3 install --no-index --find-links=/packs/ -r requirements.txt 

codewhisperpythonwritermp3gitcpupytorchopenai命令行语音转文字prompturlgpunvidia gpulinuxsharemediumgithubsqlworddreamdocfix
  • 本文作者:WAP站长网
  • 本文链接: https://wapzz.net/post-2486.html
  • 版权声明:本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。
本站部分内容来源于网络转载,仅供学习交流使用。如涉及版权问题,请及时联系我们,我们将第一时间处理。
文章很赞!支持一下吧 还没有人为TA充电
为TA充电
还没有人为TA充电
0
0
  • 支付宝打赏
    支付宝扫一扫
  • 微信打赏
    微信扫一扫
感谢支持
文章很赞!支持一下吧
关于作者
2.8W+
9
1
2
WAP站长官方

让3D编辑像PS一样简单,新算法GaussianEditor在几分钟内完成3D场景增删改

上一篇

Runway和Getty宣布合作开发新生成式AI视频模型RGM

下一篇
  • 复制图片
按住ctrl可打开默认菜单