---
title: aclmdlGetOutputNameByIndex
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/ascendgraphapi/aclcppdevg_03_1457.html
sourcePath: /source/zh/canncommercial/900/API/ascendgraphapi/aclcppdevg_03_1457.html
indexId: 4610d3d383a7f0913b3d2b3f3da4be08194dfff79c7445171bf714f132c38b1772
---
# aclmdlGetOutputNameByIndex

#### 产品支持情况

| 产品 | 是否支持 |
| --- | --- |
| Atlas 350 加速卡 | √ |
| Atlas A3 训练系列产品 / Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品 / Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | √ |
| Atlas 推理系列产品 | √ |
| Atlas 训练系列产品 | √ |


#### 功能说明

根据模型描述信息获取模型中指定输出的输出算子名称、算子输出边的下标、top名称或输出名称。


#### 函数原型

```
const char *aclmdlGetOutputNameByIndex(const aclmdlDesc *modelDesc, size_t index)
```


#### 参数说明

| 参数名 | 输入/输出 | 说明 |
| --- | --- | --- |
| modelDesc | 输入 | aclmdlDesc类型的指针。 需提前调用aclmdlCreateDesc接口创建aclmdlDesc类型的数据。 |
| index | 输入 | 指定获取第几个输出的输出算子名称、算子输出边下标、top名称或输出名称，index值从0开始。 |


#### 返回值说明

返回指定输出的输出算子名称、算子输出边的下标、top名称或输出名称。不同原始网络、不同构建模型的方式，调用本接口获取的返回值格式不同。

- Caffe网络
  返回值格式如下，各项之间以冒号分割，如果模型中包含top名称就返回，不包含就不返回：

```
输出算子名称
:
算子输出边下标
:
top名称
```


- TensorFlow网络

  - 使用ATC工具构建om模型的场景下，返回值格式如下，各项之间以冒号分割：

```
输出算子名称
:
算子输出边下标
```


  - 使用构图接口构建om模型的场景下，返回值格式如下，各项之间以下划线分割：

```
output
_
网络输出下标
_
输出算子名称
_
算子输出边下标
```


    构图接口的详细说明请参见《图开发(https://www.hiascend.com/document/detail/zh/canncommercial/900/programug/graphdevg/atlasag_25_0081.html)》。

- ONNX网络

  - 在构建模型时，不指定输出节点名称（node_name）或输出名称（output的name），或者仅指定输出名称，返回值格式如下，各项之间以冒号分割：

```
输出算子名称
:
算子输出边下标
:
输出名称
```


  - 在构建模型时，指定输出节点名称（node_name）：
    输出算子名称可能是图融合后的算子名称，也可能是子图名称。
    - 使用ATC工具构建om模型的场景下，返回值格式如下，各项之间以冒号分割：

```
输出算子名称
:
算子输出边下标
```


    - 使用构图接口构建om模型的场景下，返回值格式如下，各项之间以下划线分割：

```
output
_
网络输出下标
_
输出算子名称
_
算子输出边下标
```


      构图接口的详细说明请参见《图开发(https://www.hiascend.com/document/detail/zh/canncommercial/900/programug/graphdevg/atlasag_25_0081.html)》。


  - 同时指定输出节点名称（node_name）和输出名称（output的name），接口返回报错。
