CreateConstV2

产品支持情况

产品 是否支持
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品

功能说明

使用ABI安全接口创建Const算子。

函数原型

template <typename T>
EsTensorHolder CreateConstV2(const std::vector<T> &value, const std::vector<int64_t> &dims, ge::DataType dt, ge::Format format = FORMAT_ND)

参数说明

参数名 输入/输出 说明
value 输入 张量数据向量。
dims 输入 张量维度向量。
T 输入 张量数据类型。
dt 输入 张量的数据类型。
format 输入 张量格式,默认为FORMAT_ND。

返回值说明

参数名 类型 说明
- EsTensorHolder 返回创建的Const的张量持有者算子,失败时返回无效的EsTensorHolder。

约束说明

该接口使用CompliantNodeBuilder V2接口构造Const节点,避免旧IR定义结构体中std::string跨C++ ABI传递的风险。

使用该接口要求运行时GE包支持CompliantNodeBuilder V2符号。如果需要兼容不包含V2符号的老GE包,请使用CreateConst

调用示例

EsGraphBuilder builder("test_graph");
std::vector<float> vecf = {1.1, 2.0, 3.2, 4.4};
std::vector<int64_t> dims = {4};
auto c1 = builder.CreateConstV2<float>(vecf, dims, ge::DT_FLOAT);