news 2026/5/9 20:18:13

CANN/metadef构建接口文档

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CANN/metadef构建接口文档

Build

【免费下载链接】metadefAscend Metadata Definition项目地址: https://gitcode.com/cann/metadef

函数功能

根据之前的设置,构建InferDataTypeContext,返回一个ContextHolder<InferDataTypeContext>对象。

函数原型

ContextHolder<InferDataTypeContext> Build()

参数说明

返回值说明

返回一个ContextHolder<InferDataTypeContext>对象。通过调用GetContext()方法可获取InferDataTypeContext指针。

约束说明

  • 所有通过指针传入OpInferDataTypeContextBuilder的参数,其内存所有权归调用者。调用者必须确保这些指针在ContextHolder对象的整个生命周期内有效。
  • ContextHolder析构时会自动释放内部上下文资源。请勿手动释放GetContext()返回的指针。

调用示例

#include "base/context_builder/op_infer_datatype_context_builder.h" OpInferDataTypeContextBuilder ctx_builder; ge::DataType dtype0 = ge::DT_FLOAT; ge::DataType dtype1 = ge::DT_FLOAT16; ge::DataType dtype2 = ge::DT_FLOAT; ge::DataType dtype3 = ge::DT_FLOAT16; ge::DataType dtype4 = ge::DT_FLOAT16; std::vector<ge::DataType *> input_dtype_ref = {&dtype0, &dtype1, &dtype2, &dtype3}; std::vector<ge::DataType *> output_dtype_ref = {&dtype4}; auto holder = ctx_builder.OpType("Concat") .OpName("concat_1") .IOInstanceNum({4}, {1}) .InputTensorDesc(0, dtype0, ge::FORMAT_ND, ge::FORMAT_ND) .InputTensorDesc(1, dtype1, ge::FORMAT_ND, ge::FORMAT_ND) .InputTensorDesc(2, dtype2, ge::FORMAT_ND, ge::FORMAT_ND) .InputTensorDesc(3, dtype3, ge::FORMAT_ND, ge::FORMAT_ND) .OutputTensorDesc(0, ge::FORMAT_ND, ge::FORMAT_ND) .Build(); auto ctx = holder.GetContext(); EXPECT_NE(ctx, nullptr); auto ctx_compute_node_info = ctx->GetComputeNodeInfo(); EXPECT_NE(ctx_compute_node_info, nullptr); EXPECT_EQ(std::string(ctx_compute_node_info->GetNodeType()), std::string("Concat")); EXPECT_EQ(std::string(ctx_compute_node_info->GetNodeName()), std::string("concat_1")); EXPECT_EQ(ctx_compute_node_info->GetIrInputsNum(), 1); EXPECT_EQ(ctx_compute_node_info->GetIrOutputsNum(), 1); EXPECT_EQ(ctx_compute_node_info->GetInputsNum(), 4); EXPECT_EQ(ctx_compute_node_info->GetOutputsNum(), 1); const CompileTimeTensorDesc *info_input_0 = ctx_compute_node_info->GetInputTdInfo(0); EXPECT_NE(info_input_0, nullptr); EXPECT_EQ(info_input_0->GetStorageFormat(), ge::FORMAT_ND); EXPECT_EQ(info_input_0->GetOriginFormat(), ge::FORMAT_ND); ge::DataType expected_datatype_0 = ge::DT_FLOAT; ge::DataType expected_datatype_1 = ge::DT_FLOAT16; EXPECT_EQ(ctx->GetInputDataType(0), expected_datatype_0); EXPECT_EQ(ctx->GetInputDataType(1), expected_datatype_1); EXPECT_EQ(ctx->GetInputDataType(2), expected_datatype_0); EXPECT_EQ(ctx->GetInputDataType(3), expected_datatype_1); EXPECT_EQ(ctx->GetOutputDataType(0), ge::DT_MAX);

【免费下载链接】metadefAscend Metadata Definition项目地址: https://gitcode.com/cann/metadef

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 20:17:33

ClawSwarm:多智能体AI生产力系统部署与定制指南

1. 项目概述&#xff1a;ClawSwarm&#xff0c;一个为个人打造的多智能体生产力操作系统 如果你正在寻找一个能帮你处理日常琐事、回答复杂问题、甚至执行特定任务的AI助手&#xff0c;但又不满足于ChatGPT这类单一对话模型&#xff0c;那么ClawSwarm可能就是你一直在等的那个…

作者头像 李华
网站建设 2026/5/9 20:16:32

Z-score本质:数据标准化的底层逻辑与工程实践

1. 为什么你手里的“85分”和隔壁班的“92分”根本不在一个赛道上&#xff1f;——Z-score不是数学游戏&#xff0c;是数据世界的通用翻译器你刚拿到一份体检报告&#xff0c;上面写着骨密度T值-1.8&#xff0c;医生说“轻度骨量减少”&#xff1b;转头又看到孩子期末考卷&…

作者头像 李华
网站建设 2026/5/9 20:13:31

CANN/asc-devkit AddOutputTd函数

AddOutputTd 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言&#xff0c;原生支持C和C标准规范&#xff0c;主要由类库和语言扩展层构成&#xff0c;提供多层级API&#xff0c;满足多维场景算子开发诉求。 项目地址: https://gitcode.co…

作者头像 李华
网站建设 2026/5/9 20:07:48

顶会论文模块复现与二次创新:CVPR 2026 思路:FacT(自适应频率调优)模块提升恶劣天气下的检测鲁棒性

一、写作动机 你是否遇到过这样的情况——模型在晴天测试集上 mAP 冲到 75%+,到雨天、雾天场景直接腰斩到 40% 以下?折腾了大半个月的数据增强,换 backbone、调学习率、加注意力模块,暴雨天该漏检还是漏检,于是老板灵魂拷问:“你这是过拟合天气了吧?” 你是否看到过这…

作者头像 李华
网站建设 2026/5/9 20:02:35

N_m3u8DL-RE跨平台流媒体下载技术架构深度解析

N_m3u8DL-RE跨平台流媒体下载技术架构深度解析 【免费下载链接】N_m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文. 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8DL-RE N_m3u8DL-RE作为…

作者头像 李华