Эх сурвалжийг харах

Refactor CI tests. (#26)

* Refactor CI tests

* add conv-emformer transducer model tests

* refactor arm tests

* update ncnn
Fangjun Kuang 2 жил өмнө
parent
commit
e58db67f2e

+ 115 - 0
.github/scripts/run-test.sh

@@ -0,0 +1,115 @@
+#!/usr/bin/env bash
+
+set -ex
+
+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]}) $*"
+}
+
+echo "EXE is $EXE"
+echo "PATH: $PATH"
+
+which $EXE
+
+log "------------------------------------------------------------"
+log "Run LSTM transducer (Chinese)"
+log "------------------------------------------------------------"
+repo_url=https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-30
+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-v2-epoch-11-avg-2-pnnx.ncnn.bin"
+git lfs pull --include "decoder_jit_trace-v2-epoch-11-avg-2-pnnx.ncnn.bin"
+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
+)
+
+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 \
+    $wave
+done
+
+log "------------------------------------------------------------"
+log "Run LSTM transducer (English)"
+log "------------------------------------------------------------"
+
+repo_url=https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-05
+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 "bar/encoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin"
+git lfs pull --include "bar/decoder_jit_trace-v2-iter-468000-avg-16-pnnx.ncnn.bin"
+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
+)
+
+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 \
+    $wave
+done
+
+
+log "------------------------------------------------------------"
+log "Run ConvEmformer transducer (English)"
+log "------------------------------------------------------------"
+repo_url=https://huggingface.co/csukuangfj/sherpa-ncnn-conv-emformer-transducer-2022-12-04
+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-epoch-30-avg-10-pnnx.ncnn.bin"
+git lfs pull --include "decoder_jit_trace-epoch-30-avg-10-pnnx.ncnn.bin"
+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
+)
+
+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 \
+    $wave
+done

+ 4 - 77
.github/workflows/aarch64-linux-gnu.yaml

@@ -86,18 +86,6 @@ jobs:
           mkdir $GITHUB_WORKSPACE/toolchain
           tar xvf ./gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz --strip-components 1 -C $GITHUB_WORKSPACE/toolchain
 
-      - name: Download pretrained model and test-data (English)
-        shell: bash
-        run: |
-          git lfs install
-          git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-05
-
-      - name: Download pretrained model and test-data (Chinese)
-        shell: bash
-        run: |
-          git lfs install
-          git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-30
-
       - name: Display toolchain info
         shell: bash
         run: |
@@ -128,69 +116,8 @@ jobs:
           export PATH=$GITHUB_WORKSPACE/qemu-install/bin:$PATH
           export QEMU_LD_PREFIX=$GITHUB_WORKSPACE/toolchain/aarch64-linux-gnu/libc
 
-          time qemu-aarch64 ./build-aarch64-linux-gnu/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1089-134686-0001.wav
-
-          time qemu-aarch64 ./build-aarch64-linux-gnu/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0001.wav
-
-          time qemu-aarch64 ./build-aarch64-linux-gnu/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0002.wav
-
-      - name: Run tests (Chinese)
-        shell: bash
-        run: |
-          export PATH=$GITHUB_WORKSPACE/toolchain/bin:$PATH
-          export PATH=$GITHUB_WORKSPACE/qemu-install/bin:$PATH
-          export QEMU_LD_PREFIX=$GITHUB_WORKSPACE/toolchain/aarch64-linux-gnu/libc
+          export EXE="qemu-aarch64 ./build-aarch64-linux-gnu/bin/sherpa-ncnn"
+
+          ls -lh ./build-aarch64-linux-gnu/bin
 
-          time qemu-aarch64 ./build-aarch64-linux-gnu/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/0.wav
-
-          time qemu-aarch64 ./build-aarch64-linux-gnu/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/1.wav
-
-          time qemu-aarch64 ./build-aarch64-linux-gnu/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/2.wav
+          .github/scripts/run-test.sh

+ 5 - 78
.github/workflows/arm-linux-gnueabihf.yaml

@@ -88,18 +88,6 @@ jobs:
           mkdir $GITHUB_WORKSPACE/toolchain
           tar xvf ./arm-linux-gcc/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf.tar.xz --strip-components 1 -C $GITHUB_WORKSPACE/toolchain
 
-      - name: Download pretrained model and test-data (English)
-        shell: bash
-        run: |
-          git lfs install
-          git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-05
-
-      - name: Download pretrained model and test-data (Chinese)
-        shell: bash
-        run: |
-          git lfs install
-          git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-30
-
       - name: Display toolchain info
         shell: bash
         run: |
@@ -121,7 +109,7 @@ jobs:
           ./build-arm-linux-gnueabihf.sh
 
           ls -lh build-arm-linux-gnueabihf/bin
-          file build-arm-linux-gnueabihf/sherpa-ncnn
+          file build-arm-linux-gnueabihf/bin/sherpa-ncnn
 
       - name: Run tests (English)
         shell: bash
@@ -130,69 +118,8 @@ jobs:
           export PATH=$GITHUB_WORKSPACE/qemu-install/bin:$PATH
           export QEMU_LD_PREFIX=$GITHUB_WORKSPACE/toolchain/arm-linux-gnueabihf/libc
 
