Ver Fonte

Add test for a smaller model (18.6 M parameters) (#31)

* Add test for a smaller model (18.6 M parameters)

* small fixes
Fangjun Kuang há 2 anos atrás
pai
commit
810f6dea91

+ 72 - 30
.github/scripts/run-test.sh

@@ -13,6 +13,41 @@ echo "PATH: $PATH"
 
 which $EXE
 
+log "------------------------------------------------------------"
+log "Run ConvEmformer transducer (Chinese, small model)"
+log "------------------------------------------------------------"
+repo_url=https://huggingface.co/csukuangfj/sherpa-ncnn-conv-emformer-transducer-2022-12-08
+log "Start testing ${repo_url}"
+repo=$(basename $repo_url)
+log "Download pretrained model and test-data from $repo_url"
+
+GIT_LFS_SKIP_SMUDGE=1 git clone $repo_url
+pushd $repo
+git lfs pull --include "encoder_jit_trace-pnnx-epoch-7-avg-1.ncnn.bin"
+git lfs pull --include "decoder_jit_trace-pnnx-epoch-7-avg-1.ncnn.bin"
+git lfs pull --include "joiner_jit_trace-pnnx-epoch-7-avg-1.ncnn.bin"
+popd
+
+waves=(
+$repo/test_wavs/0.wav
+$repo/test_wavs/1.wav
+$repo/test_wavs/2.wav
+)
+
+for wave in ${waves[@]}; do
+  time $EXE \
+    $repo/tokens.txt \
+    $repo/encoder_jit_trace-pnnx-epoch-7-avg-1.ncnn.param \
+    $repo/encoder_jit_trace-pnnx-epoch-7-avg-1.ncnn.bin \
+    $repo/decoder_jit_trace-pnnx-epoch-7-avg-1.ncnn.param \
+    $repo/decoder_jit_trace-pnnx-epoch-7-avg-1.ncnn.bin \
+    $repo/joiner_jit_trace-pnnx-epoch-7-avg-1.ncnn.param \
+    $repo/joiner_jit_trace-pnnx-epoch-7-avg-1.ncnn.bin \
+    $wave
+done
+
+rm -rf $repo
+
 log "------------------------------------------------------------"
 log "Run LSTM transducer (Chinese)"
 log "------------------------------------------------------------"
@@ -29,23 +64,25 @@ git lfs pull --include "joiner_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.bin"
 popd
 
 waves=(
-./sherpa-ncnn-2022-09-30/test_wavs/0.wav
-./sherpa-ncnn-2022-09-30/test_wavs/1.wav
-./sherpa-ncnn-2022-09-30/test_wavs/2.wav
+$repo/test_wavs/0.wav
+$repo/test_wavs/1.wav
+$repo/test_wavs/2.wav
 )
 
 for wave in ${waves[@]}; do
   time $EXE \
-    ./sherpa-ncnn-2022-09-30/tokens.txt \
-    ./sherpa-ncnn-2022-09-30/encoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.param \
-    ./sherpa-ncnn-2022-09-30/encoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.bin \
-    ./sherpa-ncnn-2022-09-30/decoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.param \
-    ./sherpa-ncnn-2022-09-30/decoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.bin \
-    ./sherpa-ncnn-2022-09-30/joiner_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.param \
-    ./sherpa-ncnn-2022-09-30/joiner_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.bin \
+    $repo/tokens.txt \
+    $repo/encoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.param \
+    $repo/encoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.bin \
+    $repo/decoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.param \
+    $repo/decoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.bin \
+    $repo/joiner_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.param \
+    $repo/joiner_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.bin \
     $wave
 done
 
+rm -rf $repo
+
 log "------------------------------------------------------------"
 log "Run LSTM transducer (English)"
 log "------------------------------------------------------------"
@@ -63,23 +100,24 @@ git lfs pull --include "bar/joiner_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin
 popd
 
 waves=(
-./sherpa-ncnn-2022-09-05/test_wavs/1089-134686-0001.wav
-./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0001.wav
-./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0002.wav
+$repo/test_wavs/1089-134686-0001.wav
+$repo/test_wavs/1221-135766-0001.wav
+$repo/test_wavs/1221-135766-0002.wav
 )
 
 for wave in ${waves[@]}; do
   time $EXE \
-    ./sherpa-ncnn-2022-09-05/tokens.txt \
-    ./sherpa-ncnn-2022-09-05/bar/encoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.param \
-    ./sherpa-ncnn-2022-09-05/bar/encoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin \
-    ./sherpa-ncnn-2022-09-05/bar/decoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.param \
-    ./sherpa-ncnn-2022-09-05/bar/decoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin \
-    ./sherpa-ncnn-2022-09-05/bar/joiner_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.param \
-    ./sherpa-ncnn-2022-09-05/bar/joiner_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin \
+    $repo/tokens.txt \
+    $repo/bar/encoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.param \
+    $repo/bar/encoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin \
+    $repo/bar/decoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.param \
+    $repo/bar/decoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin \
+    $repo/bar/joiner_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.param \
+    $repo/bar/joiner_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin \
     $wave
 done
 
+rm -rf $repo
 
 log "------------------------------------------------------------"
 log "Run ConvEmformer transducer (English)"
@@ -97,23 +135,25 @@ git lfs pull --include "joiner_jit_trace-epoch-30-avg-10-pnnx.ncnn.bin"
 popd
 
 waves=(
-./sherpa-ncnn-conv-emformer-transducer-2022-12-04/test_wavs/1089-134686-0001.wav
-./sherpa-ncnn-conv-emformer-transducer-2022-12-04/test_wavs/1221-135766-0001.wav
-./sherpa-ncnn-conv-emformer-transducer-2022-12-04/test_wavs/1221-135766-0002.wav
+$repo/test_wavs/1089-134686-0001.wav
+$repo/test_wavs/1221-135766-0001.wav
+$repo/test_wavs/1221-135766-0002.wav
 )
 
 for wave in ${waves[@]}; do
   time $EXE \
-    ./sherpa-ncnn-conv-emformer-transducer-2022-12-04/tokens.txt \
-    ./sherpa-ncnn-conv-emformer-transducer-2022-12-04/encoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.param \
-    ./sherpa-ncnn-conv-emformer-transducer-2022-12-04/encoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.bin \
-    ./sherpa-ncnn-conv-emformer-transducer-2022-12-04/decoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.param \
-    ./sherpa-ncnn-conv-emformer-transducer-2022-12-04/decoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.bin \
-    ./sherpa-ncnn-conv-emformer-transducer-2022-12-04/joiner_jit_trace-epoch-30-avg-10-pnnx.ncnn.param \
-    ./sherpa-ncnn-conv-emformer-transducer-2022-12-04/joiner_jit_trace-epoch-30-avg-10-pnnx.ncnn.bin \
+    $repo/tokens.txt \
+    $repo/encoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.param \
+    $repo/encoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.bin \
+    $repo/decoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.param \
+    $repo/decoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.bin \
+    $repo/joiner_jit_trace-epoch-30-avg-10-pnnx.ncnn.param \
+    $repo/joiner_jit_trace-epoch-30-avg-10-pnnx.ncnn.bin \
     $wave
 done
 
+rm -rf $repo
+
 log "------------------------------------------------------------"
 log "Run ConvEmformer transducer (English + Chinese, mixed model)"
 log "------------------------------------------------------------"
@@ -146,3 +186,5 @@ for wave in ${waves[@]}; do
     $repo/joiner_jit_trace-pnnx.ncnn.bin \
     $wave
 done
+
+rm -rf $repo

+ 12 - 10
.github/workflows/aarch64-linux-gnu.yaml

@@ -6,20 +6,22 @@ on:
     branches:
       - master
     paths:
-    - '.github/workflows/aarch64-linux-gnu.yaml'
-    - 'CMakeLists.txt'
-    - 'cmake/**'
-    - 'sherpa-ncnn/csrc/*'
-    - 'toolchains/aarch64-linux-gnu.toolchain.cmake'
+      - '.github/workflows/aarch64-linux-gnu.yaml'
+      - '.github/scripts/test.sh'
+      - 'CMakeLists.txt'
+      - 'cmake/**'
+      - 'sherpa-ncnn/csrc/*'
+      - 'toolchains/aarch64-linux-gnu.toolchain.cmake'
   pull_request:
     branches:
       - master
     paths:
-    - '.github/workflows/aarch64-linux-gnu.yaml'
-    - 'CMakeLists.txt'
-    - 'cmake/**'
-    - 'sherpa-ncnn/csrc/*'
-    - 'toolchains/aarch64-linux-gnu.toolchain.cmake'
+      - '.github/workflows/aarch64-linux-gnu.yaml'
+      - '.github/scripts/test.sh'
+      - 'CMakeLists.txt'
+      - 'cmake/**'
+      - 'sherpa-ncnn/csrc/*'
+      - 'toolchains/aarch64-linux-gnu.toolchain.cmake'
 
 concurrency:
   group: aarch64-linux-gnu-${{ github.ref }}

+ 12 - 10
.github/workflows/arm-linux-gnueabihf.yaml

@@ -6,20 +6,22 @@ on:
     branches:
       - master
     paths:
-    - '.github/workflows/arm-linux-gnueabihf.yaml'
-    - 'CMakeLists.txt'
-    - 'cmake/**'
-    - 'sherpa-ncnn/csrc/*'
-    - 'toolchains/arm-linux-gnueabihf.toolchain.cmake'
+      - '.github/workflows/arm-linux-gnueabihf.yaml'
+      - '.github/scripts/test.sh'
+      - 'CMakeLists.txt'
+      - 'cmake/**'
+      - 'sherpa-ncnn/csrc/*'
+      - 'toolchains/arm-linux-gnueabihf.toolchain.cmake'
   pull_request:
     branches:
       - master
     paths:
-    - '.github/workflows/arm-linux-gnueabihf.yaml'
-    - 'CMakeLists.txt'
-    - 'cmake/**'
-    - 'sherpa-ncnn/csrc/*'
-    - 'toolchains/arm-linux-gnueabihf.toolchain.cmake'
+      - '.github/workflows/arm-linux-gnueabihf.yaml'
+      - '.github/scripts/test.sh'
+      - 'CMakeLists.txt'
+      - 'cmake/**'
+      - 'sherpa-ncnn/csrc/*'
+      - 'toolchains/arm-linux-gnueabihf.toolchain.cmake'
 
 concurrency:
   group: arm-linux-gnueabihf-${{ github.ref }}

+ 2 - 0
.github/workflows/linux-macos-windows.yaml

@@ -6,6 +6,7 @@ on:
       - master
     paths:
       - '.github/workflows/linux-macos-windows.yaml'
+      - '.github/scripts/test.sh'
       - 'CMakeLists.txt'
       - 'cmake/**'
       - 'sherpa-ncnn/csrc/*'
@@ -14,6 +15,7 @@ on:
       - master
     paths:
       - '.github/workflows/linux-macos-windows.yaml'
+      - '.github/scripts/test.sh'
       - 'CMakeLists.txt'
       - 'cmake/**'
       - 'sherpa-ncnn/csrc/*'