Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
38 changes: 3 additions & 35 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,44 +26,12 @@ updates:
versioning-strategy: increase-if-necessary

#
# Python dependencies
# Python dependencies (UV workspace)
#
- package-ecosystem: "pip"
directory: "./tests/python_tests/"
schedule:
interval: "daily"
time: "09:00"
timezone: "Europe/Dublin"
versioning-strategy: increase-if-necessary

- package-ecosystem: "pip"
directory: "./tools/llm_bench/"
schedule:
interval: "daily"
time: "09:00"
timezone: "Europe/Dublin"
versioning-strategy: increase-if-necessary

- package-ecosystem: "pip"
directory: "./tools/who_what_benchmark/"
schedule:
interval: "daily"
time: "09:00"
timezone: "Europe/Dublin"
versioning-strategy: increase-if-necessary

- package-ecosystem: "pip"
directory: "samples/"
schedule:
interval: "daily"
time: "09:00"
timezone: "Europe/Dublin"
versioning-strategy: increase-if-necessary

- package-ecosystem: "pip"
- package-ecosystem: "uv"
directory: "/"
schedule:
interval: "daily"
time: "09:00"
timezone: "Europe/Dublin"
versioning-strategy: increase-if-necessary
open-pull-requests-limit: 5
43 changes: 38 additions & 5 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -583,13 +583,21 @@ jobs:
path: ${{ env.INSTALL_DIR }}
merge-multiple: true

- name: Setup UV
if: ${{ matrix.test.run_condition }}
uses: astral-sh/setup-uv@v4

- name: Install GenAI Wheels
if: ${{ matrix.test.run_condition }}
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai;whowhatbench"
requirements_files: "${{ env.SRC_DIR }}/tests/python_tests/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
if: ${{ matrix.test.run_condition }}
working-directory: ${{ github.workspace }}/src
run: uv sync --extra testing-full --no-install-project --prerelease=allow

- name: Tests
if: ${{ matrix.test.run_condition }}
Expand Down Expand Up @@ -690,13 +698,23 @@ jobs:
pigz -dc ${{ env.GENAI_SAMPLES_NAME }} | tar -xf - -C ${{ env.INSTALL_DIR }}
working-directory: ${{ env.INSTALL_DIR }}

- name: Setup UV
if: ${{ matrix.test.run_condition }}
uses: astral-sh/setup-uv@v4

- name: Install GenAI wheels
if: ${{ matrix.test.run_condition }}
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai[testing]"
requirements_files: "${{ env.SRC_DIR }}/samples/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
if: ${{ matrix.test.run_condition }}
working-directory: ${{ github.workspace }}/src
run: |
uv sync --extra samples --no-install-project --prerelease=allow
uv sync --extra testing-full --no-install-project --prerelease=allow

