whisper官网,github,openai推出的自动语音辨識模型

什么是whisper?

Whisper是OpenAI提供的一种自动语音辨識(Automatic Speech Recognition,ASR)系統。它是基于深度学習技術和大規模语音資料集訓练而成的模型,用于將语音轉换為文本。Whisper的目标是提供准确、高质量的语音辨識功能,使用户能够更轻松地處理语音資料并獲取相關信息。

whisper官网: https://openai.com/research/whisper

github專案源碼地址: https://github.com/openai/whisper

huggingface專案源碼地址:

https://huggingface.co/spaces/openai/whisper

whisper論文: https://cdn.openai.com/papers/whisper.pdf

whisper

whisper怎么样?

Open AI的Whisper提供了一款自动语音辨識(Automatic Speech Recognition,ASR)模型,為用户提供语音辨識和翻译的功能。这个模型的核心功能是语音辨識,能够以高准确率將会議錄音等语音内容快速轉化為文本,并且还能进行翻译,并自动生成字幕。最重要的是,Whisper还支持本地運行,無需联网即可进行语音辨識。

🎙️使用Whisper的技巧很简單。用户首先需要进行環境配置和安装,然后可以使用Whisper WebUI进行相關操作。在操作界面上,用户需要選择合适的模型和语言,然后可以粘贴音频的URL或从電腦端/手机端上传音频文件。接下来,用户可以调節语音活性检测(Voice Activity Detector,VAD)的相關参數(對于大于10分鐘的非英文音频,建議選择Silero VAD)。提交后,只需等待一段时间,就可以獲得轉錄的文本以及三种字幕文件的生成。whisper

✨借助Whisper,语音辨識和翻译變得更加便捷高效。無論是整理会議記錄还是處理錄音文件,Whisper都能以出色的准确率將语音轉化為文字,让用户能够轻松查阅和分享信息。此外,Whisper还能為语音文件生成字幕,方便觀看者更好地理解和跟进内容。

🌐而且,Whisper支持本地運行,这意味着用户無需依賴互联网連接,就能享受到優质的语音辨識服務。这一特点使得Whisper成為許多用户的首選工具,無論是个人使用还是商業应用,都能得到高效而可靠的语音辨識体验。

主要功能

Whisper的主要功能是將语音轉化為文本形式,實现自动语音辨識(ASR)。它透過深度学習技術和大規模语音資料集的訓练,具備以下主要功能:

  • 语音轉寫:Whisper可以將錄音、会議、講座等语音内容轉錄為准确的文本形式。这使得用户可以轻松查阅、编輯、搜索和分享语音内容,提高工作效率和信息管理能力。
  • 字幕生成:Whisper能够將影片、電影、演講等場景中的语音内容自动生成字幕。这對于聽力障碍者、跨语言交流和無声環境下的觀看者都非常有帮助,提供了更好的理解和体验。
  • 语音助手:透過將语音输入轉换為文本输出,Whisper可以用于构建语音助手应用程式。用户可以透過语音与应用进行交互,提出問题、發送指令等,實现更直觀、便捷的操作方式。
  • 資料分析和挖掘:將大量的语音資料轉化為文本,可以為資料分析和挖掘提供基礎。用户可以對轉錄文本进行關键词提取、情感分析、主题辨識等操作,从中獲取有价值的信息和洞見。

Whisper 是一种通用的语音辨識模型。它是在包含各种音频的大型資料集上訓练的,也是一个可以执行多语言语音辨識、语音翻译和语言辨識的多任務模型。

方法

whisper

Transformer 序列到序列模型针對各种语音處理任務进行訓练,包括多语言语音辨識、语音翻译、口语辨識和语音活动检测。这些任務共同表示為由解碼器预测的一系列标記,允許單个模型取代传統语音處理管道的多个阶段。多任務訓练格式使用一组特殊标記作為任務說明符或分类目标。

設置

我们使用 Python 3.9.9 和PyTorch 1.10.1 来訓练和测試我们的模型,但代碼库预计將与 Python 3.8-3.11 和最新的 PyTorch 版本兼容。该代碼库还依賴于一些 Python 包,最著名的是OpenAI 的 tiktoken,用于實现快速分词器。您可以使用以下命令下载并安装(或更新到)最新版本的 Whisper:

pip install -U openai-whisper

或者,以下命令將从该存儲库中拉取并安装最新的提交及其 Python 依賴项:

pip install git+https://github.com/openai/whisper.git 

要將軟體包更新到此存儲库的最新版本,请運行:

pip install --upgrade --no-deps --force-reinstall git+https://github.com/openai/whisper.git

