Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

enable tests for new-llm #10346

Closed
wants to merge 40 commits into from
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
6cee70a
enable tests for ipex-llm
liu-shaojun Mar 8, 2024
9f145aa
checkout analytics-zoo/bigdl-llm-internal
liu-shaojun Mar 8, 2024
27da178
echo
liu-shaojun Mar 10, 2024
24ef2d1
update
liu-shaojun Mar 10, 2024
27ca998
update
liu-shaojun Mar 10, 2024
b0b4df0
pip install pytest
liu-shaojun Mar 10, 2024
e7041d8
update
liu-shaojun Mar 10, 2024
f653cd1
update
liu-shaojun Mar 10, 2024
92e734c
update
liu-shaojun Mar 10, 2024
09209a0
update
liu-shaojun Mar 10, 2024
f07f251
update
liu-shaojun Mar 10, 2024
9dd02b3
enable performance test
liu-shaojun Mar 13, 2024
abfb535
only run ut
liu-shaojun Mar 13, 2024
4e9a5e4
Set access token for windows and ubuntu separately
liu-shaojun Mar 13, 2024
e992cdb
fix
liu-shaojun Mar 13, 2024
ed0460e
try
liu-shaojun Mar 13, 2024
c084e07
test token
liu-shaojun Mar 13, 2024
84bfd7d
fix
liu-shaojun Mar 13, 2024
c16aa8c
fix
liu-shaojun Mar 13, 2024
0a59fec
test
liu-shaojun Mar 13, 2024
017b858
update
liu-shaojun Mar 13, 2024
0f8c7e8
update
liu-shaojun Mar 13, 2024
d3bd49b
update
liu-shaojun Mar 13, 2024
f63019c
test
liu-shaojun Mar 13, 2024
9c6d6f8
test
liu-shaojun Mar 13, 2024
86fcf3b
test
liu-shaojun Mar 13, 2024
777fcaa
test
liu-shaojun Mar 13, 2024
9885abe
test
liu-shaojun Mar 13, 2024
26df2a7
update
liu-shaojun Mar 13, 2024
bd748b2
update
liu-shaojun Mar 13, 2024
7e8cfc6
revert
liu-shaojun Mar 13, 2024
ec37265
test
liu-shaojun Mar 13, 2024
8385ae1
test arc transformers 4.31.0
liu-shaojun Mar 14, 2024
34af5c4
update
liu-shaojun Mar 14, 2024
f3d5047
update
liu-shaojun Mar 14, 2024
a635fe9
retrigger
liu-shaojun Mar 14, 2024
8f570de
test iGPU
liu-shaojun Mar 14, 2024
d9e3667
test
liu-shaojun Mar 14, 2024
65c3c86
update
liu-shaojun Mar 14, 2024
66bfd5b
test on ipex-llm-20240315 branch
liu-shaojun Mar 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
118 changes: 118 additions & 0 deletions .github/workflows/ipex-llm-nightly-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
name: LLM Nightly Tests

# Cancel previous runs in the PR when you push new commits
concurrency:
group: ${{ github.workflow }}-llm-nightly-test-${{ github.event.pull_request.number || github.run_id }}
cancel-in-progress: true

permissions:
contents: read

# Controls when the action will run.
on:
schedule:
- cron: "00 13 * * *" # GMT time, 13:00 GMT == 21:00 China
pull_request:
branches: [main]
# paths:
# - ".github/workflows/llm-nightly-test.yml"
# - ".github/actions/llm/setup-llm-env/action.yml"
# - ".github/actions/llm/remove-llm-env/action.yml"
# - ".github/actions/llm/convert-test/action.yml"
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# llm-cpp-build:
# uses: ./.github/workflows/llm-binary-build.yml
llm-nightly-convert-test:
# needs: llm-cpp-build
strategy:
fail-fast: false
matrix:
include:
- os: windows
instruction: AVX-VNNI-UT
python-version: "3.9"
- os: ubuntu-20.04-lts
instruction: avx512
python-version: "3.9"
runs-on: [self-hosted, llm, "${{matrix.instruction}}", "${{matrix.os}}"]
env:
ANALYTICS_ZOO_ROOT: ${{ github.workspace }}
steps:
- name: Set model directories
shell: bash
run: |
echo "ORIGIN_DIR=$(pwd)/../llm/origin-models" >> "$GITHUB_ENV"
echo "INT4_CKPT_DIR=$(pwd)/../llm/nightly-converted-models" >> "$GITHUB_ENV"
- name: Create model directories
shell: bash
run: |
if [ ! -d $ORIGIN_DIR ]; then
mkdir -p $ORIGIN_DIR
fi
if [ ! -d $INT4_CKPT_DIR ]; then
mkdir -p $INT4_CKPT_DIR
fi
- name: Set environment variables
shell: bash
run: |
echo "LLAMA_ORIGIN_PATH=${ORIGIN_DIR}/llama-7b-hf" >> "$GITHUB_ENV"
echo "GPTNEOX_ORIGIN_PATH=${ORIGIN_DIR}/gptneox-7b-redpajama-bf16" >> "$GITHUB_ENV"
echo "BLOOM_ORIGIN_PATH=${ORIGIN_DIR}/bloomz-7b1" >> "$GITHUB_ENV"
echo "STARCODER_ORIGIN_PATH=${ORIGIN_DIR}/gpt_bigcode-santacoder" >> "$GITHUB_ENV"

