diff --git a/rust-whisper.d/models/distil.sh b/rust-whisper.d/models/distil.sh new file mode 100644 index 0000000..6c7ff5f --- /dev/null +++ b/rust-whisper.d/models/distil.sh @@ -0,0 +1,31 @@ +#! /bin/bash + +set -ueo pipefail + +cd "$(dirname "$(realpath "$BASH_SOURCE")")" + +if git lfs 2>&1 | grep not.a.git; then + brew install git-lfs +fi + +echo "https://github.com/ggerganov/whisper.cpp/pull/1424" >&2 +if ! test -d ./whisper; then + git clone https://github.com/openai/whisper +fi +if ! test -d ./whisper.cpp; then + git clone https://github.com/ggerganov/whisper.cpp +fi +cd ./whisper.cpp/models + +for name in distil-medium.en; do # distil-large-v2 + if ! test -d ./$name; then + git clone https://huggingface.co/distil-whisper/$name + fi + cd ./$name + git lfs install + git lfs pull + git lfs install + cd .. + python3 ./convert-h5-to-ggml.py ./$name/ ../../whisper . + mv ./ggml-model.bin ../../ggml-$name.bin +done diff --git a/rust-whisper.d/download_models.sh b/rust-whisper.d/models/download_models.sh similarity index 52% rename from rust-whisper.d/download_models.sh rename to rust-whisper.d/models/download_models.sh index dba5e7e..bfd9ea5 100755 --- a/rust-whisper.d/download_models.sh +++ b/rust-whisper.d/models/download_models.sh @@ -1,10 +1,9 @@ #!/bin/bash src="https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml" -d="${1:-"$PWD"/models}" -mkdir -p "$d" +cd "$(dirname "$(realpath "$BASH_SOURCE")")" # Whisper models for model in "tiny.en" "base.en" "small.en" "medium.en"; do - test -f "$d"/ggml-$model.bin || wget --quiet --show-progress -O "$d"/ggml-$model.bin "$src-$model.bin" + test -f ./ggml-$model.bin || wget --quiet --show-progress -O ./ggml-$model.bin "$src-$model.bin" done