summaryrefslogtreecommitdiff
path: root/tools/download-parakeet.sh
blob: cb6fafc93dbdd66a3e228a0e69e514ecf3522d47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/usr/bin/env bash
# Downloads NVIDIA Parakeet TDT 0.6B v3 (int8) plus the Silero VAD model into a
# folder whose layout matches what RECCoon expects on the device.
#
# Usage:
#   ./download-parakeet.sh [output-dir]     (default: ./reccoon-models)
#
# Then copy the output directory to the device, e.g.:
#   adb push reccoon-models/ /sdcard/Android/data/com.wuhei.reccoon/files/models/
set -euo pipefail

OUT="${1:-reccoon-models}"
PARAKEET="https://huggingface.co/csukuangfj/sherpa-onnx-nemo-parakeet-tdt-0.6b-v3-int8/resolve/main"
VAD="https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/silero_vad.onnx"

mkdir -p "$OUT/parakeet-v3"

echo "==> Silero VAD"
curl -L --fail -o "$OUT/silero_vad.onnx" "$VAD"

echo "==> Parakeet v3 (encoder is ~652 MB, this can take a while)"
for file in encoder.int8.onnx decoder.int8.onnx joiner.int8.onnx tokens.txt; do
  echo "  -> $file"
  curl -L --fail -o "$OUT/parakeet-v3/$file" "$PARAKEET/$file"
done

echo
echo "Done. Layout:"
find "$OUT" -type f -printf '  %p  (%s bytes)\n'
echo
echo "On the phone these must live under:"
echo "  /sdcard/Android/data/com.wuhei.reccoon/files/models/"
echo "i.e. .../models/silero_vad.onnx and .../models/parakeet-v3/*.onnx"