echo "LLAMA_INT4_CKPT_PATH=${INT4_CKPT_DIR}/bigdl_llm_llama_q4_0.bin" >> "$GITHUB_ENV"
echo "GPTNEOX_INT4_CKPT_PATH=${INT4_CKPT_DIR}/bigdl_llm_gptneox_q4_0.bin" >> "$GITHUB_ENV"
echo "BLOOM_INT4_CKPT_PATH=${INT4_CKPT_DIR}/bigdl_llm_bloom_q4_0.bin" >> "$GITHUB_ENV"
echo "STARCODER_INT4_CKPT_PATH=${INT4_CKPT_DIR}/bigdl_llm_starcoder_q4_0.bin" >> "$GITHUB_ENV"
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
shell: bash
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade setuptools==58.0.4
python -m pip install --upgrade wheel

# - name: Download llm binary
# uses: ./.github/actions/llm/download-llm-binary

# - name: Install BigDL-LLM
# uses: ./.github/actions/llm/setup-llm-env

- name: Install IPEX-LLM from Pypi
shell: bash
run: |
pip install --pre --upgrade ipex-llm[all]

- name: Download original models & convert
uses: ./.github/actions/llm/convert-test

- name: Upload ckpt to ftp
shell: bash
if: runner.os == 'Linux' && github.event_name == 'schedule'
run: |
curl -T $LLAMA_INT4_CKPT_PATH ${LLM_FTP_URL}/llm/ggml-actions/nightly/bigdl_llm_llama_7b_q4_0.bin
curl -T $GPTNEOX_INT4_CKPT_PATH ${LLM_FTP_URL}/llm/ggml-actions/nightly/bigdl_llm_redpajama_7b_q4_0.bin
curl -T $BLOOM_INT4_CKPT_PATH ${LLM_FTP_URL}/llm/ggml-actions/nightly/bigdl_llm_bloom_7b_q4_0.bin
curl -T $STARCODER_INT4_CKPT_PATH ${LLM_FTP_URL}/llm/ggml-actions/nightly/bigdl_llm_santacoder_1b_q4_0.bin
- name: Delete ckpt
shell: bash
run: |
rm -rf $LLAMA_INT4_CKPT_PATH
rm -rf $GPTNEOX_INT4_CKPT_PATH
rm -rf $BLOOM_INT4_CKPT_PATH
rm -rf $STARCODER_INT4_CKPT_PATH

llm-unit-tests:
# needs: llm-cpp-build
uses: ./.github/workflows/ipex_llm_unit_tests.yml
llm-example-test:
# needs: llm-cpp-build
uses: ./.github/workflows/ipex_llm_example_tests.yml
80 changes: 80 additions & 0 deletions .github/workflows/ipex_llm_example_tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: LLM Example Test

# Cancel previous runs in the PR when you push new commits
concurrency:
group: ${{ github.workflow }}-llm-example-tests-${{ github.event.pull_request.number || github.run_id }}
cancel-in-progress: true

permissions:
contents: read

# Controls when the action will run.
on:
# schedule:
# - cron: '00 13 * * *' # GMT time, 13:00 GMT == 21:00 China
pull_request:
branches: [ main ]
# paths:
# - '.github/workflows/llm_example_tests.yml'
# - '.github/workflows/llm-binary-build.yml'
# - '.github/actions/llm/example-test/action.yml'
# - '.github/actions/llm/setup-llm-env/action.yml'
# - '.github/actions/llm/remove-llm-env/action.yml'
# - '.github/actions/llm/download-llm-binary/action.yml'
# - 'python/llm/dev/test/run-example-tests.sh'
# - 'python/llm/example/**'
workflow_dispatch:
workflow_call:

env:
INT4_CKPT_DIR: ./llm/ggml-actions/stable
LLM_DIR: ./llm

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# llm-cpp-build:
# uses: ./.github/workflows/llm-binary-build.yml
llm-example-test:
# needs: llm-cpp-build
strategy:
fail-fast: false
matrix:
python-version: ["3.9"]
instruction: ["AVX512"]
runs-on: [ self-hosted, llm,"${{matrix.instruction}}", ubuntu-20.04-lts ]
env:
THREAD_NUM: 24
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade setuptools==58.0.4
python -m pip install --upgrade wheel

# - name: Download llm binary
# uses: ./.github/actions/llm/download-llm-binary

# - name: Run LLM install (all) test
# uses: ./.github/actions/llm/setup-llm-env
# env:
# ANALYTICS_ZOO_ROOT: ${{ github.workspace }}

- name: Install IPEX-LLM from Pypi
shell: bash
run: |
pip install --pre --upgrade ipex-llm[all]

- name: Run LLM example test
uses: ./.github/actions/llm/example-test
env:
ANALYTICS_ZOO_ROOT: ${{ github.workspace }}

# - name: Clean up test environment
# uses: ./.github/actions/llm/remove-llm-env
# env:
# ANALYTICS_ZOO_ROOT: ${{ github.workspace }}
Loading
Loading