faster-whisper-webui

摘要

whisper开源之后,很多相关的衍生产品也开源了,比如faster-whisper,它是一个比whisper转录更快的技术实现,转录速度是whisper的4倍,并且占用的显存更少,占用显存是whisper的1/2。而我们这次要讲的是faster-whisper-webui是内置了VAD的支持,可以很精准的定位到每一句话的开始和结束,对于转录长音视频很有意义,可以防止转录长音视频出现幻听的情况。

1、安装faster-whisper-webui

1.1、faster-whisper-webui简介

faster-whisper-webui顾名思义是faster-whisper的web网页版本,当然它不单有网页版本,也可以通过像whisper的命令行方式启动,最关键的是项目内部已经整合了VAD(VAD是一种音频活动检测的算法,简单来说可以准确的把音频中的每一句话分离开来,这很好的解决了whisper在转录长音频时出现幻听的问题),如果想要了解VAD算法可以点击这里。在faster-whisper-webui中还提供了API接口的方式,我们可以通过任何编程语言调用faster-whisper-webui提供的接口。

该项目原始地址是aadnk/whisper-webui

2、克隆源码

git clone https://github.com/ycyy/faster-whisper-webui.git

3、安装依赖

pip install -r requirements.txt

这里推荐的使用python版本是3.8~3.11,如果你使用的python版本过低或太高,安装以些依赖会发生错误。具体如何升级python版本,大家可以去我的博客中阅读,这里我也给了链接

4、下载模型

先要在项目路径下创建models目录。

mkdir models
cd models

模型里的目录结构如下所示:

├─faster-whisper
│  ├─base
│  ├─large
│  ├─large-v2
│  ├─medium
│  ├─small
│  └─tiny
└─silero-vad
    ├─examples
    │  ├─cpp
    │  ├─microphone_and_webRTC_integration
    │  └─pyaudio-streaming
    ├─files
    └─__pycache__

4.1、下载faster-whisper模型

faster-whisper-webui的项目是基于faster-whisper的,所以我们需要去下载faster-whisper模型,点击这里跳转到模型下载处

这里我以下载large-v2模型为例。

apt install git-lfs
git lfs install
git clone https://huggingface.co/guillaumekln/faster-whisper-large-v2

4.2、下载silero-vad依赖

git clone https://github.com/snakers4/silero-vad.git

5、运行

5.1、命令行方式运行

python cli.py --model large --vad silero-vad --language Chinese audio.mp3

--model:指定使用的模型,可选的模型有:tiny、base、small、medium、large、large-v2

--vad:指定使用的vad类型,常见的vad类型有:silero-vad、silero-vad-skip-gaps、silero-vad-expand-into-gaps、periodic-vad

--language:指定音频中使用的语言

我们还可以指定其它的参数,例如:

python cli.py \
[--vad {none,silero-vad,silero-vad-skip-gaps,silero-vad-expand-into-gaps,periodic-vad}] \
[--vad_merge_window VAD_MERGE_WINDOW] \
[--vad_max_merge_size VAD_MAX_MERGE_SIZE] \
[--vad_padding VAD_PADDING] \
[--vad_prompt_window VAD_PROMPT_WINDOW]
[--vad_cpu_cores NUMBER_OF_CORES]
[--vad_parallel_devices COMMA_DELIMITED_DEVICES]
[--auto_parallel BOOLEAN]

如果你有多张显卡,那么你可以使用--vad_parallel_devices来指定,例如:指定使用两张显卡--vad_parallel_devices 0,1

你也可以使用这个参数--auto_parallel True会自动根据你有多少张显卡,CPU是多少核心的来自动分配(最多支持8个)。

python cli.py --model large --vad silero-vad --language Chinese --auto_parallel True audio.mp3

5.2、网页方式运行

python app.py --input_audio_max_duration -1 --server_name 127.0.0.1 --auto_parallel True

转录之后的结果有三种格式:SRT/VTT/Transcript。

5.3、切换实现方式

有两种实现可以切换,一种是whisper,还有一种是faster-whisper。这里推荐使用faster-whisper,因为速度更快,faster-whisper速度是whisper的4倍,并且占用显存要比whisper少2倍。

如果我们想要用faster-whisper,那么我们需要执行下面的命令来安装faster-whisper依赖。

pip install -r requirements-fasterWhisper.txt

如果我们想要使用whisper,那么我们需要执行下面的命令来安装whisper依赖。

pip install -r requirements-whisper.txt

我们如何切换呢?很简单添加参数即可。

python app.py --whisper_implementation faster-whisper --input_audio_max_duration -1 --server_name 127.0.0.1 --auto_parallel True

当然如果我们嫌弃这种方式太麻烦了,每次启动都要写这么多参数。那么你可以在配置文件中写。找到配置文件config.json5,然后添加你要使用的实现方式即可。

{
    "whisper_implementation": "faster-whisper"
}

6、在Google Colab中运行

具体可以参考这篇文章

7、参考文献

[1] faster-whisper-webui文档

[2] 更换pip源

[3] CentOS安装Whisper

[4] VAD算法详解

  • 22
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 15
    评论
Faster-RCNN是一种用于目标检测的深度学习网络模型。它是在R-CNN和Fast RCNN的基础上发展而来的,通过将特征抽取、proposal提取、bounding box regression和classification整合在一个网络中,提高了综合性能和检测速度。[2] Faster-RCNN的训练过程可以分为以下几个步骤: 1. 使用一个预训练的卷积神经网络(如VGG16)来提取图像的特征。 2. 在特征图上使用Region Proposal Network (RPN) 来生成候选目标框(proposals)。 3. 使用这些候选目标框和真实标签来计算损失函数,并通过反向传播来更新网络参数,以使网络能够更好地预测目标框的位置和类别。 4. 使用训练好的RPN来生成候选目标框,并将这些候选目标框输入到网络中进行分类和边界框回归。 5. 通过计算损失函数并反向传播来更新网络参数,以进一步提高检测性能。 6. 可以进行多次迭代的训练,每次迭代都使用之前训练好的网络来初始化网络参数,并继续训练网络。[3] Faster-RCNN的网络结构包括一个共享的卷积层(用于特征提取)和两个分支:一个用于生成候选目标框的RPN,另一个用于对这些候选目标框进行分类和边界框回归。通过共享卷积层,Faster-RCNN能够在不同尺度的特征图上进行目标检测,从而提高检测的准确性和效率。[2] 总结来说,Faster-RCNN是一种用于目标检测的深度学习网络模型,通过整合特征抽取、proposal提取、bounding box regression和classification,提高了综合性能和检测速度。它的训练过程包括特征提取、候选目标框生成、分类和边界框回归等步骤。[2][3]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值