-          time qemu-arm ./build-arm-linux-gnueabihf/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1089-134686-0001.wav
-
-          time qemu-arm ./build-arm-linux-gnueabihf/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0001.wav
-
-          time qemu-arm ./build-arm-linux-gnueabihf/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0002.wav
-
-      - name: Run tests (Chinese)
-        shell: bash
-        run: |
-          export PATH=$GITHUB_WORKSPACE/toolchain/bin:$PATH
-          export PATH=$GITHUB_WORKSPACE/qemu-install/bin:$PATH
-          export QEMU_LD_PREFIX=$GITHUB_WORKSPACE/toolchain/arm-linux-gnueabihf/libc
+          export EXE="qemu-arm ./build-arm-linux-gnueabihf/bin/sherpa-ncnn"
+
+          ls -lh ./build-arm-linux-gnueabihf/bin
 
-          time qemu-arm ./build-arm-linux-gnueabihf/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/0.wav
-
-          time qemu-arm ./build-arm-linux-gnueabihf/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/1.wav
-
-          time qemu-arm ./build-arm-linux-gnueabihf/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/2.wav
+          .github/scripts/run-test.sh

+ 6 - 136
.github/workflows/linux-macos-windows.yaml

@@ -43,18 +43,6 @@ jobs:
         if: startsWith(matrix.os, 'windows')
         uses: microsoft/setup-msbuild@v1.0.2
 
-      - name: Download pretrained model and test-data (English)
-        shell: bash
-        run: |
-          git lfs install
-          git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-05
-
-      - name: Download pretrained model and test-data (Chinese)
-        shell: bash
-        run: |
-          git lfs install
-          git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-30
-
       - name: Configure Cmake
         shell: bash
         run: |
@@ -74,69 +62,10 @@ jobs:
       - name: Run tests for ubuntu/macos (English)
         if: startsWith(matrix.os, 'ubuntu') || startsWith(matrix.os, 'macos')
         run: |
-          time ./build/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1089-134686-0001.wav
-
-          time ./build/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0001.wav
-
-          time ./build/bin/sherpa-ncnn \
-            ./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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0002.wav
-
-      - name: Run tests for ubuntu/macos (Chinese)
-        if: startsWith(matrix.os, 'ubuntu') || startsWith(matrix.os, 'macos')
-        run: |
-
-          time ./build/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/0.wav
-
-          time ./build/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/1.wav
+          export PATH=$PWD/build/bin:$PATH
+          export EXE=sherpa-ncnn
 
-          time ./build/bin/sherpa-ncnn \
-                ./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 \
-                ./sherpa-ncnn-2022-09-30/test_wavs/2.wav
+          .github/scripts/run-test.sh
 
       - name: Build sherpa for windows
         if: startsWith(matrix.os, 'windows')
@@ -151,66 +80,7 @@ jobs:
         if: startsWith(matrix.os, 'windows')
         shell: bash
         run: |
-          ./build/bin/Release/sherpa-ncnn.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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1089-134686-0001.wav
-
-          ./build/bin/Release/sherpa-ncnn.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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0001.wav
-
-          ./build/bin/Release/sherpa-ncnn.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 \
-            ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0002.wav
-
-      - name: Run tests for windows (Chinese)
-        if: startsWith(matrix.os, 'windows')
-        shell: bash
-        run: |
-          ./build/bin/Release/sherpa-ncnn.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 \
-              ./sherpa-ncnn-2022-09-30/test_wavs/0.wav
-
-          ./build/bin/Release/sherpa-ncnn.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 \
-              ./sherpa-ncnn-2022-09-30/test_wavs/1.wav
+          export PATH=$PWD/build/bin/Release:$PATH
+          export EXE=sherpa-ncnn.exe
 
-          ./build/bin/Release/sherpa-ncnn.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 \
-              ./sherpa-ncnn-2022-09-30/test_wavs/2.wav
+          .github/scripts/run-test.sh

+ 3 - 0
cmake/kaldi-native-fbank.cmake

@@ -1,6 +1,9 @@
 function(download_kaldi_native_fbank)
   include(FetchContent)
 
+  # If you don't have access to the internet, please download it to your
+  # local drive and modify the following line according to your needs.
+  # set(kaldi_native_fbank_URL  "file:///ceph-fj/fangjun/open-source/sherpa-ncnn/v1.7.tar.gz")
   set(kaldi_native_fbank_URL  "https://github.com/csukuangfj/kaldi-native-fbank/archive/refs/tags/v1.7.tar.gz")
   set(kaldi_native_fbank_HASH "SHA256=7785eb1a95efd4ea46604d1a6681e89a2dd120b5214b9ae4c0d7813a735b33f0")
 

+ 3 - 3
cmake/ncnn.cmake

@@ -7,10 +7,10 @@ function(download_ncnn)
 
   # If you don't have access to the internet, please download it to your
   # local drive and modify the following line according to your needs.
-  # set(ncnn_URL  "file:///ceph-fj/fangjun/372e5f3d0e8b4024e377388b0f336bc4397a2f06.zip")
+  # set(ncnn_URL  "file:///ceph-fj/fangjun/247943a2e6efb58a33eff72dcc6b25d956f6c9bd.zip")
+  set(ncnn_URL "https://github.com/csukuangfj/ncnn/archive/247943a2e6efb58a33eff72dcc6b25d956f6c9bd.zip")
 
-  set(ncnn_URL  "https://github.com/csukuangfj/ncnn/archive/372e5f3d0e8b4024e377388b0f336bc4397a2f06.zip")
-  set(ncnn_HASH "SHA256=1b1bcd510085c5173a1fb1f7d1459690b8919dd2fa527b1140e39d2a820e0ae0")
+  set(ncnn_HASH "SHA256=56b48a168a5037fff0d5066a4e7a7ce4045613c2f37cadd5f0286985e0cd2618")
 
   FetchContent_Declare(ncnn
     URL               ${ncnn_URL}