Skip to content

Upgrade OV, NNCF, MAPI & Datumaro#5709

Merged
leoll2 merged 2 commits intodevelopfrom
leonardo/upgrade-ov-nncf
Mar 9, 2026
Merged

Upgrade OV, NNCF, MAPI & Datumaro#5709
leoll2 merged 2 commits intodevelopfrom
leonardo/upgrade-ov-nncf

Conversation

@leoll2
Copy link
Copy Markdown
Contributor

@leoll2 leoll2 commented Mar 6, 2026

Summary

Changes:

  • Upgrade openvino to 2026.0
  • Upgrade nncf to 3.0
  • Upgrade openvino-model-api
  • Upgrade datumaro
  • Small code adjustments to align with recent DM changes
  • Address some errors reported by Pyrefly

Resolves #5608

How to test

Train and run inference with models in Geti

Checklist

  • The PR title and description are clear and descriptive
  • I have manually tested the changes
  • All changes are covered by automated tests
  • All related issues are linked to this PR (if applicable)
  • Documentation has been updated (if applicable)

Upgrade 'nncf' to 3.0

Upgrade 'openvino-model-api'

Upgrade 'datumaro'
@leoll2 leoll2 self-assigned this Mar 6, 2026
@leoll2 leoll2 requested review from a team as code owners March 6, 2026 15:41
Copilot AI review requested due to automatic review settings March 6, 2026 15:41
@github-actions github-actions Bot added DEPENDENCY Any changes in any dependencies (new dep or its version) should be produced via Change Request on PM TEST Any changes in tests BUILD Geti Backend Issues related to the Geti application server labels Mar 6, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Upgrades the OpenVINO/NNCF/Model API/Datumaro dependency stack and applies the required API/type adjustments across library and application code/tests to keep Geti training/inference and dataset flows working.

Changes:

  • Bump openvino to ~2026.0.0, nncf to ~3.0, and pin openvino-model-api to a specific commit.
  • Update tests and tooling for API/type changes (e.g., OpenVINO Core, Datumaro ExportMode, stricter Path usage).
  • Adjust benchmark recipe path resolution to correctly map string task identifiers to OTXTaskType.

Reviewed changes

Copilot reviewed 9 out of 11 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
library/tests/unit/tools/test_converter.py Switch config paths to Path and add pyrefly ignores for updated typing expectations.
library/tests/perf_v2/benchmark.py Tighten sub_work_dir typing to Path and fix recipe folder lookup by casting task strings to OTXTaskType.
library/tests/integration/api/test_xai.py Update OpenVINO import/usage to from openvino import Core.
library/tests/integration/api/test_geti_interaction.py Adjust nested hyper-parameter mutation and add pyrefly ignore for updated typing.
library/pyproject.toml Upgrade OpenVINO/NNCF versions and pin openvino-model-api to a commit.
application/backend/tests/integration/services/test_staged_dataset_service.py Update Datumaro export to use ExportMode.SKIP instead of a boolean flag.
application/backend/pyproject.toml Remove direct OpenVINO deps from backend (backend pulls OTX from ../../library).
application/backend/app/services/dataset_revision_service.py Modify dataset revision export call (notably removes explicit export_images=True).
application/backend/app/execution/dataset_export/export.py Update Datumaro imports to reflect new locations/types.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 64 to 68
export_dataset(
dataset=dataset,
output_path=revision_path,
export_images=True,
as_zip=False, # Export as uncompressed directory, see #5070 for details
)
Copy link

Copilot AI Mar 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

save_revision() used to explicitly export images (export_images=True), but that argument is now removed. With Datumaro’s updated API (see usage of ExportMode elsewhere in this PR), this now relies on whatever the default export behavior is, which could unintentionally skip images or change how they’re materialized on disk. To preserve the previous behavior and avoid regressions in training/loading revisions, pass an explicit export_images mode (e.g., ExportMode.COPY/equivalent) and import ExportMode here as needed.

Copilot uses AI. Check for mistakes.
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 6, 2026

📊 Test coverage report

Metric Coverage
Lines 38.9%
Functions 76.2%
Branches 87.0%
Statements 38.9%

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Mar 6, 2026

Docker Image Sizes

CPU

Image Size
geti-tune-cpu:pr-5709 983.29M
geti-tune-cpu:sha-e5d6a2e 983.29M

GPU

Image Size
geti-tune-gpu:pr-5709 5.52G
geti-tune-gpu:sha-e5d6a2e 5.52G

XPU

Image Size
geti-tune-xpu:pr-5709 3.32G
geti-tune-xpu:sha-e5d6a2e 3.32G

@codecov-commenter
Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@leoll2 leoll2 enabled auto-merge March 9, 2026 09:18
@leoll2 leoll2 added this pull request to the merge queue Mar 9, 2026
Merged via the queue into develop with commit 686c1f7 Mar 9, 2026
49 checks passed
@leoll2 leoll2 deleted the leonardo/upgrade-ov-nncf branch March 9, 2026 10:06
omkar-334 pushed a commit to omkar-334/otx that referenced this pull request Mar 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

BUILD DEPENDENCY Any changes in any dependencies (new dep or its version) should be produced via Change Request on PM Geti Backend Issues related to the Geti application server TEST Any changes in tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade OpenVINO to 2026.0

5 participants