---
title: 简介
description: "用于构建一个通用的KernelContext对象，该上下文作为算子Host实现实际执行阶段的输入上下文。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/maintenref/basicdataapi/atlasopapi_07_00625.html
sourcePath: /source/zh/canncommercial/900/maintenref/basicdataapi/atlasopapi_07_00625.html
indexId: a7f33f87c77f926a027fde21712bc88a38650d03f14d8561353e23a310dcf0ec78
---
# 简介

用于构建一个通用的KernelContext对象，该上下文作为算子Host实现实际执行阶段的输入上下文。

OpKernelContextBuilder继承关系图如下：


该类继承自OpContextBuilderBase类，在Build构建ContextHolder对象之前，需要调用OpContextBuilderBase的OpType、OpName、IONum或IOInstanceNum，以及AppendAttr接口，分别设置算子的类型、名称、输入输出个数、以及算子的属性。


#### 需要包含的头文件

```
#include "base/context_builder/op_kernel_run_context_builder.h"
```


#### Public成员函数

```
OpKernelContextBuilder &InputTensorDesc(size_t index, ge::DataType dtype, ge::Format origin_format, ge::Format storage_format, const gert::ExpandDimsType &expand_dims_type = {})
OpKernelContextBuilder &OutputTensorDesc(size_t index, ge::DataType dtype, ge::Format origin_format, ge::Format storage_format, const gert::ExpandDimsType &expand_dims_type = {})
OpKernelContextBuilder &Inputs(std::vector<void *> inputs)
OpKernelContextBuilder &Outputs(std::vector<void *> outputs)
ContextHolder<KernelContext> Build()
```
