OSSのWhisperでなぜかパスの設定がうまくいかないです。
解決したいこと
OSSのWhisperを利用しようとしたところ、 パス の設定がうまくいかず、ファイルが見つからないと下記のようなエラーが出てしまう。colabでもgithubの手順に従って実行したが、その時は普通に動作した。何が原因か私には全く見当がつかないので、教えていただけたら幸いです。
発生している問題・エラー
$ python test.py
C:\Users\user1\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\whisper\transcribe.py:114: UserWarning: FP16
is not supported on CPU; using FP32 instead
warnings.warn("FP16 is not supported on CPU; using FP32 instead")
Traceback (most recent call last):
File "C:\folder1\LangChain\WhisperOSS\test.py", line 4, in <module>
result = model.transcribe("audio1.mp3")
File "C:\Users\user1\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\whisper\transcribe.py", line 121, in
transcribe
mel = log_mel_spectrogram(audio, padding=N_SAMPLES)
File "C:\Users\user1\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\whisper\audio.py", line 140, in log_mel_spectrogram
audio = load_audio(audio)
File "C:\Users\user1\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\whisper\audio.py", line 59, in load_audio
out = run(cmd, capture_output=True, check=True).stdout
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 503, in run
with Popen(*popenargs, **kwargs) as process:
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 971, in init
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 1456, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] 指定されたファイルが見つかりません。
該当するソースコード
import whisper
model = whisper.load_model("base")
result = model.transcribe("audio1.mp3")
print(result["text"])
自分で試したこと
- とりあえずパスが違うと出ているので、 ./ , 絶対パス に関して試した。
- また、階層変更してmp3フォルダに移動するなど試してみた。
- mp3ファイルに対するアクセス権限がないためではないかというものがあったので、audio1.mp3のファイルに対するアクセス権限を一旦すべて受け入れるようにしてみた。
- pip install git+https://github.com/openai/whisper.git で、初めはだめだったので、pip install -U openai-whisper の方で試してみたが駄目だった。
- このとき、colabで始めの方を実行した結果、実行が可能であったためローカル環境の設定がおかしいことが正式に判明した。
- あとは、公式にあったREDMEにちらっと、PyTorchがあったのでダメもとで入れてみたがやはりだめであった。