* move frontend folder to pyopenvino
* rename includes and add compile options
* include frontend to pyopenvino
* move __init__.py
* move tests
* remove mock from tests_compatibility
* rename import module
* Fix code style cpp
* refactor a few lines
* update few lines in mo
* Add pyopenvino to dependencies
* Fix mock
* update docstring
* Fix mo test
* remove module local
* fix code style
* update comment
* fix return type
* update docs
* fix code style
* fix building
* fix code style
* try to move MO to use new api
* Export more enum names from nrgaph
* [Python API] quick fix of packaging
* update tests
* fix setup.py
* small fix
* small fixes according to comments
* skip mo frontend tests
* update mo to new imports
* try to fix win wheel
* fix win wheel
* fix code style
Co-authored-by: Anastasia Kuporosova <anastasia.kuporosova@intel.com>
Co-authored-by: y <ilya.lavrenov@intel.com>
* dynamic shape calculation for GatherElements
* dynamic shape calculation for sparse_reshape, corrections for sparse_segment_mean/sqrtn/sum
* corrected dynamic_dimension_value, added two unit-test cases
* simplified solution, added missing Nones
* some corrections
* added a couple of more unit-tests
* Fix in the MO infer function of Gather.
* Added comment about done fix.
* Added more tests.
* Now Gather and AttributedGather are always marked as reinterp_shape=True.
* add subgraph instead of constant with fixed shape to allow model have undefined batch
* updated transformation (not checked yet)
* changed ReverseV2ToReverseSequence to support dynamic shapes/reshape;
added transformation to reverse_tensor_iterator to support new subgraph got from ReverseV2ToReverseSequence
* remove changes that should not be on this branch
* added tests;
fixed old transformation
* added delete of reversesequences to avoid run of transformation twice
* fixed pattern check for case with dynamic value for input of reversesequence
* Revert "fixed pattern check for case with dynamic value for input of reversesequence"
This reverts commit 0c04164e
* Revert "added delete of reversesequences to avoid run of transformation twice"
This reverts commit fcb7de9c
* reversed changes in reverse_tensorr_iterator for Squeeze case;
update reverse_tensor_iterator with shapeof subgraph
added permutations for attributes to pass layer test
* minor fix for dynamic shape
* updated test;
fixed backward compatibility in reverse_tensor_iterator transformation
* revew comments fixed:
added comments;
refactoring done;
fixed framework name saving for rank = 1
* minor review fixes
* small fix
* Separated old_api_map into old_api_map_order and old_api_element_type.
* Clang format, small fix.
* Corrected comment.
* Removed OldApiMapOrderAttr class.
* Renaming all frontends from "*_ngraph_frontend*" to "_ov_frontend*"
Also Debug builds on Windows release frontends without "d" suffix will not be loaded
* Fix review comments and add wheels test debug prints
* More debug prints
* Load by absolute path and remove debug prints
* [MO, TF] Support Custom Wide and Deep CTR model by MO
It implements implicit support of EmbeddingSegmentsMean operation through decomposition.
Also, this extends the current transformation to fuse TensorFlow sub-graph (for Wide and Deep model family)
containing SparseSegmentSum and SparseSegmentMean operations into EmbeddingSegmentsSum or EmbeddingSegmentsMean.
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix unit-tests after modifications of SparseToDense and EmbeddingSegmentsOperationFusing
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Document SparseSegmentMean support
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add computation scheme for normalization coeffs and correct documentation
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* add performance hint to time infer
* move unit_tests to tests pkg
* change unit_tests path in azure lin
* change path to mo in bom test
* fix tests_path
* change mo dir path
* initial version of transformation workable for loop
* moved transformation to back + minor changes in result names
* fixed mistake: to concatenate results of all iterations Unsqueeze should be added
* added shape inference for new nodes and extend test
* added support of TensorIterator
* If support + test;
fix to save model with TI after transformation
* fix code and tests according to run with ir_reader
* added finding max internal_layer_id in sub-graph + added comments to code
* turn off transformation because it should not be used in MO scenarios
* refactor code to find out iterations count for TensorIterator
* chenged name of final result to srtucture loop1.loop2.node for path [loop1, loop2, node]
* change port number to index of added output
* return list of new nodes
* change naming of output to standard way;
return result node as output of transformation
* refactor transformation, add more comments; fine up tests
* review fixes: add more comments, refactoring of infer function, fix in iterations count calculation
* added processing of dynamic iterations count + tests
* moved iterations count calculation to TI
* fixed bug in iterations count calculation
* fix bug with adding iterations count to wrong dimension + test
* review fixes: minor renaming + fixed bug with unset stride for TI
* move logic with output record outside function calculation iteration count;
fix case with negative start/end;
fix case when division result is not integer;
added tests for such cases
* review fixes: refactoring of toerations count calculation
* added IteratorGetNextCut, some improvements in graph.py
* added allowed types check
* reused new graph API for ports
* returned back old API 'out_nodes', removed soft-getting name from base class, changed run_after -> []
* correctly used new port API
* corrected IteratorGetNext message
* Changed namespace from ngraph to ov for OV Frontends
* Fixed python
* Fixed ONNX Editor for windows
* Try to fix centos
* Fixed code style
* Revert frontend loader
* Add GatherND_8 operation
* Update shape infer function and tests
* Initial commit for nGraph GatherND_8 operation
* Add GatherNDBase class implementation
* Fix base class errors
* Add missrd header
* Update base class
* Update GatherND_8 implementation
* Fix codestyle
* Fix wrong rank
* Implement tests for gatherND_8 shape inference function
* fix codestyle
* Add limitation to doc
* Siplyfy check in shape inference
* Add more test cases
* Update shape inference function
* Add more test cases to cover all case with dynamic input shapes
* Update shape inference function
* Refactor tests
* Add visitor tests for gatherND_8 operation
* Correct comment
* Add additional check is shape inference function
* Update shape inference implementation for gathernd operartion
* Fix codestyle
* Remove restriction for data is fully defined
* Update shape inference functon
* Fix missed check for nonetype
* Remove redundant checks for batch_dims
* Fix codestyle
* [IE Transformations] Disable pull_transpose_through_fq transformation for activations path
* Update MO part
* Replace TEST to TEST_F
* Fix tests with fixture.
Remove dynamic shapes tests due to the fact that there is always a constant at the input
* New approach to offline transformations
* Include paths fix
* Imports fix
* offline_transformations target dependency simplification
* MakeStatefulTransformation exposed to python
* Python bindings build configuration fix
* Test variable name refactor
* Stop crying (snow)flake
* Snake cased offline transformations API
* Removal of old offline transformations from python
* Imports adaptation to new code style
* offline_transformations as a part of the common wheel
* Cmake simplification and refactor
* Correct transform invocation
* CI fix
* Proper dependency check in MO
* _pyngraph as a dependency of MO in cmake
* IR serialization fix in MO
* POT adaptation to the new API
* Revert "Removal of old offline transformations from python"
This reverts commit f9a0551ead.
* Merge of old& new bindings for offline_transformations
* Revert "POT adaptation to the new API"
This reverts commit 499554e68c.
* Obsolete cmake line removal
* Missing comma and merge conflict fix
* Offline transformations tests fix
* IE imports removal from check_ie_bindings
* Installation of opevino/__init__.py fix
* Obsolete line removal
* MO serialization switched to the new API
* Revert of preliminary MO adaptation to the new API
* Another magic spell that will hopefully make CI pass
* Python api cmake dependencies reorg
* Temporary solution for the CI/cpack errors
* Installation fix and code formatting
* ie_api & pyopenvino dependency removal
* Explicit cpack configuration for the new API
* cpack configuration adaptation
* Revert of obsolete cpack changes
Co-authored-by: Alexander Zhogov <alexander.zhogov@intel.com>
* MO update for MaxPool-8
* using attrs in op constructor
* remove pads_value attr and pad fusing
* added axis and index_element_type parameters
* updated mo maxpool-8
* added maxpool-8->maxpool-1 transformation, disabled Pad to MaxPool fusing
* added remove_values_output to pooling extractors
* moved remove_values_output attribute to pooling infer function
* fixed ir_comparator tests
* disabled pad to maxpool fusing test
* added downgrade transformation test
* downgrade transformation update
* updated ir reader and tf pooling layer tests
* updated onnx pooling layer tests and MO infer unit test
* updated ir reader extender
* uncommented layer tests code
* disabled MaxPool-8 python binding test
* comment resolving, removed PadMaxPool fusing
* removed test
* downgrade transformation fix, MO codestyle changes
* removed axis check from downgrade transformation
* mark max_pool_test as xfail
* updated downgrade transformation test
* using OPENVINO_RTTI
* Added transposes insertion for Parameter and Result.
* Separated into several transformations.
* Corrected runtime_info format.
* Fixed runtime info serialization.
* Code refactoring.
* Corrected checks.
* Added debug output.
* Added check.
* Fixed unit tests.
* Changed old api map format, removed debug output.
* Moved serialize to rt_info property, code corrections.
* Refactored RTInfo class.
* Small corrections.
* Small corrections.
* Removed redurant import.
* Added tests, added undefined default type.
* Code reformat.
* Fixed serialization unit tests.
* Added comment.
* Added comment.
* Small test correction.
* Changed default values of old_api_map to values from old API IR.
* np.array -> int64_array
* Update MO to use FE to read IR; Swith MO IR version to 11
* Preserve output node name when inserting Transpose
* Codestyle
* Fix layer tests
* Pylint fix
* Disable ref_graphs comparision in layer tests
* codestyle
* Updated MO IR reader.
* Moved version initialization to constructor of OldApiMap.
* Added shape infer after transpose insertion.
* Fixed Pylint
* Removed wrong attribute removal.
* Added transposes insertion for Parameter and Result.
* Separated into several transformations.
* Corrected runtime_info format.
* Fixed runtime info serialization.
* Code refactoring.
* Corrected checks.
* Added debug output.
* Added check.
* Fixed unit tests.
* Changed old api map format, removed debug output.
* Moved serialize to rt_info property, code corrections.
* Refactored RTInfo class.
* Small corrections.
* Small corrections.
* Removed redurant import.
* Added tests, added undefined default type.
* Code reformat.
* Fixed serialization unit tests.
* Added comment.
* Added comment.
* Small test correction.
* Changed default values of old_api_map to values from old API IR.
* np.array -> int64_array
* Update MO to use FE to read IR; Swith MO IR version to 11
* Preserve output node name when inserting Transpose
* Codestyle
* Fix layer tests
* Pylint fix
* Disable ref_graphs comparision in layer tests
* codestyle
* Updated MO IR reader.
* Moved version initialization to constructor of OldApiMap.
* Added shape infer after transpose insertion.
* Fixed Pylint
* Removed wrong attribute removal.
* Serialize fix.
Co-authored-by: Gleb Kazantaev <gleb.kazantaev@intel.com>
* 1. Removed explicit SHARED from libraries
2. Fixed double definition for ie_layer_validators
* Fixed SEG in unit-test: order of initialization for global vars
* Added an ability to find plugins.xml from static IE
* Fixes in unit-test
* Migrated to new macro for import / export
* Minimized number of custom dllexport
* Don't use IR v7 for static libraries
* Revert for merge
* Don't enable tests with dlopen for static libraries
* Code style
* Added condition for export
* Revert format_reader
* Removed forward decalaration with external linkage
* Fixed IE linkage on Windows
* Reverted back 2 flags
* fixed dealing with None values in then/else branches of Select
* generalized solution when condition is non one elemental
* fix when both branches are None
* minor corrections
* rewritten Select unit-tests; fixed for condition with [True] mask
* removed mutable default arg from build_graph, added a few more test cases with masked condition, other minor corrections
* corrected output_shape calculation when broadcasting is off
* layer tests fixed: relaxed assert for condition shape to let pass TF Select
* corrected shape calculation when condition is not elementwise equal, calculated calculation for TF, corrected calculation of shape when values are not set
* fixed a typo for Select from TF Where
* Migrate POC for TensorFlow frontend
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Refactor InputModelTensorFlow API
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Repack POC to official API
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove tensorflow API from public include
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Make TF frontend work from MO and clean-up code
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply codestyle
* Fix win biuld
* Fix Linux build
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Implement Place class
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Determine outputs from graph
* Implement all Place classes
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Make small clean-up
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply code-style corrections
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Determine cut nodes
* Apply codestyle
* Rework to use places
* Fix conversion issue
* Fix build
* Fix conversion
* Small fixes
* Add test for tf frontend
* Add tests
* Implement partial conversion
* Use dynamic type in TFFrameworkNode
* Fix build on Linux
* Implement InputModelTF class
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix code by replacing InputModelTensorFlow to InputModelTF
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix to pass getPlaceByTensorName test
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Refactor and clean the code
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Finalize refactoring code
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Support freezing inputs
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add support for pruning input ports as new model output
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply code-style fixes
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* move op convertors to separate files, refactoring
* openvino codestyle
* openvino codestyle
* fix crash of layer tests
* fix missprint
* Implement TensorFlow NodeContext and DecoderTFProto classes
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Switch to new NodeContext
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove ngraph_builder class and node_context_impl class
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Move decoder/graph_iterator to separate files and remove old files
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Document Decoder, GraphIterator, and NodeContext classes
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply code style
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove empty file graph_iterator_proto.cpp and redundant comments
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Use base class for GraphIterator in model class and correct exception class
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Use ends_with from util library
* Remain only InputModelTF constructor with GraphIterator and adopt other code
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Correct code after merge
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply code style
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix code based on feedback: delete extra namespace usage, etc.
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Make legacy TF frontend default in MO and avoid reading tf models from ReadNetwork
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix build issue with FrameworkNode after upstream merge
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Correct frontend name in test and clean the code
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* refactoring of tf FrontEnd: rename namespaces, delete default opset
* codestyle
* fix e2e tests
* change namespaces of external classes
* resolve review comment
* codestyle
* Clean useless comments and fix tests
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add copyright for proto files
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Make op translators a part of FrontEndTF
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Align CMakeLists.txt file with other frontends
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Add job_pool into CMakeLists.txt for tensorflow tests
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove cout and WA in ie_network_reader.cpp
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Correct DecoderBase and FrontEndTF methods, clean the code from if 0, utility.hpp, ngraph_conversions.hpp
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Clean operation translator code and remove empty implementation
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Extend cmake template files with tensorflow frontend
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply code-style
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix build issues on MacOS and apply review feedback
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove ConstantFolding pass, add destructors for DecoderBase, GraphIterator, and fix Win build
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix Windows build issue
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Apply code-style fix
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Fix issues with code style: remove virtual keyword, OpMap removal
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Resolve review remarks
* Resolve review remarks
* codestyle
* resolve review remarks
* fix copyright
* resolve review comments
Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>
Co-authored-by: Ivan Tikhonov <ivan.tikhonov@intel.com>