---
title: 接口列表
description: "用户可以基于深度学习框架TensorFlow 2.6.5进行训练或在线推理脚本的开发，TF Adapter提供了适配TensorFlow 2.6.5框架的用户接口。"
url: https://www.hiascend.com/document/detail/zh/TensorFlowCommercial/latest/migration/tfmigr2/tfmigr2_tfadapi_0001.html
sourcePath: /source/zh/TensorFlowCommercial/900/migration/tfmigr2/tfmigr2_tfadapi_0001.html
indexId: 035d6305d51773290a855adeed5e521f00c98888b47a4214e5e8c2e2d36fb17379
---
# 接口列表

用户可以基于深度学习框架TensorFlow 2.6.5进行训练或在线推理脚本的开发，TF Adapter提供了适配TensorFlow 2.6.5框架的用户接口。

图1 TF Adapter接口

接口路径：{install_path}/python/site-packages/npu_device。


**表1 TF Adapter接口列表**

| 接口名称 | 接口简介 |
| --- | --- |
| npu.open | 用于注册NPU设备，当前必须连续调用as\_default设置NPU为默认设备。 |
| npu.global\_options | 返回NPU设备初始化全局单例配置对象，通过修改该全局单例对象的属性值，可以控制NPU设备初始化时的选项。该接口必须在调用npu.open接口初始化NPU设备前完成设置。 |
| npu.distribute.all\_reduce | 集合通信算子AllReduce的操作接口，用于NPU分布式部署场景下，worker间的聚合运算。 |
| npu.distribute.broadcast | 集合通信算子Broadcast的操作接口，用于NPU分布式部署场景下，worker间的变量同步。 |
| npu.distribute.npu\_distributed\_keras\_optimizer\_wrapper | 在更新梯度前，添加NPU的allreduce操作对梯度进行聚合，然后再更新梯度。该接口仅在分布式场景下使用。 |
| npu.distribute.shard\_and\_rebatch\_dataset | 用于NPU分布式部署场景下，不同worker上数据集分片及batch大小调整。 |
| npu.keep\_dtype\_scope | 指定哪些算子保持原有精度，如果原始网络模型中的算子精度在AI处理器上不支持，则系统内部自动采用算子支持的高精度来计算。 |
| npu.set\_npu\_loop\_size | 用于设置NPU循环下沉执行时的循环次数。 |
| npu.train.optimizer.NpuLossScaleOptimizer | NPU提供的LossScaleOptimizer，浮点计算的溢出模式为“饱和模式”的场景下，由于NPU上的溢出运算不保证输出Inf或者NaN，所以此种场景下，使用LossScaleOptimizer的脚本应当替换为该优化器，来屏蔽溢出检测的差异。 |
| npu.ops.gelu | 计算高斯误差线性单元（GELU）激活函数。将输入Tensor乘以1个P(X <= x)，其中P(X) ~ N(0, 1)。 |
| set\_device\_sat\_mode | 设置针对浮点计算的进程级溢出模式，当前可支持两种溢出模式：饱和模式与INF/NaN模式。 饱和模式：计算出现溢出时，计算结果会饱和为浮点数极值（+\-MAX）。 INF/NaN模式：遵循IEEE 754标准，根据定义输出INF/NaN的计算结果。 |
