- Updated model representation to that of Geti V2.6 by @Daankrol in #523
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v2.5.0...v2.6.0
- Introduce
delete_dataset
method by @igor-davidyuk in #489 - Update the download_all method for ImageClient to download specific dataset by @rajeshgangireddy in #484
- Update media info schema to include extension by @igor-davidyuk in #494
- Project access refactoring by @igor-davidyuk in #481
- Images upload from list optimization by @igor-davidyuk in #495
- Add readthedocs configuration file by @ljcornel in #497
- Fix bug with label name mapping for hierarchical classification models by @ljcornel in #498
- Introduce new
Anomaly
task by @igor-davidyuk in #487 - Implement
get_training_dataset
method inDatasetClient
by @ljcornel in #492 - Fix anomaly task title by @igor-davidyuk in #499
- Anomaly tasks backwards compatibility by @igor-davidyuk in #502
- Fix anomaly demo test by @igor-davidyuk in #501
- Introduce project removal delay for short tests by @igor-davidyuk in #500
- Update datumaro requirement from ==1.8.* to ==1.9.* in /requirements by @dependabot in #496
- Update pytest requirement from ==8.2.* to ==8.3.* in /requirements by @dependabot in #482
- Fix organization id fetching by @ljcornel in #504
- Update ModelGroup data model by @ljcornel in #506
- Update Model data model by @ljcornel in #508
- Update pillow requirement from ==10.4.* to ==11.0.* in /requirements by @dependabot in #507
- Fix label assignment for deployed models by @ljcornel in #505
- @rajeshgangireddy made their first contribution in #484
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v2.3.0...v2.5.0
- Add method to purge models by @igor-davidyuk in #468
- Fix visualization in 008 example notebook by @igor-davidyuk in #472
- Update the Model schema to include the
total_disk_size
field by @igor-davidyuk in #471 - Add support for Credit System API by @igor-davidyuk in #473
- Implement Platform version check by @igor-davidyuk in #474
- Allow Credit System-less servers to authenticate with a token by @igor-davidyuk in #476
- Empty label visualization fix by @igor-davidyuk in #480
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v2.2.0...v2.3.0
- Add
description
attribute to the job class by @igor-davidyuk in #448 - Project/Dataset export import API alignment by @igor-davidyuk in #446
- Create geti_sdk.import_export docs page by @igor-davidyuk in #451
- Introduce data_model
purge_info
field by @igor-davidyuk in #453 - Disable certificate validation for mvtec dataset download by @ljcornel in #452
- Use proper project name in notebook 008 by @ljcornel in #454
- Update pillow requirement from ==10.3.* to ==10.4.* in /requirements by @dependabot in #449
- Create workflow to build wheels for different OS/CPU architecture combinations by @ljcornel in #456
- Fix headers in
HttpRequest
PostInferenceAction by @ljcornel in #457 - Correctly set headers in
HttpRequest
PostInferenceAction by @ljcornel in #458 - Expose Visualizer class by @igor-davidyuk in #426
- Job and Model schema update by @igor-davidyuk in #459
- Use
json
instead ofdata
parameter in HttpRequestAction by @ljcornel in #460 - Remove workflows that require a self-hosted runner by @ljcornel in #461
- Fix 005_modify_image.ipynb image usage by @igor-davidyuk in #463
- Fix permissions for wheel build workflow and remove record_cassettes workflow by @ljcornel in #462
- Fix
delete_project
method by @igor-davidyuk in #466 - Add a Custom Dataset upload example by @igor-davidyuk in #464
- Add Job Cost info to job data scheme by @igor-davidyuk in #467
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/releases/v2.1.0...1234
- Saliency map visualization by @igor-davidyuk in #424
- Add a model management notebook by @igor-davidyuk in #419
- Add support for asynchronous inference in deployments by @ljcornel in #421
- Bump imageio-ffmpeg from 0.4.9 to 0.5.1 in /requirements by @dependabot in #430
- Saliency map fix by @igor-davidyuk in #427
- Fix rotated detectionsaliency map processing by @igor-davidyuk in #431
- Handle projects with duplicate names in the
ProjectClient
by @ljcornel in #425 - Update opencv-python requirement from ==4.9.* to ==4.10.* in /requirements by @dependabot in #428
- Update nightly test conda env directory by @ljcornel in #432
- Fix
is_geti
version check by @igor-davidyuk in #434 - Fix build and publish workflow for internal pypi by @ljcornel in #433
- Add check to make sure project is trained in notebook 012 by @ljcornel in #439
- Update flake8 requirement from ==7.0.* to ==7.1.* in /requirements by @dependabot in #440
- Fix removal of empty strings in json data for POSTing by @ljcornel in #442
- Include
model_group_id
inModel
serialization and deserialization by @ljcornel in #443 - Include
model_group_id
upon model deployment in DeploymentClient by @ljcornel in #444 - Small fixes for testing client and test result by @ljcornel in #438
- Run pre-merge tests on PR to release branch by @ljcornel in #436
- Fix model_group_id assignment in DeployedModel deserialization by @ljcornel in #445
- Fix bug in
AsyncVideoProcessor
by @ljcornel in #441
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v2.0.1...v2.1.0
- Add retry mechanism to better handle
ConnectionError
by @ljcornel in #420 - Undo changes to video tempfile handling, register atexit handler for tempfile deletion by @ljcornel in #423
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v2.0.0...v2.0.1
This release introduces a new feature related to model deployment: post-inference hooks! A post-inference hook can be added to any Deployment
, and will be executed after every inference request (i.e. every call to deployment.infer()
). The hooks allow you to define specific actions to take under certain conditions. For example, a hook could implement the following behaviour:
If the confidence level of one of the predictions for the image is less than 20%, then upload the image to the Intel® Geti™ project in which the model was trained.
This could be useful for improving your model with a next training round, because including such 'low confidence images' in the training dataset might help to improve model accuracy. Additional examples of post-inference hooks, and instructions for configuring them, can be found in the newly added notebook 012 in this repository.
This major release of the Intel® Geti™ SDK breaks backwards compatibility with Intel® Geti™ servers of version v1.14 and below. Please make sure that your Intel® Geti™ server is updated to the latest version of the Intel® Geti™ platform, to prevent compatibility issues.
- Update
Video
data model with annotation statistics by @ljcornel in #391 - Record Legacy and Develop cassette in separate steps instead of pipelines by @igor-davidyuk in #387
- Remove dependency on OTX by @igor-davidyuk in #393
- Add
model_storage_id
to models when fetching model group by @ljcornel in #399 - Add Python 3.11 support; Deprecate Python 3.8 by @igor-davidyuk in #398
- Add
last_annotator_id
field to media data model by @igor-davidyuk in #403 - Documentation Update 2.0 by @igor-davidyuk in #402
- End support for Platforms versions lower than 1.15 by @igor-davidyuk in #397
- Bump imageio-ffmpeg from 0.4.8 to 0.4.9 in /requirements by @dependabot in #404
- Update python version in github workflows by @ljcornel in #405
- Update requirement for tqdm to
>=4.66.3
by @ljcornel in #407 - Add
PostInferenceHook
feature initial implementation and notebook by @ljcornel in #355 - [StepSecurity] Apply security best practices by @step-security-bot in #408
- Define permissions on job level for cassette record workflow by @ljcornel in #409
- Update pytest-recording requirement from ==0.12.* to ==0.13.* in /requirements by @dependabot in #406
- Update pytest requirement from ==7.4.* to ==8.2.* in /requirements by @dependabot in #401
- Update cryptography requirement to
>=42.0.7
by @ljcornel in #410 - Update requirement for joblib to
>=1.2.0
by @ljcornel in #411 - Update certifi requirement to
>=2024.2.2
by @ljcornel in #412 - Update ipython requirement from ==8.12.* to ==8.18.* in /requirements by @dependabot in #400
- Update vcrpy requirement from ==4.4.* to ==6.0.* in /requirements by @dependabot in #318
- Remove dead code in training client by @ljcornel in #413
- Update requests requirement from ==2.31.* to ==2.32.* in /requirements by @dependabot in #415
- Update pytest-html requirement from ==3.2.* to ==4.1.* in /requirements by @dependabot in #418
- Update pytest-cov requirement from ==4.1.* to ==5.0.* in /requirements by @dependabot in #416
- Add initial support for Tiling inference [synchronous mode only] by @ljcornel in #414
- @step-security-bot made their first contribution in #408
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.16.1...v2.0.0
- Add
default_workspace
to possible default workspace names by @igor-davidyuk in #394
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.16.0...v1.16.1
- Decouple visualizer for OTX by @igor-davidyuk in #356
- Update data models to account for REST API changes in Geti v1.16 by @ljcornel in #357
- Fix organization retrieval URL with PAT by @ljcornel in #361
- TEST: add VCR recording workflow by @igor-davidyuk in #360
- Fix job id retrieval in optimize_model method by @ljcornel in #364
- Update job datamodel by @ljcornel in #362
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.15.0...v1.16.0
This release makes the SDK compatible for Intel® Geti™ v1.15. The majority of the changes is focused on that, but below is a list of other changes that are worth mentioning.
- Add compatibility for Intel® Geti™ v1.15. Note that we maintain backwards compatibility for models created in Intel® Geti™ v1.8: This means that the SDK can run inference on deployments from both both the latest Intel® Geti™ on-prem release and Intel® Geti™ SaaS.
- Add benchmarking functionality for deployments through the
Benchmarker
class, as well as a new notebook to demonstrate this feature. - Improve the job monitoring feature, job progression is now displayed via progress bars.
- Image and annotation upload and download now uses multithreading, greatly speeding up the process.
- A new notebook demonstrating an end-to-end workflow, from model creation to deployment, was added to
notebooks/use_cases
. - Multiple dependency updates, minor bug fixes and documentation improvements.
- Add organization ID to session when appropriate by @ljcornel in #294
- Change job monitor functions to use progress bars by @ljcornel in #295
- Decrease verbosity for annotation download by @ljcornel in #296
- Improve model selection mechanism by @ljcornel in #297
- Add
Benchmarker
class and demo notebook for inference throughput benchmarking of Geti models by @ljcornel in #300 - Supported algorithms workaround by @ljcornel in #303
- Workaround for getting supported algorithms by @ljcornel in #305
- Update README.md by @operepel in #307
- Fix organization ID when uploading annotations by @ljcornel in #306
- Mention git lfs in test docs by @igor-davidyuk in #308
- Fix inference endpoints and job data model by @ljcornel in #309
- Improve handling of supported algorithms by @ljcornel in #310
- Fix TaskAnnotationState and Optimization JobType by @ljcornel in #312
- Test benchmarker by @igor-davidyuk in #311
- Pin otx to v1.4.3 by @ljcornel in #313
- Remove snyk scan from security workflow by @ljcornel in #314
- Minor bug fixes related to deployment by @ljcornel in #315
- Inference results visual comparison by @igor-davidyuk in #316
- Add
model_activated
field to ModelMetadata by @ljcornel in #320 - Update
Pillow
dependency toPillow==10.2.*
by @ljcornel in #322 - Add shields.io badges to readme by @ljcornel in #321
- Relax time requirement for demo projects nightly tests by @ljcornel in #325
- Multithread image upload and download by @igor-davidyuk in #323
- Handle the new authorization mechanism and organization IDs by @ljcornel in #326
- Improve robustness of job monitoring by @ljcornel in #327
- Introduce method to switch active model by @igor-davidyuk in #328
- Fix issue with undefined label color for prediction by @ljcornel in #330
- Enable pre-merge tests on Windows and MacOS by @igor-davidyuk in #331
- Update compatibility table in README by @ljcornel in #332
- Add compatibility for anomaly model deployment for Geti v1.13 and up by @ljcornel in #333
- Correctly handle errors in new dex authentication mechanism by @ljcornel in #336
- Handle the new personal access tokens for Geti v1.15 and up by @ljcornel in #335
- Fix proxies issue in GetiSession by @igor-davidyuk in #334
- Modified 'Smart Cities' notebook by @ljcornel in #304
- Fix annotation kind comparison in plot_helpers by @ljcornel in #337
- Update flake8 requirement from ==6.0.* to ==7.0.* in /requirements by @dependabot in #302
- Handle org ID with personal access tokens for Geti SaaS by @ljcornel in #338
- Bump orjson from 3.9.2 to 3.9.15 in /requirements by @dependabot in #344
- Update pytest-env requirement from ==1.0.* to ==1.1.* in /requirements by @dependabot in #341
- Update datumaro requirement from ==1.4.* to ==1.5.* in /requirements by @dependabot in #347
- geti_session - remove unused proxy kwargs by @igor-davidyuk in #346
- CVS-117852 Fix bandit issues by @ljcornel in #348
- Make
datasets
optional in Project data model by @ljcornel in #339 - Fix maskrcnn postprocessing for geti v1.15 by @ljcornel in #350
- Restrict default top-level permissions for all workflows by @ljcornel in #349
- Add openssf scorecard code scanning by @ljcornel in #351
- OTX decoupling part 1: inference postprocessing by @ljcornel in #352
- OTX decoupling: deployment by @igor-davidyuk in #345
- @operepel made their first contribution in #307
- @igor-davidyuk made their first contribution in #308
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v.1.8.2...v1.15.0
- Update
opencv-python
requirement to4.9.*
- Update
Pillow
requirement to10.2.*
- Update
otx
requirement to4.4.4
- Add backwards compatibility for anomaly model deployment
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v.1.8.1...v.1.8.2
- Update pytest requirement from ==7.3.* to ==7.4.* in /requirements by @dependabot in #261
- Update pytest-env requirement from ==0.8.* to ==1.0.* in /requirements by @dependabot in #275
- Update various dependencies by @ljcornel in #288
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v.1.8.0...v.1.8.1
- Predict video on local by @jihyeonyi in #243
- Update job datamodel for new job scheduler by @ljcornel in #251
- Add
model
key to TestMetaData by @ljcornel in #252 - Improve error handling for version parsing by @ljcornel in #253
- Update SECURITY.md by @ljcornel in #256
- Add
nosec
for safe subprocess use inpredict_video.py
by @ljcornel in #257 - Update openvino to 2023.0 and OTX to v1.4 by @ljcornel in #255
- Update opencv-python requirement from ==4.5.* to ==4.8.* in /requirements by @dependabot in #249
- Bump orjson from 3.8.8 to 3.9.2 in /requirements by @dependabot in #250
- Enable using pre-production dependencies in test builds by @ljcornel in #258
- Update the list of third party programs by @ljcornel in #259
- Require
cryptography>=41.0.2
for security reasons by @ljcornel in #260 - Fix for responding to Project Key values in the REST API by @harimkang in #264
- Disable parallel execution on pre-merge tests by @ljcornel in #270
- Fix model_api import and model creation for deployments by @ljcornel in #268
- CVS-116946 Make platform version parsing robust by @ljcornel in #269
- Update Performance attribute interfaces by @harimkang in #271
- CVS-118292 Update ATSS algo name by @ljcornel in #272
- Fix deployment postprocessing by @ljcornel in #273
- Fix OVMS configuration generation for Geti v1.8 by @ljcornel in #276
- Update data model for
Algorithm
by @ljcornel in #278 - Update configurable parameter data model by @ljcornel in #279
- correct H1 level heading by @adamczap in #280
- Update
TestResult
data model by @ljcornel in #281 - Fix a potential infinite loop in the label helpers by @ljcornel in #285
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.8...v.1.8.0
- Update vcrpy requirement from ==4.2.* to ==4.3.* in /requirements by @dependabot in #227
- Specify correct project name in notebook 009 by @ljcornel in #229
- Fix name of project to download in notebook 009 by @ljcornel in #233
- Update pytest-cov requirement from ==4.0.* to ==4.1.* in /requirements by @dependabot in #231
- upgrate isort to 5.12.0 to avoid runtime error in pre-commit in python 3.8 by @jihyeonyi in #235
- Update all pre-commit hooks to latest versions by @ljcornel in #237
- Add
step_size
field to configurable floats by @ljcornel in #241 - Handle re-authentication during media upload robustly by @ljcornel in #244
- @jihyeonyi made their first contribution in #235
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.7...v1.5.8
- Allow more efficient image uploading for datumaro annotation readers by @ljcornel in #224
- Fix deployment for
otx v1.2.2
by @ljcornel in #225
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.6...v1.5.7
- Add
group
key to hierarchical label definition in notebook 001 by @ljcornel in #220 - Add
TestingClient
to perform model tests by @ljcornel in #221 - Wait for a project to become ready after it is created by @ljcornel in #223
- Update requests requirement from ==2.28.* to ==2.31.* in /requirements by @dependabot in #222
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.5...v1.5.6
- Add param to disable certificate validation for data download helpers by @ljcornel in #218
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.4...v1.5.5
- Add active learning client for retrieving the active set by @ljcornel in #215
- Allow passing label dictionaries to
Geti.create_single_task_project_from_dataset
by @ljcornel in #216 - Add string representation for
GetiVersion
by @ljcornel in #217
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.3...v1.5.4
- Add
ONNX
as optimization type by @ljcornel in #212 - Remove trailing slash from the base url in the media rest client by @ljcornel in #214
- Update pytest requirement from ==7.2.* to ==7.3.* in /requirements by @dependabot in #211
- Fix nightly tests by @ljcornel in #213
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.2...v1.5.3
- Add score NoneType check in summary function of ProjectStatus by @harimkang in #208
- Update
OptimizedModel
data model by @ljcornel in #209 - Update datumaro requirement from ==1.1.* to ==1.2.* in /requirements by @dependabot in #206
- @harimkang made their first contribution in #208
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.1...v1.5.2
- Update hashing algorithm to
sha3_512
by @ljcornel in #204 - Bump otx from 1.1.2 to 1.2.0 in /requirements by @dependabot in #203
- Update ipython requirement from ==8.11.* to ==8.12.* in /requirements by @dependabot in #202
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.5.0...v1.5.1
- Pin orjson version to 3.8.8 to avoid installation error by @ljcornel in #178
- Fix nightly tests for classification project by @ljcornel in #179
- Add workaround to set output blob name if not set by model adapter by @ljcornel in #180
- Add workflow to publish to TestPyPI by @ljcornel in #185
- Filter on polygons when setting Datum segmentation dataset by @ljcornel in #184
- Add
explain
method for deployment by @ljcornel in #183 - Remove duplicate annotations for datumaro dataset items by @ljcornel in #186
- Remove specific geti version tests by @ljcornel in #187
- Add python version compatibility table to README by @ljcornel in #189
- Add test for python 3.10 by @ljcornel in #188
- Use absolute URLs for links in readme by @ljcornel in #190
- Fix explain for segmentation and anomaly models by @ljcornel in #191
- Replace the deprecated
DatasetItem.image()
in DatumAnnotationReader by @ljcornel in #192 - Update datumaro requirement from ==1.0.* to ==1.1.* in /requirements by @dependabot in #175
- Update pillow requirement from ==9.4.* to ==9.5.* in /requirements by @dependabot in #182
- Pagination for project fetching by @ljcornel in #197
- Use pagination when fetching all the projects by @leoll2 in #193
- Fix dataset filtering issue for Datumaro annotation reader by @ljcornel in #194
- Update simplejson requirement from ==3.18.* to ==3.19.* in /requirements by @dependabot in #196
- Bump otx from 1.1.0 to 1.1.2 in /requirements by @dependabot in #195
- Update omegaconf requirement from ==2.1.* to ==2.3.* in /requirements by @dependabot in #120
- Add finalizer to remove demo project after nightly test by @ljcornel in #198
- Add support for additional datasets in project by @ljcornel in #199
- @leoll2 made their first contribution in #193
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.4.1...v1.5.0
- Update otx requirement to
otx==1.1.0
by @ljcornel in #176 - Make model wrapper module namespace unique by @ljcornel in #177
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.4.0...v1.4.1
- Migrate from
ote_sdk
tootx.api
by @ljcornel in #166
This release breaks backwards compatibility with deployments
created by earlier versions of the Intel® Geti™ platform. Please only update to this version of the Geti SDK if you are sure that your Intel® Geti™ server is also on version 1.4 or later.
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.2.4...v1.4.0
- Update ipython requirement from ==8.10.* to ==8.11.* in /requirements by @dependabot in #172
- Fix
upload_and_predict_from_numpy.py
example by @ljcornel in #173 - Improve error handling for OVMS deployment by @ljcornel in #174
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.2.3...v1.2.4
- Fix saving images and annotations with non-ascii characters in their filename by @ljcornel in #160
- Update tqdm requirement from ==4.64.* to ==4.65.* in /requirements by @dependabot in #161
- Cvs-96625 Update image display method in
show_image_with_annotation_scene
by @ljcornel in #164 - Enable uploading data from nested subsets in DatumAnnotationReader by @ljcornel in #163
- Update datumaro requirement from ==0.4.* to ==1.0.* in /requirements by @dependabot in #155
- Update OptimizedModel and TaskStatus data models by @ljcornel in #165
- Formatting images and cell - Notebook 102 suggestions by @paularamo in #167
- Add notebook
102_from_zero_to_hero
by @ljcornel in #159 - Demo Zero to Hero in 9 steps by @paularamo in #154
- Fix deployment saving mechanism and handle errors by @ljcornel in #170
- Add ovmsclient to base requirements by @ljcornel in #169
- Issue 168: Fix tempdir cleanup in
DeployedModel
by @ljcornel in #171
- @paularamo made their first contribution in #167
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.2.2...v1.2.3
- Enable OVMS deployment by @ljcornel in #148
- Minor fixes for notebook 010 by @ljcornel in #149
- Update ipython requirement from ==8.9.* to ==8.10.* in /requirements by @dependabot in #151
- Add performance hint to the ovms config by @ljcornel in #152
- Fix bug in deployment resource clean up method by @ljcornel in #153
- Update python-dotenv requirement from ==0.21.* to ==1.0.* in /requirements by @dependabot in #156
- Add a short sleep in
Geti.upload_project_data
after media upload by @ljcornel in #157 - Add OVMS deployment resources to manifest by @ljcornel in #158
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.2.1...v1.2.2
- Fix issue with deployment for anomaly classification models by @ljcornel in #144
- Require
mistune>=2.0.3
for notebooks by @ljcornel in #147 - Update ipython requirement from ==8.8.* to ==8.9.* in /requirements by @dependabot in #145
- Fix issue with temporary resource clean up for
Deployment
s by @ljcornel in #146
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.2.0...v1.2.1
- Add
size
field to MediaInformation data model by @ljcornel in #133 - Update available Geti versions by @ljcornel in #134
- Update pillow requirement from ==9.3.* to ==9.4.* in /requirements by @dependabot in #131
- Fix a mismatch in the data model for the Optimization Job by @ljcornel in #136
- Add DeploymentClient to streamline deployment mechanism by @ljcornel in #135
- Update prediction mechanism by @ljcornel in #137
- Update ipython requirement from ==8.7.* to ==8.8.* in /requirements by @dependabot in #138
- Bump openvino from 2022.2.0 to 2022.3.0 in /requirements by @dependabot in #130
- Update various dependencies by @ljcornel in #140
- Minor refactor in
Geti
class and fix inpredict_image
method by @ljcornel in #139 - Make
maps
key optional when converting Predictions from dictionary input by @ljcornel in #141 - Fix documentation workflow to deploy from build artifact by @ljcornel in #143
- Make workaround for issue with detection prediction conversion by @ljcornel in #142
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.1.1...v1.2.0
- Fix issue with model to dictionary conversion by @ljcornel in #128
- Only submit train request once all running jobs for task have finished by @ljcornel in #129
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.1.0...v1.1.1
- Minor fix in README.md by @ljcornel in #118
- Fix and improve geti version comparison mechanism by @ljcornel in #117
- Ignore some false positive bandit detections by @ljcornel in #119
- Update datumaro requirement from ==0.3.* to ==0.4.* in /requirements by @dependabot in #121
- Add ClamAV workflow by @ljcornel in #123
- Update
jupyterlab
requirement for notebooks to >=3.5.1 by @ljcornel in #124 - Increase timeout for training job polling upon calling
train_task
by @ljcornel in #125
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.0.4...v1.1.0
- Update ipython requirement from ==8.6.* to ==8.7.* in /requirements by @dependabot in #112
- Properly check for empty annotation before uploading by @ljcornel in #111
- Update numpy version to 1.22.* in requirements by @ljcornel in #104
- Minor update to README.md by @ljcornel in #114
- Update training client to handle new /train endpoint response by @ljcornel in #113
- Update
StatusSummary
datamodel by @ljcornel in #115
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.0.3...v1.0.4
- Add
ScoreMetadata
to represent the newscores
field by @ljcornel in #106 - Add model and prediction client integration tests + update cassettes by @ljcornel in #107
- Update simplejson requirement from ==3.17.* to ==3.18.* in /requirements by @dependabot in #108
- Fix opencv window closure bug by @ljcornel in #109
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.0.2...v1.0.3
- Update ote-sdk requirement to v0.3.1 by @ljcornel in #98
- Add integration tests for
project_client
, fixproject_client.add_labels
by @ljcornel in #99 - Update data model for TaskMetadata, improve robustness of active model fetching by @ljcornel in #100
- Use OTE SDK visualizer, add plot helper unit tests by @ljcornel in #101
- Add HTTPS_PROXY as variable to the credentials helper by @ljcornel in #102
- Add tests for video up- and download in Geti integration tests by @ljcornel in #103
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.0.1...v1.0.2
- Add path validation to project download target path by @ljcornel in #87
- Update tqdm requirement from ==4.62.* to ==4.64.* in /requirements by @dependabot in #84
- Update python-dotenv requirement from ==0.20.* to ==0.21.* in /requirements by @dependabot in #86
- Add security note to README for project download by @ljcornel in #88
- Update numpy requirement to 1.21.* by @ljcornel in #89
- Reduce permissions upon directory creation by @ljcornel in #90
- Update README to correctly reference Intel Geti brand everywhere by @ljcornel in #92
- Improve check for video processing in
Geti.upload_project_data()
to avoid potential infinite loop by @ljcornel in #93 - Add unit tests to pre-merge test suite by @ljcornel in #91
- Update ProjectStatus and TaskStatus to include new field
n_new_annotations
by @ljcornel in #94 - Add progress bars for up/download of projects, media, annotations and predictions by @ljcornel in #95
- Add ipywidgets to notebook requirements by @ljcornel in #97
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v1.0.0...v1.0.1
- Add a re-authentication mechanism when using token authentication by @ljcornel in #72
- Update pytest requirement from ==7.1.* to ==7.2.* in /requirements by @dependabot in #73
- Update pillow requirement from ==9.2.* to ==9.3.* in /requirements by @dependabot in #74
- Update pytest-html requirement from ==3.1.* to ==3.2.* in /requirements by @dependabot in #75
- Catch value error when invalid datetime string is converted by @ljcornel in #76
- Update nightly test workflow to include tests against Geti
develop
branch by @ljcornel in #78 - Enable SSL certificate validation by default by @ljcornel in #77
- Remove disallowed fields from project before POSTing by @ljcornel in #79
- Ignore false positive bandit detections by @ljcornel in #80
- Update numpy, ipython, jupyterlab versions by @ljcornel in #81
- Fix and unify folder naming for project download by @ljcornel in #82
- The
Geti
class now has SSL certificate validation enabled by default. This will result in an error when connecting to a server with a certificate that can't be validated. Note that it is still possible to disable certificate validation by passingverify_certificate = False
when initializing theGeti
instance. Please note that disabling certificate validation is unsafe and should only be considered in a secure network environment.
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v0.2.4...v1.0.0rc1
- Auto detect normalized annotation files for GetiAnnotationReader by @ljcornel in #63
- Fix version detection mechanism and add tests for GetiVersion by @ljcornel in #64
- Minor changes for backward compatibility with SCv1.1 by @ljcornel in #67
- Enable proxies in ONLINE test mode by @ljcornel in #66
- Fix proxy config in tests for online mode by @ljcornel in #68
- Updated Attrs Classes and Fields by @HiteshManglani123 in #65
- Validate media filename upon download by @ljcornel in #69
- Update pytest-env requirement from ==0.6.* to ==0.8.* in /requirements by @dependabot in #70
- Fix anomaly classification deployment by @ljcornel in #71
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v0.2.3...v0.2.4
- Remove VCR from nightly test for demos by @ljcornel in #54
- Improve nightly tests for
demos
module by @ljcornel in #55 - Update sc_annotation_reader by @ljcornel in #56
- Add version to optimized model by @ljcornel in #57
- Update SDK platform version parsing mechanism by @ljcornel in #58
- Add nightly tests against Geti-MVP by @ljcornel in #59
- Handle failed training jobs in notebook 007 by @ljcornel in #60
- Update example script to store prediction results to file by @ljcornel in #61
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v0.2.2...v0.2.3
- Add coverage report to pre-merge and nightly test artifacts by @ljcornel in #47
- Correctly set permissions on extracted files for anomaly dataset by @ljcornel in #51
- Update pytest-cov requirement from ==3.0.* to ==4.0.* in /requirements by @dependabot in #50
- Update pillow requirement from ==9.1.* to ==9.2.* in /requirements by @dependabot in #48
- Workflow update: Run nightly and integration tests in one step and get coverage by @ljcornel in #53
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v0.2.1...v0.2.2
- Replace SC references in docstrings by Geti by @ljcornel in #33
- Change package name from
geti_sdk
togeti-sdk
. Import names are unchanged by @ljcornel in #34 - Update vcrpy requirement from ==4.1.* to ==4.2.* in /requirements by @dependabot in #35
- Bump datumaro from 0.3 to 0.3.1 in /requirements by @dependabot in #37
- Bump openvino from 2022.1.0 to 2022.2.0 in /requirements by @dependabot in #38
- Update requests requirement from ==2.26.* to ==2.28.* in /requirements by @dependabot in #39
- Handle exceptions in data deserialization by @ljcornel in #40
- Fix image path in notebook 008 by @ljcornel in #41
- Use personal access token instead of credential authentication by default by @ljcornel in #42
- Add image showing the personal access token menu to README by @ljcornel in #43
- Add nightly tests for
demos
module by @ljcornel in #44 - Add screenshot of jupyter lab landing page to README by @ljcornel in #45
- @dependabot made their first contribution in #35
Full Changelog: https://github.com/openvinotoolkit/geti-sdk/compare/v0.2.0...v0.2.1
This is the first official release of the Intel® Geti™ Software Development Kit (SDK).
The purpose of this SDK is twofold:
-
Provide an easy-to-use interface to the Intel® Geti™ platform, to manipulate Intel® Geti™ projects and other entities or automate tasks on the platform. All of this from a Python script or Jupyter notebook.
-
Provide an API to deploy and run models trained on the Intel® Geti™ server on your local machine. The SDK Deployment module provides a straightforward route to create a deployment for your Intel® Geti™ project, save it to a local disk and run it offline.
This SDK includes various example scripts and Jupyter notebooks which illustrate a range of use cases for the SDK. Make sure to check them out if you're getting started!