WSLでWhisper利用する

WSLにUbuntuをインストールしたのでGitHubからWhisperをインストールしてみる。

普段はMBA(M2)を使っているが、個人のwinpcはGPUが積んであるので、whisperの処理速度にどれぐらいの違いがあるかを調べてみたいのがきっかけ。

whisperいれる

リポジトリ

pip install -U openai-whisper

ffmpgも入れるらしい

sudo apt update && sudo apt install ffmpeg

音声データを用意する

この辺参考に。

uploader idの問題でうまくいかない。
issueもできてた

GPTにきいてみる。

youtube-dl がアップロード者IDを抽出できない問題が発生しています。この問題は、YouTubeがWebページの構造を変更したことにより、youtube-dl が正常に情報を取得できなくなったことが原因である可能性があります。

youtube-dlの代替として、yt-dlpを試してみることをお勧めします。yt-dlpは、youtube-dlに基づいて開発されており、より頻繁にアップデートされています。

以下の手順でyt-dlpをインストールしてください:

pipを使用してyt-dlpをインストール:

Copy code
pip install yt-dlp
yt-dlpコマンドを実行して動画をダウンロード:

perl
Copy code
yt-dlp https://www.youtube.com/watch?v=NQ8MWozCI6Q -x --audio-format mp3
この方法で問題が解決することを期待しています。

(関係ないけどGPTからコピペしたらきれいに再現してほしい)

pip install yt-dlp
yt-dlp 'https://www.youtube.com/watch?v=NQ8MWozCI6Q' -x --audio-format mp3

言われた通りこのコマンドを実行したらうまくいった。

実行したディレクトリにMp3がダウンロードされる。
Mvコマンドで適当なファイル名に変更しておくここではsample.mp3に変更した。

$ whisper sample.mp3 --model medium
100%|█████████████████████████████████████| 1.42G/1.42G [01:54<00:00, 13.3MiB/s]
Detecting language using up to the first 30 seconds. Use `--language` to specify the language
Could not load library libcudnn_cnn_infer.so.8. Error: libcuda.so: cannot open shared object file: No such file or directory
Aborted

動かない

このエラーメッセージは、WhisperがCUDA関連のライブラリを見つけられなかったことを示しています。具体的には、libcudnn_cnn_infer.so.8とlibcuda.soが見つかりませんでした。

この問題を解決するために、次の手順を試してみてください:

cuDNNをインストールする: cuDNNは、NVIDIAのDeep Learningライブラリで、GPU上で高速なニューラルネットワークの推論を行うために使用されます。まず、NVIDIA cuDNNのウェブサイトにアクセスして、アカウントを作成し、ダウンロードしてインストールしてください。cuDNNのバージョンは、CUDA Toolkitと互換性があることを確認してください。

環境変数を設定する: インストールしたCUDAとcuDNNのライブラリが見つかるように、環境変数を設定する必要があります。これにより、Whisperがこれらのライブラリを検出してGPUを使用できるようになります。

以下は、環境変数を設定する方法です:

CUDAとcuDNNのインストールディレクトリを確認します。例えば、/usr/local/cudaや/usr/local/cuda-11.2などです。
以下のコマンドを実行して、LD_LIBRARY_PATHにCUDAとcuDNNのライブラリへのパスを追加します。適切なパスに置き換えて実行してください。
bash
Copy code
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
これらの環境変数を永続化するには、~/.bashrcや~/.zshrcファイルに上記のexportコマンドを追加してください。これにより、新しいターミナルセッションでも環境変数が適用されます。
もう一度Whisperのコマンドを実行してください。今回は、GPUが正しく検出されるはずです。
bash
Copy code
whisper sample.mp3 --model medium
これらの手順を実行した後、引き続き問題が発生する場合は、CUDAおよびcuDNNのインストール手順を再確認し、インストールが正しく行われていることを確認してください。

なんか入れろといってきた

ここからDLしてくる。ユーザー登録がひつよう。

DLしたファイルをwslのホームディレクトリにおく

sudo dpkg -i cudnn-local-repo-cross-sbsa-ubuntu2204-8.8.1.3_1.0-1_all.deb

いろいろ入れてみるものの

Could not load library libcudnn_cnn_infer.so.8. Error: libcuda.so: cannot open shared object file: No such file or directory
Aborted

で詰まってしまって、先に進めない… 
GPT4の制限にひっかかってしまったので、一旦ここで公開しとこう。

制限が解除されたら、Ubuntuの環境もまっさらにしてやり直そう。




「番外編」wslで git clone したものってどこにあるの?

GPT-4に聞いてみた。学び。

WSL の /mnt/c/Users/○○○○/whisper ディレクトリは、Windows システム上の C:\Users\○○○○\whisper ディレクトリに対応しています。Windows エクスプローラーで開くには、以下のパスをコピーしてエクスプローラーのアドレスバーに貼り付けてエンターキーを押してください。
これで、whisperディレクトリがエクスプローラーで開かれます。

makefileCopy codeC:\Users\○○○○\whisper

へえーー、なるほど。


この記事が気に入ったらサポートをしてみませんか?