MLX - Whisper 教學 - 1

更新於 發佈於 閱讀時間約 4 分鐘

在開始前,請先至 GitHub 上 Clone 相關資源到環境裡。

$ git clone https://github.com/ml-explore/mlx-examples.git

完成後,進入資料夾

$ cd ./mlx-examples/whisper​

裡面有以下資源:

# whisper​
.
|-- whisper # MLX 專用的 whisper 套件
|-- README.md​
|-- benchmark.py # 評估效能
|-- requirements.txt # 環境檔​
`-- test.py # 測試


根據 README 指示,先安裝好 Python 環境,Python 版本筆者是使用 3.9。

pip install -r requirements.txt

接著安裝多媒體轉換函式庫,這邊是使用 macOS 的 brew 來安裝,brew 安裝方法請直接到官網上複製指令到終端機上執行即可,完成後也不要忘記再執行它提示的指令。

brew install ffmpeg

在這邊就完成環境的準備了。


接著,文檔也提供了一個範本,如下

import whisper

text = whisper.transcribe(speech_file)["text"]

把 speech_file 改成檔案物件或是檔案路徑,接著直接執行就會直接開始轉換。


但文件並沒有提到其他的使用方法,因此筆者就翻了一下原始碼...

# ./whisper/whisper/transcribe.py

​def transcribe(
audio: Union[str, np.ndarray, mx.array],
*,
model: str = "tiny",
verbose: Optional[bool] = None,
temperature: Union[float, Tuple[float, ...]] = (0.0, 0.2, 0.4, 0.6, 0.8, 1.0),
compression_ratio_threshold: Optional[float] = 2.4,
logprob_threshold: Optional[float] = -1.0,
no_speech_threshold: Optional[float] = 0.6,
condition_on_previous_text: bool = True,
initial_prompt: Optional[str] = None,
prepend_punctuations: str = "\"'“¿([{-",
append_punctuations: str = "\"'.。,,!!??::”)]}、",
**decode_options,
):

...

發現是有其他常見的選項可以調整,像是:

  • model:tiny, base, small, medium, large,調整模型的大小。
  • verbose:True, False,是否要印出狀態,如果是 True 在轉換時就會一直印出轉好的文字與時間戳。
  • temperature:0.0, 0.2, 0.4, 0.6, 0.8, 1.0,語句的溫度。
  • initial_prompt:起始的文字,可以讓模型預先了解接下來的轉譯內容,若有專有名詞無法被正確辨識,可以先在這邊加上一些提示詞。
  • decode_options:fp16,...。可以改用 16 精度的浮點運算,預設為 32 精度。
  • 語言的部分似乎是自動辨識,一開始會需要約 30 秒來辨識語言。

以下是筆者自己實驗用的程式碼:

import whisper

path = './TEST.mp3'



fileRoot = '/'.join(path.split('/')[:-1])
fileName = path.split('/')[-1].split('.')[0]

text = whisper.transcribe(path, model='medium', verbose=True)["text"]

open(f'{fileRoot}/{fileName}-whisper.txt', 'w').write(text)

將上方的 path 改成自己檔案的路徑再執行,就會看見轉譯的過程,並且完成後會在同一目錄下看到同檔名的 TXT 純文字字幕檔。

留言0
查看全部
avatar-img
發表第一個留言支持創作者!
最近 Apple 為自家晶片推出一項機器學習的框架,稱做「MLX」。API 跟 NumPy, PyTorch, Jax 和 ArrayFire 相似,但最大的不同在於因為是 Apple 自行設計,在 M 系列晶片的「統一記憶體」上能直接計算資料。
最近 Apple 為自家晶片推出一項機器學習的框架,稱做「MLX」。API 跟 NumPy, PyTorch, Jax 和 ArrayFire 相似,但最大的不同在於因為是 Apple 自行設計,在 M 系列晶片的「統一記憶體」上能直接計算資料。
你可能也想看
Google News 追蹤
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
安裝官方 nginx 先在/etc/yum.repos.d新增一個nginx.repo的檔案 並加入以下內容 [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgc
Thumbnail
了解如何使用 Cloudflare Workers AI 與 Whisper 建立免費開源的語音辨識功能。本文詳細說明註冊步驟、部署流程及程式碼修改,讓你輕鬆將語音轉換成文字。
Thumbnail
還記得我們之前介紹過「【Google Colab Python系列】 初探Whisper: 來一段Youtube影片進行語音辨識吧!」這套語音辨識引擎, 那為什麼我們又要教這一套? 因為我們也可以將whisper的模型轉換成onnx的格式, 輕鬆移植到各種平台, 且效能更佳。 語音辨識的熱門組件之
第一步先在Python環境中安裝本次專案需要用到的Library,相關指令如下: !pip install accelerate==0.21.0 !pip install transformers==4.31.0 !pip install tokenizers==0.13.3 !pip insta
Thumbnail
情況描述 我們在「【🔒 Python 先修班】教你親手打包專屬套件庫的手作課(pip install…)」有提到如何打包Python讓自己的程式變成套件, 讓其他人可以用pip install的方式進行安裝,😲 But… 我們實際上打包後, 發現到引用的檔案都有被打包進去,但目錄卻未被打包
Thumbnail
幾個步驟,就能成功在MacBook Air M1安裝Python3和Django!
Thumbnail
本文介紹如何設置OpenAI API密鑰並使用Whisper API轉寫音訊檔案。文章詳細說明了轉寫單個音訊檔案,以及將長音訊分割並轉寫的過程。透過範例演示,讀者可以學習如何將音訊轉寫為文字,提高工作效率。
Thumbnail
本文提供如何使用 Google Colab 結合 Faster Whisper 來提升語音辨識速度與準確性,包含安裝指南與使用方法。探索如何將語音轉換為文本,並對檔案進行不同格式的輸出。
Thumbnail
本篇筆記了如何使用Google Colab和OpenAI的Whisper Large V3進行免費且開源的語音辨識。涵蓋從基礎設定到實際運用的步驟,適合初學者和技術愛好者輕鬆學習語音辨識技術。
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
安裝官方 nginx 先在/etc/yum.repos.d新增一個nginx.repo的檔案 並加入以下內容 [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgc
Thumbnail
了解如何使用 Cloudflare Workers AI 與 Whisper 建立免費開源的語音辨識功能。本文詳細說明註冊步驟、部署流程及程式碼修改,讓你輕鬆將語音轉換成文字。
Thumbnail
還記得我們之前介紹過「【Google Colab Python系列】 初探Whisper: 來一段Youtube影片進行語音辨識吧!」這套語音辨識引擎, 那為什麼我們又要教這一套? 因為我們也可以將whisper的模型轉換成onnx的格式, 輕鬆移植到各種平台, 且效能更佳。 語音辨識的熱門組件之
第一步先在Python環境中安裝本次專案需要用到的Library,相關指令如下: !pip install accelerate==0.21.0 !pip install transformers==4.31.0 !pip install tokenizers==0.13.3 !pip insta
Thumbnail
情況描述 我們在「【🔒 Python 先修班】教你親手打包專屬套件庫的手作課(pip install…)」有提到如何打包Python讓自己的程式變成套件, 讓其他人可以用pip install的方式進行安裝,😲 But… 我們實際上打包後, 發現到引用的檔案都有被打包進去,但目錄卻未被打包
Thumbnail
幾個步驟,就能成功在MacBook Air M1安裝Python3和Django!
Thumbnail
本文介紹如何設置OpenAI API密鑰並使用Whisper API轉寫音訊檔案。文章詳細說明了轉寫單個音訊檔案,以及將長音訊分割並轉寫的過程。透過範例演示,讀者可以學習如何將音訊轉寫為文字,提高工作效率。
Thumbnail
本文提供如何使用 Google Colab 結合 Faster Whisper 來提升語音辨識速度與準確性,包含安裝指南與使用方法。探索如何將語音轉換為文本,並對檔案進行不同格式的輸出。
Thumbnail
本篇筆記了如何使用Google Colab和OpenAI的Whisper Large V3進行免費且開源的語音辨識。涵蓋從基礎設定到實際運用的步驟,適合初學者和技術愛好者輕鬆學習語音辨識技術。