見出し画像

文字おこしをローカル環境で使いたい(4)

前回、Windows PCでWhisperを使用できる環境を構築しました。今回は、実際にWhisperを使用し、異なるモデルで検証をしていきます。
(個人的な忘備録を兼ねています)


Whisperを使用してみた - Windows編

Whisperをセットアップするまでは、面倒でしたが、実際、セットアップが終わって使用してみると、GPU (正確には、VRAM)があるとないでは、文字おこしの精度が全く違う印象を持ちました。

検証は、Windows上でUbuntuとPythonを仮想環境で動かす形になります。
詳細は、前回の記事を参照してください。

Whisperは、以下のコードで動かします。(コードを活用される場合は、モデル名や音源は、それぞれ適切な物に変換してください。)

>>> import torch
>>> import whisper
>>> model = whisper.load_model("モデル名")
>>> audio = "mnt/c/Users/ユーザー名/Music/音源.mp3"
>>> result = model.transcribe(audio)
>>> print(result["text"])

音源は、MacBook Proで検証に使用した約1時間のミーティング音声を使用します。

自作AI用PC

最初にWhisperのどのモデルでも活用できそうなVRAMを持った自作AI用PCで検証していきます。MacBookでPC負荷が高いことがわかっていたので、そのあたりを中心にみていくことになります。

もうひとつ確認したいことは、Modelを最上位にした場合、文字おこしの精度は、どうなのかという点です。

ここでは、Modelを"large""large-v3"で検証することにします。

モデル"large"の検証

まずは、"large"から試してみます。この"large"は、VRAMのリクエストが10GBとなっています。この時のPC負荷を見ていきます。

モデル"large"を使用した時のグラボの状態

VRAMは、リクエスト値の約10GBを使用しており、Hot Spotの温度が最高で93℃になっています。文字おこしにかかった時間は、約7分でした。

文字おこしの内容については、"medium"よりしっかりと文字にしているという印象です。(より内容がはっきりわかる)

では、次に"large-v3"を試します。このモデルは、VRAMリクエスト値等記載されていなかったので、実際にどのくらいVRAMを使用するのか不明です。

モデル"large-v3"の検証

このモデルを使用した時のPC負荷は、以下になります。

モデル"large-v3"を使用した時のグラボの状態

VRAMは、約17GB使用するようです。一方でHot Spot温度は、90℃位を推移しました。(Max値は、largeでの値)文字おこしの時間は、約5分で若干時間が短縮されています。

文字おこしの内容については、"large"とそう違いがないように感じました。

ゲーミングノートPC

一方、ゲーミングノートPCでは、モデル"medium"と"turbo"を試してみます。"medium"は、MacBookとの比較という意味での検証。"turbo"は、VRAMリクエスト値がこのPCのVRAM搭載量と同じという理由からの検証となります。まずは、"medium"でのGPU状況を見ていきます。

モデル"medium"の検証

モデル"medium"を使用した時のグラボの状態

VRAMは、リクエスト値の5GBに対して、約4.7GBを使用しています。GPUの温度は、75℃付近で推移しています。文字おこしにかかった時間は、約13分でした。文字おこしの内容については、MacBookでmediumを試した時と同様の内容でした。

モデル"turbo"の検証

では、もうひとつのモデル"turbo"を検証していきます。VRAMリクエスト値は、6GBとなっています。

モデル"turbo"を使用した時のグラボの状態

VRAMは、約5.3GBを使用しています。GPU温度も70℃位を推移していました。文字おこしにかかった時間は、約9分でした。文字おこしの内容については、mediumとの違いがよくわからない程度の精度でした。

まとめ

VRAMを持っているPCであれば、文字おこしの生産性が上がることが確認できました。CPUやメモリー使用量も少なかったのですが、ゲーミングノートPCでは、ファンが全開に作動し、音が…。VRAMが6GB程度のGPUがあれば、十分、Whisperを活用できそうなことがわかりました。

今回、検証に使用した音源での文字おこし内容については、公開できるものでないことと、感覚的な精度感でまとめてしまっているので、実際にモデルが異なると、どの程度、精度が変わるのかをしっかり検証したいなと考えています。次回は、そのあたりを検証してみたいと思います。

いいなと思ったら応援しよう!