openvinotoolkit/openvino

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

Open

#18 347 ouverte le 3 juil. 2023

Voir sur GitHub
 (64 commentaires) (0 réactions) (1 assigné)C++ (3 229 forks)auto 404
category: Python APIgood first issueno_stale

Métriques du dépôt

Stars
 (10 286 stars)
Métriques de merge PR
 (Merge moyen 14j 3h) (305 PRs mergées en 30 j)

Description

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

Guide contributeur