概述
提供基于原生PyTorch框架2.2.0/2.1.0/1.11.0的API接口支持情况与限制说明以及Ascend Extension for PyTorch自定义API的接口说明、功能描述、参数说明与使用示例。
Ascend Extension for PyTorch提供的自定义接口参考PyTorch社区公开接口规范:Public API definition and documentation,与官方提示一致。如果一个函数符合公开接口的标准且在文档中有展示,则该接口是公开接口。否则,使用该功能前可以在社区询问该功能是否确实是公开的或意外暴露的接口,因为这些未暴露接口将来可能会被修改或者删除。
Ascend Extension for PyTorch使用monkey-patch方式实现PyTorch接口的适配,通过将Ascend Extension for PyTorch中的部分接口动态替换PyTorch中的接口实现对部分接口的支持,推荐用户使用文档中推荐的调用方式。
Ascend Extension for PyTorch项目采用C++和python联合开发,当前正式对外接口仅包括python接口。在torch_npu的二进制包中动态库不直接提供服务,暴露的C++接口为内部使用,不建议用户使用。
当前有部分接口会被标记为beta类接口。beta类接口属于实验性接口,部分场景下可能出现异常,请谨慎使用此类接口。我们致力于将beta类接口纳入稳定接口中,但完成之前仍有可能会根据需要进行改动,包括但不限于参数变更、名称变更和移除。