38 lines
1.4 KiB
Bash
38 lines
1.4 KiB
Bash
#!/usr/bin/env bash
|
|||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||
|
|
models_dir="$repo_root/models"
|
||
|
|
parakeet_dir="$models_dir/parakeet-tdt-v2"
|
||
|
|
archive_url="https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/sherpa-onnx-nemo-parakeet-tdt-0.6b-v2-int8.tar.bz2"
|
||
|
|
vad_url="https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/silero_vad_v5.onnx"
|
||
|
|
|
||
|
|
command -v curl >/dev/null || { echo "curl is required" >&2; exit 1; }
|
||
|
|
command -v tar >/dev/null || { echo "tar is required" >&2; exit 1; }
|
||
|
|
|
||
|
|
mkdir -p "$models_dir"
|
||
|
|
tmp_dir="$(mktemp -d)"
|
||
|
|
trap 'rm -rf "$tmp_dir"' EXIT
|
||
|
|
|
||
|
|
echo "Downloading Parakeet TDT v2 int8 model..."
|
||
|
|
curl --fail --location --progress-bar "$archive_url" --output "$tmp_dir/parakeet.tar.bz2"
|
||
|
|
tar -xjf "$tmp_dir/parakeet.tar.bz2" -C "$tmp_dir"
|
||
|
|
|
||
|
|
source_dir="$(find "$tmp_dir" -mindepth 1 -maxdepth 1 -type d -name 'sherpa-onnx-nemo-parakeet-tdt-0.6b-v2-int8' -print -quit)"
|
||
|
|
if [[ -z "$source_dir" ]]; then
|
||
|
|
echo "Downloaded archive did not contain the expected Parakeet directory" >&2
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
rm -rf "$parakeet_dir"
|
||
|
|
mkdir -p "$parakeet_dir"
|
||
|
|
cp "$source_dir/encoder.int8.onnx" "$parakeet_dir/"
|
||
|
|
cp "$source_dir/decoder.int8.onnx" "$parakeet_dir/"
|
||
|
|
cp "$source_dir/joiner.int8.onnx" "$parakeet_dir/"
|
||
|
|
cp "$source_dir/tokens.txt" "$parakeet_dir/"
|
||
|
|
|
||
|
|
echo "Downloading Silero VAD..."
|
||
|
|
curl --fail --location --progress-bar "$vad_url" --output "$models_dir/silero_vad_v5.onnx"
|
||
|
|
|
||
|
|
echo "Models installed in $models_dir"
|