NodeDefBuilder类
NodeDef是一个Protocol Buffer,用于框架UT/ST测试时,构造节点信息,包含了节点的名称、类型、输入和输出等信息。
本类提供了NodeDef的构造接口,包含添加NodeDef的Input,Output,Attr。开发者不直接调用下列接口。
接口名  | 
接口功能  | 
|---|---|
static std::shared_ptr<NodeDef> CreateNodeDef();  | 
创建算子NodeDef,返回NodeDef类型指针。  | 
NodeDefBuilder(NodeDef *nodeDef, std::string name, std::string opName);  | 
NodeDef的构造函数,通过入参nodeDef指针,name算子名称以及opName算子类型构造算子的NodeDef。返回NodeDefBuilder类型对象。  | 
NodeDefBuilder& Input(const InputOutputNode& input);  | 
NodeDef添加input tensor。通过入参InputOutputNode中提供node的shape,type,format信息构造NodeDef信息。  | 
NodeDefBuilder& Output(const InputOutputNode& output);  | 
NodeDef添加output tensor。通过入参InputOutputNode中提供提供node的shape、type、format信息构造NodeDef信息。  | 
NodeDefBuilder& Attr(std::string name, int32_t value);  | 
NodeDef添加属性,属性类型是int32。  | 
NodeDefBuilder& Attr(std::string name, int64_t value);  | 
NodeDef添加属性,属性类型是int64。  | 
NodeDefBuilder& Attr(std::string name, float value);  | 
NodeDef添加属性,属性类型是float。  | 
NodeDefBuilder& Attr(std::string name, double value);  | 
NodeDef添加属性,属性类型是double 。  | 
NodeDefBuilder& Attr(std::string name, boolvalue);  | 
NodeDef添加属性,属性类型是bool。  | 
NodeDefBuilder& Attr(std::string name, aicpu::DataType value);  | 
NodeDef添加属性,属性类型是aicpu::DataType。  | 
NodeDefBuilder& Attr(std::string name, const std::vector<bool> &value);  | 
NodeDef添加属性,属性类型是std::vector<bool>。  | 
NodeDefBuilder& Attr(std::string name, const std::string &value);  | 
NodeDef添加属性,属性类型是std::string。  | 
NodeDefBuilder& Attr(std::string name, const std::vector<std::string> &value);  | 
NodeDef添加属性,属性类型是std::vector<std::string>。  | 
NodeDefBuilder& Attr(std::string name, const std::vector<int64_t> &value);  | 
NodeDef添加属性,属性类型是std::vector<int64_t>。  | 
NodeDefBuilder& Attr(std::string name, const std::vector<float> &value);  | 
NodeDef添加属性,属性类型是std::vector<float>。  | 
NodeDefBuilder& Attr(std::string name, const std::vector<aicpu::DataType> &value);  | 
NodeDef添加属性,属性类型是std::vector<aicpu::DataType>。  | 
NodeDefBuilder& Attr(std::string name, const std::vector<int64_t> &shape, std::string type);  | 
NodeDef添加属性,属性类型是std::vector<int64_t>,入参type需要设置为"shape"。  | 
NodeDefBuilder& Attr(std::string name, const std::vector<std::vector<int64_t>> &shapeLists, std::string type);  | 
NodeDef添加属性,属性类型是std::vector<std::vector<int64_t>>,入参type需要设置为"shape_list"。  | 
NodeDefBuilder& Attr(std::string name, aicpu::Tensor *tensor);  | 
NodeDef添加属性,属性类型是aicpu::Tensor。  | 
NodeDefBuilder& Attr(std::string name, std::vector<aicpu::Tensor *> &tensors);  | 
NodeDef添加属性,属性类型是std::vector<aicpu::Tensor *>。  |