已关闭
【开源实习】Torch-NPU API一致性对齐:补齐测试用例、API功能对齐、补齐文档(22) #1628
dinglaiping创建于  3月30日关闭于  7月8日
dinglaiping成员
3月30日 创建

【任务分值】50分
Torch-NPU API 补齐 开源实习任务描述
一、任务概览
Torch-NPU 是昇腾 NPU 适配 PyTorch 框架的核心插件,为 PyTorch 提供完整的昇腾硬件算子支持、调度能力与推理优化,保障 PyTorch 模型可在昇腾 NPU 上无缝、高效运行。
当前 PyTorch 官方原生 API 已形成完善体系,但部分API尚未在 Torch-NPU 中完成实现、对齐与验证,导致部分 PyTorch 原生模型 / 代码在昇腾 NPU 上运行时出现接口报错、功能不一致等问题。
本任务邀请开发者参与 Torch-NPU API 补齐与适配验证,完成缺失 API 的开发、调试、测试与文档交付,完善 Torch-NPU 对 PyTorch 原生 API 的兼容性,提升昇腾 NPU 上 PyTorch 框架的易用性与模型适配覆盖率。

二、核心任务范围
1、用例补齐
(1)pytorch官方社区有用例,则做NPU适配,并将patch提交PR到torch-npu的test_upstream目录。
若test_upstream已有相关patch,则需要分析合理性,不合理则修改;进行验证并提供日志。
若NPU适配不需要做任何修改,则直接在issue中进行说明。
提交到2.7.1 2.8.0 2.9.0 2.10.0 2.11.0,后面如果发布了2.12.0版本同样要提交代码,但是master不需要提交。
(2)pytorch官方社区无用例,则自己写用例,并提交PR到torch-npu的test目录。
提交到2.7.1 2.8.0 2.9.0 2.10.0 2.11.0以及master,后面如果发布了2.12.0版本同样要提交代码。

2、API补齐
如果API运行失败,或者API和torch社区不一致,则需要提交PR对API进行功能补齐,并给出补齐思路、运行日志等。
提交到2.7.1 2.8.0 2.9.0 2.10.0 2.11.0以及master,后面如果发布了2.12.0版本同样要提交代码。

3、资料补齐
如果有api实际已经支持,但文档中没有,则在
https://gitcode.com/Ascend/pytorch/tree/v2.7.1/docs/zh/native_apis 中进行补充,注意:只需要提交PR合入2.7.1版本,但是该目录下所有版本的api支持情况都要刷新。

注意:整个补齐过程要在issue或者PR中要详细说明,如API功能、用例完备性(pytorch官方用例或者自写用例)、适配方案(API适配方案、用例适配方案)、运行结果等等。如果需要提交PR(用例、代码、文档等),则在PR中详述即可,可以不提交issue;如果不需要提交PR,则必须提交issue并在issue中详述。

三、交付标准与积分
开发者可认领任务列表中的单个 API / 一组关联 API(torch-npu社区标签为intern的issue中,每个issue中的api数量不等,开发者一次只能认领一个issue)。一个api积分10积分,如果一个issue中有10个api,那完成后即可获得100积分。

四、补充说明
积分规则:任务积分按最终完成结算,不做阶段累积(完整完成issue中各个API,可获得完整积分,否则无法获得积分);

参考资源:
参考指导:https://www.hiascend.com/developer/courses/detail/2016448591740112898
Torch-NPU 代码仓:https://gitcode.com/Ascend/pytorch
开发规范:所有代码、文档、测试用例必须遵循 Torch-NPU 开源社区规范,保证可读性、可维护性与可复现性;

五、任务价值
深度参与昇腾生态 + PyTorch 开源共建,贡献代码合入官方仓库;
掌握 NPU PyTorch 框架适配、异构计算核心技能;
获得开源社区认可,积累工业级实习项目经验,提升简历竞争力。

六、API任务
torch.fx.experimental.symbolic_shapes.ShapeEnv.size_hint
torch.fx.experimental.symbolic_shapes.ShapeEnv.suppress_guards
torch.fx.experimental.symbolic_shapes.ShapeEnvSettings
torch.fx.experimental.symbolic_shapes.StatefulSymbolicContext
torch.fx.experimental.symbolic_shapes.StatelessSymbolicContext

总结
任务核心:补齐 Torch-NPU 缺失的 PyTorch 原生 API,保障接口兼容、精度一致、可稳定运行;
交付物统一包含:补齐代码 + 运行日志 + 测试用例 + 资料,实际根据api情况略有区别,如不需要补齐则不需要补齐api代码。

likedislike
Ddinglaiping成员
3月30日 添加了label:intern
Ddinglaiping成员
4月3日 修改了issue 的描述
Ddinglaiping成员
4月13日 修改了issue 的描述
Ddinglaiping成员
4月17日 修改了issue 的描述
xuanzhi-2026
5月18日 评论:

/intern-assign

likedislike
ascend-bot成员
5月18日 评论:

@xuanzhi-2026 , 感谢您认领此任务, 请及时跟导师沟通, 导师审核通过后才能承担此任务, 否则任务无效.

likedislike
棕
5月19日 评论:

/intern-approve

likedislike
ascend-bot成员
5月19日 评论:

@xuanzhi-2026 , 恭喜您已成功领取该任务, 请及时处理任务. 认领任务>导师审核认领资格>处理任务>提交任务>导师审核>pr合入>获得积分.

likedislike
Xxuanzhi-2026
5月26日 关联了pull request:test(fx): add testcase for torch.fx.experimental.symbolic_shapes APIs
Xxuanzhi-2026
5月26日 关联了pull request:test(fx): add symbolic shapes api test
Xxuanzhi-2026
5月26日 关联了pull request:test(fx): add symbolic shapes api test
Xxuanzhi-2026
5月26日 关联了pull request:test(fx): add symbolic shapes api test
Xxuanzhi-2026
5月26日 关联了pull request:test(fx): add symbolic shapes api test
Xxuanzhi-2026
5月26日 关联了pull request:docs: add symbolic shapes api support status
lmm586
lmm586
6月7日 评论:

/intern-assign

likedislike
ascend-bot成员
6月7日 评论:

@luomeng-2026 , 您无法认领此任务, 已被他人认领.

likedislike
lihaofei-2026
lihaofei-2026
6月16日 评论:

/intern-assign

likedislike
ascend-bot成员
6月16日 评论:

@lihaofei-2026 , 您无法认领此任务, 已被他人认领.

likedislike
jihang-2026
jihang-2026
6月27日 评论:

/intern-assign

likedislike
ascend-bot成员
6月27日 评论:

@m0_68846875 , 您还未通过开源实习资格申请, 无法领取此任务, 请先完成实习申请.

likedislike
lmm586
lmm586
7月1日 评论:

/intern-assign

likedislike
ascend-bot成员
7月1日 评论:

@luomeng-2026 , 您无法认领此任务, 已被他人认领.

likedislike
ascend-robotascend-robot成员
7月8日 关闭了 issue
群青世界成员
7月10日 添加了label:event: api-consistency
ascend-robotascend-robot成员
7月13日 添加了label:resolved