mirror of
https://github.com/k2-fsa/icefall.git
synced 2025-08-09 18:12:19 +00:00
95 lines
2.2 KiB
Bash
Executable File
95 lines
2.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -ex
|
|
|
|
python3 -m pip install onnxoptimizer onnxsim
|
|
|
|
log() {
|
|
# This function is from espnet
|
|
local fname=${BASH_SOURCE[1]##*/}
|
|
echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*"
|
|
}
|
|
|
|
cd egs/audioset/AT
|
|
|
|
function test_pretrained() {
|
|
repo_url=https://huggingface.co/marcoyang/icefall-audio-tagging-audioset-zipformer-2024-03-12
|
|
repo=$(basename $repo_url)
|
|
GIT_LFS_SKIP_SMUDGE=1 git clone $repo_url
|
|
pushd $repo/exp
|
|
git lfs pull --include pretrained.pt
|
|
ln -s pretrained.pt epoch-99.pt
|
|
ls -lh
|
|
popd
|
|
|
|
log "test pretrained.pt"
|
|
|
|
python3 zipformer/pretrained.py \
|
|
--checkpoint $repo/exp/pretrained.pt \
|
|
--label-dict $repo/data/class_labels_indices.csv \
|
|
$repo/test_wavs/1.wav \
|
|
$repo/test_wavs/2.wav \
|
|
$repo/test_wavs/3.wav \
|
|
$repo/test_wavs/4.wav
|
|
|
|
log "test jit export"
|
|
ls -lh $repo/exp/
|
|
python3 zipformer/export.py \
|
|
--exp-dir $repo/exp \
|
|
--epoch 99 \
|
|
--avg 1 \
|
|
--use-averaged-model 0 \
|
|
--jit 1
|
|
ls -lh $repo/exp/
|
|
|
|
log "test jit models"
|
|
python3 zipformer/jit_pretrained.py \
|
|
--nn-model-filename $repo/exp/jit_script.pt \
|
|
--label-dict $repo/data/class_labels_indices.csv \
|
|
$repo/test_wavs/1.wav \
|
|
$repo/test_wavs/2.wav \
|
|
$repo/test_wavs/3.wav \
|
|
$repo/test_wavs/4.wav
|
|
|
|
log "test onnx export"
|
|
ls -lh $repo/exp/
|
|
python3 zipformer/export-onnx.py \
|
|
--exp-dir $repo/exp \
|
|
--epoch 99 \
|
|
--avg 1 \
|
|
--use-averaged-model 0
|
|
|
|
ls -lh $repo/exp/
|
|
|
|
pushd $repo/exp/
|
|
mv model-epoch-99-avg-1.onnx model.onnx
|
|
mv model-epoch-99-avg-1.int8.onnx model.int8.onnx
|
|
popd
|
|
|
|
ls -lh $repo/exp/
|
|
|
|
log "test onnx models"
|
|
for m in model.onnx model.int8.onnx; do
|
|
log "$m"
|
|
python3 zipformer/onnx_pretrained.py \
|
|
--model-filename $repo/exp/model.onnx \
|
|
--label-dict $repo/data/class_labels_indices.csv \
|
|
$repo/test_wavs/1.wav \
|
|
$repo/test_wavs/2.wav \
|
|
$repo/test_wavs/3.wav \
|
|
$repo/test_wavs/4.wav
|
|
done
|
|
|
|
log "prepare data for uploading to huggingface"
|
|
dst=/icefall/model-onnx
|
|
mkdir -p $dst
|
|
cp -v $repo/exp/*.onnx $dst/
|
|
cp -v $repo/data/* $dst/
|
|
cp -av $repo/test_wavs $dst
|
|
|
|
ls -lh $dst
|
|
ls -lh $dst/test_wavs
|
|
}
|
|
|
|
test_pretrained
|