class ov::pass::ResolveNameCollisions

Overview

ResolveNameCollisions transformation helps to fix names collisions if nodes with autogenerated names have conflicts with other node names. More…

#include <resolve_names_collisions.hpp>

class ResolveNameCollisions: public ov::pass::ModelPass
{
public:
    // construction

    ResolveNameCollisions();
    ResolveNameCollisions();

    // methods

    "ResolveNameCollisions""0" OPENVINO_RTTI(, );
    virtual boolconst std::shared_ptr<ov::Model>& run_on_model();
};

Inherited Members

public:
    // typedefs

    typedef DiscreteTypeInfo type_info_t;

    // methods

    boolconst PassPropertyMask& get_property() const;
    voidconst std::string& set_name();
    std::string get_name() const;
    voidconst param_callback& set_callback();
    virtual voidconst std::shared_ptr<PassConfig>& set_pass_config();
    std::shared_ptr<PassConfig> get_pass_config();
    boolconst std::shared_ptr<const Node>& transformation_callback();
    virtual const type_info_t& get_type_info() const = 0;
    "ov::pass::ModelPass" OPENVINO_RTTI();
    virtual boolconst std::shared_ptr<ov::Model>& run_on_model() = 0;

Detailed Documentation

ResolveNameCollisions transformation helps to fix names collisions if nodes with autogenerated names have conflicts with other node names.

Every transformation call can change the graph structure and create some additional operations, autogenerated name is used if new operation doesn’t have friendly name. This transformations should be called after the transformation pipeline in order to fix names collisions.

There is also an additional mode “resolve_all_names”, the logic of which is the same, but for all “friendly_names” in the model ov, not only for autogenerated.