ffmpeg它还需要在您的系統上安装命令行工具,大多數包管理器都提供该工具:

# on Ubuntu or Debian
sudo apt update && sudo apt install ffmpeg

# on Arch Linux
sudo pacman -S ffmpeg

# on MacOS using Homebrew (https://brew.sh/)
brew install ffmpeg

# on Windows using Chocolatey (https://chocolatey.org/)
choco install ffmpeg

# on Windows using Scoop (https://scoop.sh/)
scoop install ffmpeg

您可能rust还需要安装,以防tiktoken不為您的平台提供预构建的輪子。如果您在上述命令中看到安装错誤pip install,请按照入門页面安装 Rust 開發環境。此外,您可能需要配置PATH環境變數,例如export PATH="$HOME/.cargo/bin:$PATH". 如果安装失败No module named 'setuptools_rust',则需要安装setuptools_rust,例如透過運行:

pip install setuptools-rust

可用型号和语言

有五种模型尺寸,其中四种只有英文版本,提供速度和准确性權衡。以下是可用型号的名称及其大致的記憶體要求和相對速度。

尺寸 参數 純英文模型 多语言模型 所需顯存 相對速度
微小的 39 米 tiny.en tiny ~1 GB ~32x
根据 74 米 base.en base ~1 GB ~16x
小的 244米 small.en small ~2GB ~6倍
中等的 769米 medium.en medium ~5 GB ~2x
大的 1550 米 不适用 large ~10GB 1x

.en仅英语应用程式的模型往往表现更好,尤其是對于和tiny.en模型base.ensmall.en我们觀察到,對于和模型,差異變得不那么顯着medium.en

Whisper 的性能因语言而異。下圖顯示了使用该模型的 Fleurs 資料集按语言的 WER(單词错誤率)細分large-v2(數字越小,性能越好)。与其他模型和資料集相對应的其他 WER 分數可以在附錄 D.1、D.2 和 D.4 中找到。同时,更多的 BLEU(双语評估替补)分數可以在附錄 D.3 中找到。两者都在論文中找到。

whisper

命令行用法

以下命令將使用medium模型轉錄音频文件中的语音:

whisper audio.flac audio.mp3 audio.wav --model medium

默认設置(選择模型small)适用于轉錄英语。要轉錄包含非英语语音的音频文件,您可以使用以下選项指定语言--language

whisper japanese.wav --language Japanese

添加--task translate会將语音翻译成英文:

whisper japanese.wav --language Japanese --task translate

運行以下命令以查看所有可用選项:

whisper --help

有關所有可用语言的列表,请参見tokenizer.py 。

Python 用法

轉錄也可以在 Python 中执行:

import whisper

model = whisper.load_model("base")
result = model.transcribe("audio.mp3")
print(result["text"])

在内部,该transcribe()方法讀取整个文件并使用滑动的 30 秒窗口處理音频,對每个窗口执行自回歸序列到序列预测。

whisper.detect_language()下面是和的示例用法whisper.decode(),它提供對模型的較低級别訪問。

import whisper

model = whisper.load_model("base")

# load audio and pad/trim it to fit 30 seconds
audio = whisper.load_audio("audio.mp3")
audio = whisper.pad_or_trim(audio)

# make log-Mel spectrogram and move to the same device as the model
mel = whisper.log_mel_spectrogram(audio).to(model.device)

# detect the spoken language
_, probs = model.detect_language(mel)
print(f"Detected language: {max(probs, key=probs.get)}")

# decode the audio
options = whisper.DecodingOptions()
result = whisper.decode(model, mel, options)

# print the recognized text
print(result.text)

数据评估

whisper浏览人数已经达到665,如你需要查询该站的相关权重信息,可以点击"5118数据""爱站数据""Chinaz数据"进入;以目前的网站数据参考,建议大家请以爱站数据为准,更多网站价值评估因素如:whisper的访问速度、搜索引擎收录以及索引量、用户体验等;当然要评估一个站的价值,最主要还是需要根据您自身的需求以及需要,一些确切的数据则需要找whisper的站长进行洽谈提供。如该站的IP、PV、跳出率等!

关于whisper特别声明

本站ai工具百寶箱提供的whisper都来源于网络,不保证外部链接的准确性和完整性,同时,对于该外部链接的指向,不由ai工具百寶箱实际控制,在2025年5月14日 上午3:33收录时,该网页上的内容,都属于合规合法,后期网页的内容如出现违规,可以直接联系网站管理员进行删除,ai工具百寶箱不承担任何责任。

相关导航

暂无评论

暂无评论...