whisperで遊ぶ
今回は,最近話題になっていたOpenAIの音声認識ツールwhisperを使って遊んでみたので,知見を共有します.
実行環境
- Macbook Air (M1)
- macOS Monterey: 12.6.1
- Python3.9.9
- pyenv+virtualenv
- local
セットアップ
基本的には公式に従って進めました.
-
ffmpegのインストールMacOS(brew)に従います.
brew install ffmpeg -
Rustが必要とのこと.それに伴って
setuptools-rustをpip installする.curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh # Rustのインストール pip install setuptools-rust #setuptools-rustのインストール -
Rustをインストールしたのち,
cargoのパスを通す.echo export PATH="$HOME/.cargo/bin:$PATH" >> $HOME/.zshenv -
shellを再起動するか,以下のコマンドを実行する.
source "$HOME/.cargo/bin:$PATH" -
インストール環境が揃ったので,
whisperをpip installする.pip install git+https://github.com/openai/whisper.git
これでwhisperが使えるはず.
コケたポイント
-
5.でgitコマンドの認証に関するエラーを吐く
これに関して自分も引っかかった.具体的には,
cargoコマンドの仕様によるもので,cargoは基本的にはssh-agentを使用して公開鍵認証をパスしてGithubに接続するようです.もちろんssh-agentに秘密鍵を登録しておかないと認証失敗します.従って解決方法は,ssh-agentに秘密鍵を登録する.cargoのオプションを指定して,ssh-agentで認証失敗したらgitコマンドでの取得をトライするようにする.
という二択になります.
-
ssh-agentに秘密鍵を登録する.Githubのssh登録に関しては他のWebサイトに任せます.以下は秘密鍵が
$HOME/path/to/secret.keyにあるとします.ssh-add --apple-use-keychain $HOME/path/to/secret.key※
ssh-addの-Kオプションは--apple-use-keychainに置換えられていくらしい. -
cargoのオプションを指定して,ssh-agentで認証失敗したらgitコマンドでの取得をトライするようにする.$HOME/.cargo/configに以下を加えるだけ.[net] git-fetch-with-cli = true