openvinotoolkit/openvino

Extend Python API with a new `model.reshape()` overload

Open

#18.347 geöffnet am 3. Juli 2023

Auf GitHub ansehen
 (64 Kommentare) (0 Reaktionen) (1 zugewiesene Person)C++ (3.229 Forks)auto 404
category: Python APIgood first issueno_stale

Repository-Metriken

Stars
 (10.286 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 14T 3h) (305 gemergte PRs in 30 T)

Beschreibung

Context

Currently there are multiple ways to reshape model inputs in Python API. They are defined as bindings to C++ code.

A new way to reshape has been suggested - implicit input reshaping with a list of input shapes. An example of new, desired overload/Python API function:

  1. model has three inputs: A, B and C
  2. model is being reshaped with a list of shapes: model.reshape([[2,2], [1, 3, 224, 244], [10]])
  3. the given shapes are assigned to respective inputs: A.shape = [2, 2] B.shape = [1, 3, 244, 244] C.shape = [10]

Python API model binding needs to be extended with a new overload which will add this functionality.

What needs to be done?

  1. Add a new overload for model.reshape in model C++ bindings
  2. Add tests for the new functionality in the correct test file - test_model.py
  3. Submit a PR
  4. Wait for review

Resources

Contact points

@p-wysocki @jiwaszki @akuporos

Don't hesitate to reach out, we're here to help!

Ticket: 110444

Contributor Guide