Add extension near to genai library #105
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: genai_python_lib | |
on: pull_request | |
jobs: | |
ubuntu_genai_python_lib: | |
# A tokenizers' dependency fails to compile on ubuntu-20 n CenOS7 env | |
runs-on: ubuntu-22.04 | |
env: | |
# A tokenizers' dependency fails to compile with Ninja in CenOS7 env | |
CMAKE_GENERATOR: Unix Makefiles | |
CMAKE_BUILD_PARALLEL_LEVEL: null | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: 3.8 | |
- run: mkdir ./ov/ | |
- run: curl https://storage.openvinotoolkit.org/repositories/openvino/packages/pre-release/2024.2.0rc1/linux/l_openvino_toolkit_centos7_2024.2.0.dev20240524_x86_64.tgz | tar --directory ./ov/ --strip-components 1 -xz # Install CentOS7 instead of Ubuntu to match PyPI distribution ABI | |
- run: sudo ./ov/install_dependencies/install_openvino_dependencies.sh | |
- run: source ./ov/setupvars.sh && cmake -DCMAKE_BUILD_TYPE=Release -S ./ -B ./build/ | |
- run: source ./ov/setupvars.sh && cmake --build ./build/ --config Release -j | |
# GitHub Actions already provides what is listed in ./requirements-build.txt but the internal | |
# build system doesn't. Install ./requirements-build.txt to detect possible conflicts. | |
- run: source ./ov/setupvars.sh && python -m pip install ./thirdparty/openvino_tokenizers/[transformers] -r ./requirements-build.txt --extra-index-url https://storage.openvinotoolkit.org/simple/wheels/pre-release --verbose --verbose --verbose | |
- run: source ./ov/setupvars.sh && PYTHONPATH=./build/ python -c "from openvino_genai import LLMPipeline" | |
- run: source ./ov/setupvars.sh && python -m pip install . --verbose --verbose --verbose | |
- run: python -c "from openvino_genai import LLMPipeline" | |
- name: GenAI Python API tests | |
run: | | |
cd ./tests/python_tests/ | |
python -m pip install -r requirements.txt | |
models=$(python list_test_models.py) | |
echo "$models" | while read -r model_name model_path; do | |
optimum-cli export openvino --trust-remote-code --weight-format fp16 --model "$model_name" "$model_path" | |
done | |
GENAI_BUILD_DIR=../../build python -m pytest test_generate_api.py | |
windows_genai_python_lib: | |
runs-on: windows-latest | |
env: | |
CMAKE_BUILD_PARALLEL_LEVEL: null | |
defaults: | |
run: | |
shell: cmd | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: 3.8 | |
- run: curl --output ov.zip https://storage.openvinotoolkit.org/repositories/openvino/packages/pre-release/2024.2.0rc1/windows/w_openvino_toolkit_windows_2024.2.0.dev20240524_x86_64.zip | |
- run: unzip ov.zip | |
# GitHub Actions already provides what is listed in ./requirements-build.txt but the internal | |
# build system doesn't. Install ./requirements-build.txt to detect possible conflicts. | |
- run: call w_openvino_toolkit_windows_2024.2.0.dev20240524_x86_64\setupvars.bat && python -m pip install ./thirdparty/openvino_tokenizers/[transformers] -r ./requirements-build.txt --extra-index-url https://storage.openvinotoolkit.org/simple/wheels/pre-release --verbose --verbose --verbose | |
- run: call w_openvino_toolkit_windows_2024.2.0.dev20240524_x86_64\setupvars.bat && python -m pip install . --verbose --verbose --verbose # --verbose is additive, and can be used up to 3 times. | |
- run: python -c "from openvino_genai import LLMPipeline" | |
- run: call w_openvino_toolkit_windows_2024.2.0.dev20240524_x86_64\setupvars.bat && cmake -DCMAKE_BUILD_TYPE=Release -S ./ -B ./build/ | |
- run: call w_openvino_toolkit_windows_2024.2.0.dev20240524_x86_64\setupvars.bat && cmake --build ./build/ --config Release -j | |
- run: set "PYTHONPATH=./build/" && call w_openvino_toolkit_windows_2024.2.0.dev20240524_x86_64\setupvars.bat && python -c "from openvino_genai import LLMPipeline" # cmd evaluates variables in a different way. Setting PYTHONPATH before setupvars.bat instead of doing that after solves that. |