- name: Setup Node
if: ${{ matrix.test.run_condition }}
Expand Down Expand Up @@ -776,12 +794,21 @@ jobs:
- name: Fix C++ samples permissions
run: chmod +x ${{ env.INSTALL_DIR }}/samples_bin/*

- name: Setup UV
uses: astral-sh/setup-uv@v4

- name: Install GenAI wheels
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai[testing]"
requirements_files: "${{ env.SRC_DIR }}/samples/requirements.txt;${{ env.SRC_DIR }}/tools/llm_bench/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
working-directory: ${{ github.workspace }}/src
run: |
uv sync --extra samples --no-install-project --prerelease=allow
uv sync --extra testing-full --no-install-project --prerelease=allow
uv sync --package llm_bench --prerelease=allow

- name: gtests unit tests
if: ${{ fromJSON(needs.smart_ci.outputs.affected_components).continuous_batching }}
Expand Down Expand Up @@ -919,12 +946,18 @@ jobs:
-B ${{ env.BUILD_DIR }}
cmake --build ${{ env.BUILD_DIR}} --config Release --parallel $(nproc) --target py_openvino_genai --verbose

- name: Setup UV
uses: astral-sh/setup-uv@v4

- name: Install dependencies
uses: ./src/.github/actions/install_wheel
with:
packages: openvino;openvino_tokenizers[transformers]
requirements_files: "${{ env.SRC_DIR }}/tests/python_tests/requirements.txt"
packages: "openvino;openvino_tokenizers[transformers]"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
working-directory: ${{ github.workspace }}/src
run: uv sync --extra testing-full --no-install-project --prerelease=allow

- name: Run test_llm_pipeline.py when -DENABLE_XGRAMMAR=OFF
env:
Expand Down
32 changes: 29 additions & 3 deletions .github/workflows/mac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -510,13 +510,21 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
cache: 'pip'

- name: Setup UV
if: ${{ matrix.test.run_condition }}
uses: astral-sh/setup-uv@v4

- name: Install GenAI Wheels
if: ${{ matrix.test.run_condition }}
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai;whowhatbench"
requirements_files: "${{ env.SRC_DIR }}/tests/python_tests/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
if: ${{ matrix.test.run_condition }}
working-directory: ${{ github.workspace }}/src
run: uv sync --extra testing-full --no-install-project --prerelease=allow

- name: Tests
if: ${{ matrix.test.run_condition }}
Expand Down Expand Up @@ -592,13 +600,23 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
cache: 'pip'

- name: Setup UV
if: ${{ matrix.test.run_condition }}
uses: astral-sh/setup-uv@v4

- name: Install GenAI wheels
if: ${{ matrix.test.run_condition }}
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai[testing]"
requirements_files: "${{ env.SRC_DIR }}/samples/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
if: ${{ matrix.test.run_condition }}
working-directory: ${{ github.workspace }}/src
run: |
uv sync --extra samples --no-install-project --prerelease=allow
uv sync --extra testing-full --no-install-project --prerelease=allow

# transformers >= 4.52 require torch >= 2.6 and raise an error otherwise:
# ValueError: Due to a serious vulnerability issue in `torch.load`, even with `weights_only=True`, we now require users to upgrade torch to at least v2.6 in order to use the function. This version restriction does not apply when loading files with safetensors.
Expand Down Expand Up @@ -684,12 +702,20 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
cache: 'pip'

- name: Setup UV
uses: astral-sh/setup-uv@v4

- name: Install GenAI wheels
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai[testing]"
requirements_files: "${{ env.SRC_DIR }}/samples/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
working-directory: ${{ github.workspace }}/src
run: |
uv sync --extra samples --no-install-project --prerelease=allow
uv sync --extra testing-full --no-install-project --prerelease=allow

- name: gtests unit tests
run: |
Expand Down
10 changes: 9 additions & 1 deletion .github/workflows/manylinux_2_28.yml
Original file line number Diff line number Diff line change
Expand Up @@ -521,13 +521,21 @@ jobs:
path: ${{ env.INSTALL_DIR }}
merge-multiple: true

- name: Setup UV
if: ${{ matrix.test.run_condition }}
uses: astral-sh/setup-uv@v4

- name: Install GenAI Wheels
if: ${{ matrix.test.run_condition }}
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai;whowhatbench"
requirements_files: "${{ env.SRC_DIR }}/tests/python_tests/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
if: ${{ matrix.test.run_condition }}
working-directory: ${{ github.workspace }}/src
run: uv sync --extra testing-full --no-install-project --prerelease=allow

- name: Tests
if: ${{ matrix.test.run_condition }}
Expand Down
35 changes: 32 additions & 3 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -672,13 +672,22 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
cache: 'pip'

- name: Setup UV
if: ${{ matrix.test.run_condition }}
uses: astral-sh/setup-uv@v4

- name: Install GenAI Wheels
if: ${{ matrix.test.run_condition }}
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai;whowhatbench"
requirements_files: "${{ env.SRC_DIR }}/tests/python_tests/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
if: ${{ matrix.test.run_condition }}
working-directory: ${{ github.workspace }}/src
shell: bash
run: uv sync --extra testing-full --no-install-project --prerelease=allow

- name: Tests
if: ${{ matrix.test.run_condition }}
Expand Down Expand Up @@ -771,13 +780,24 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
cache: 'pip'

- name: Setup UV
if: ${{ matrix.test.run_condition }}
uses: astral-sh/setup-uv@v4

- name: Install GenAI wheels
if: ${{ matrix.test.run_condition }}
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai[testing]"
requirements_files: "${{ env.SRC_DIR }}/samples/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
if: ${{ matrix.test.run_condition }}
working-directory: ${{ github.workspace }}/src
shell: bash
run: |
uv sync --extra samples --no-install-project --prerelease=allow
uv sync --extra testing-full --no-install-project --prerelease=allow

- name: Setup NodeJS
if: ${{ matrix.test.run_condition }}
Expand Down Expand Up @@ -850,12 +870,21 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
cache: 'pip'

- name: Setup UV
uses: astral-sh/setup-uv@v4

- name: Install GenAI wheels
uses: ./src/.github/actions/install_wheel
with:
packages: "openvino;openvino_tokenizers[transformers];openvino_genai[testing]"
requirements_files: "${{ env.SRC_DIR }}/samples/requirements.txt"
local_wheel_dir: ${{ env.INSTALL_DIR }}/wheels

- name: Sync dependency groups
working-directory: ${{ github.workspace }}/src
shell: bash
run: |
uv sync --extra samples --no-install-project --prerelease=allow
uv sync --extra testing-full --no-install-project --prerelease=allow

- name: gtests unit tests
run: |
Expand Down
9 changes: 6 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,10 +71,13 @@ Continuous batching functionality is used within OpenVINO Model Server (OVMS) to

```sh
# Installing OpenVINO GenAI via pip
# export-requirements are not required to run models, only to convert and compress
pip install openvino-genai --requirement ./samples/export-requirements.txt --requirement ./samples/deployment-requirements.txt
pip install openvino-genai

# (Optional) Install (TBD) to be able to download models from Model Scope
# Or using UV (recommended for development)
uv pip install openvino-genai

# With sample dependencies
uv sync --extra samples --extra samples-export
```

<a id="text-to-text"></a>
Expand Down
Loading
Loading