whisper.cpp のモデルデータのダウンロードに失敗したあとダウンロードし直す

OpenAI の Speach To Text の Whisper を C/C++ に移植したものがあります.
新しい環境で久しぶりにセットアップしたのですが,モデルデータのダウンロードに失敗したのでメモしておきます.

whisper.cpp でモデルデータのダウンロードにを行うのに make や ./models/download-ggml-model.sh が使えます.

base モデルのダウンロード例
$ make base
$ bash ./models/download-ggml-model.sh base

モデルダウンロード中に失敗してしまうと再度実行してももうファイルあるよと言われすぐダウンロード終了してしまいます.

Model base already exists. Skipping download.

モデルデータはどうなっているかなと探すと最近は models の下に置くようなのでこれを消して再度実行でダウンロードし直せるようです,

$ rm models/ggml-base.bin

こちらに sha1(!) hash があるのでこれと合致しない場合消すようにすると良さそうです.

$ sha1sum models/ggml-base.bin
465707469ff3a37a2b9b8d8f89f2f99de7299dac  models/ggml-base.bin

途中までダウンロードが進んでいる場合,wget コマンドなどで続きからダウンロードすると転送時間が少なくて済みます.
モデルのダウンロードURL は以下などから確認できます.

Note
large が欲しい場合この中に見当たりませんが, large-v3 がそれのようです.
プログレスの + 部分はダウンロード済でレジュームした部分, = が今のセッションでダウンロードした部分
$ wget -c "https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-base.bin?download=true" \
-O models/ggml-medium.bin

--snip--

moodels/ggml-medium.bin                      23%[+++++++++++++======>                                ] 341.88M   632KB/s

安定した環境だと問題ないのでしょうが回線やコンピュータが不安定だったり(ダウンロードしているのを忘れてサスペンドしてしまったり)すると嵌るかもしれません.

環境
$ git log -q -1
commit 6739eb83c3ca5cf40d24c6fe8442a761a1eb6248 (HEAD -> master, origin/master, origin/HEAD)
Author: Georgi Gerganov <ggerganov@gmail.com>
Date:   Sat Jul 27 20:35:04 2024 +0300

    whisper : handle empty mel (#2324)
$ lsb_release -dr
Description:    Debian GNU/Linux trixie/sid
Release:        n/a
$ arch
x86_64

One thought to “whisper.cpp のモデルデータのダウンロードに失敗したあとダウンロードし直す”

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です