ogochan
先日、Orange Pi 5でWhisper.cppを試してみました。
Whisperにはいろんなバリアントがあって、オリジナルよりも高速と謳ったものもあります。
高速を謳ったバリアントとWhisper.cppと、比べてみたいと思って試しました。
JupyterLabを入れる
こういった「試してみる」系ではREPL環境があると都合が良いですね。
PythonのREPLと言えば、やっぱりJupyterです。
自作の互換品はちょっと大き目の修正を入れているのと、本家が動く環境があると都合がいいので、Orange Pi 5にJupyterLabを入れてみました。
と言っても何も難しいことはなく... 今回はpipで入れています。
$ pip install jupyterlab
$ pip install ipywidgets
難しいことは何もなく、これだけで入ります。何もしなくて良いですね。
実はこの前にPythonが入っているかどうか、あるいはそのバージョンはどうかとゆー確認があるわけですが、特に何もしなくてもVer 3.10.12が入っていました。
$ python --version
Python 3.10.12
$
ただ、これだと「自分の環境」に入っていて単純に起動できないので、
$ export PATH=~/.local/bin:$PATH
という小細工が必要かも知れません。
起動します。
$ jupyter lab
これだとちょっと使い辛いので、私の環境では、
$ jupyter lab --ip=10.1.252.34 --port=8888 --notebook-dir=juputer
というように起動しています。オプションの意味はなんとなくわかるのではないでしょうか。
これで、http://10.1.252.34:8888
にアクセスしてやればJupyterLabにアクセスできます。Jupyterの起動メッセージ中にトークンが出ているので、これを使ってログインすれば使えるようになります。
Faster Whisperのインストール
Faster Whisperのインストールは、Faster WhisperのGitHubに書かれています。
Faster Whisper transcription with CTranslate2
これによると、pip一発のようです。
pip install faster-whisper
これだけです。簡単ですね。
このコマンドはshellに入れても良いですし、Jupyterの中で、
!pip install faster-whisper
でも構いません。
動かしてみる
ドキュメントのUsageを見ながら動かしてみます。まずはこの通りにやってみます。
先日かけたWhisper.cppと同じデータです。ちゃんと変換してくれています。
メインの処理は約3分ほどかかりました。
モデルをsmallにしてやってみます。
こちらは48秒ほどです。
ちなみに、Whisper.cppで50秒ほどだったので、誤差くらいの範囲の時間で処理されています。
まとめ
Faster Whisperは速い速いという話だったので、実は処理速度はもっと顕著な違いが出るんじゃないかと思ってました。
でも、GPUがないせいなのかわかりませんが、誤差程度の速度差だったようです。これなら利用シーンに合わせて選んでしまえば良いと思います。Pythonの方が「本家」なわけですし、Pythonなりの良い面もあるので、選択肢が広がって良いですね。それにどちらでも同じように使えるというのも良いです。
これくらい重そうな処理のあるJupyter notebookがSBCで動かせるというのは、いろいろ便利ですね。