diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml index 0bd8fa81..f1ff7853 100644 --- a/.github/workflows/build-test.yml +++ b/.github/workflows/build-test.yml @@ -70,10 +70,16 @@ jobs: unzip $PACAGE_FILE cd $PACAGE_DIR ./script/model_test.sh ${{ matrix.model }} - - name: windows-test + - name: windows-download if: matrix.os == 'windows-latest' run: | cd workspace 7z x windows-package.zip cd windows-package - ./script/model_test.ps1 ${{ matrix.model }} \ No newline at end of file + echo ${{ matrix.model }} + ./script/model_download.ps1 ${{ matrix.model }} + - name: windows-test + if: matrix.os == 'windows-latest' + run: | + cd build + .\Release\cli_demo -m ..\${{ matrix.model }} \ No newline at end of file diff --git a/include/llm.hpp b/include/llm.hpp index 9f0eba8d..29ab9745 100644 --- a/include/llm.hpp +++ b/include/llm.hpp @@ -50,6 +50,7 @@ class Llm { // gen info int gen_seq_len_ = 0; int all_seq_len_ = 0; + int max_seq_len_ = 256; float load_progress_ = 0.f; private: // MNN Modules diff --git a/src/llm.cpp b/src/llm.cpp index a3a56d6f..a133f903 100644 --- a/src/llm.cpp +++ b/src/llm.cpp @@ -109,7 +109,7 @@ std::string Llm::response(const std::string& query, std::ostream* os) { int token = forward(input_ids); std::string output_str = decode(token); *os << output_str << std::flush; - while (true) { + while (gen_seq_len_ < max_seq_len_) { token = forward({token}); if (is_stop(token)) { *os << std::endl << std::flush;