🔹 [2026.04.25]:Rec SDK 26.0.0 Release 版本发布
🔹 [2026.02.24]:资料结构整改,更新Roadmap(2026Q1)
Rec SDK作为面向互联网市场搜索推荐广告的应用使能SDK产品,对于搜索推荐广告模型训练的应用场景需求,提供基于昇腾平台的搜索推荐广告框架,支撑大规模搜推广场景,助力完成搜推广模型的高效训练。
Rec SDK的功能涉及:
- 模型训练基础功能。支持单机单卡训练、多机多卡分布式训练。
- 推荐场景特有功能。基于Rec SDK的稀疏表方案,Rec SDK提供必备功能,如特征保存和加载、特征准入、特征淘汰等。
- 大规模稀疏表特有功能。支持加速卡内存、主机内存、主机磁盘多级存储、支持多机存储、支持动态扩容。规模可超10TB。
| 组件名称 | 功能概要 | 文档链接 |
|---|---|---|
| tf_rec_v1 | 支持单机单卡、多机多卡分布式训练;提供特征保存和加载、特征准入与淘汰、动态扩容、动态shape、自动改图、Hot_Embedding、定制WarmStart、增量模型保存与加载、一表多查、PCIe through等推荐场景特有功能;支持加速卡内存、主机内存、主机磁盘多级存储,规模可超10TB;提供性能和精度检测工具 | 详细介绍 |
| tf_rec_v2 | 支持单机单卡、多机多卡分布式训练;提供稀疏表创建、查询、保存与加载、特征准入与淘汰等推荐场景特有功能;支持大规模稀疏表存储 | 详细介绍 |
| torch_rec_v1 | 支持单机单卡、多机多卡分布式训练;提供哈希映射、EBC查表、Row-wise分表、流水查表、查表融合算子等推荐场景特有功能;支持按照Row-wise的分布式稀疏表切分方式 | 详细介绍 |
| torch_rec_v2 | 支持单机单卡、多机多卡分布式训练;提供哈希映射、Row-wise分表、稀疏表动态扩容与淘汰、动态稀疏表算子等推荐场景特有功能;基于HKV高性能key-value存储加速库实现动态稀疏表算子 | 详细介绍 |
| 组件名称 | 基础框架 | 适配状态 | 框架类型 | 功能描述 | 文档链接 |
|---|---|---|---|---|---|
| tf_rec_v1 | TensorFlow | 非全下沉 | 稀疏推荐框架 | 基于TensorFlow,适配NPU设备的非全下沉稀疏推荐框架 | 快速入门 |
| tf_rec_v2 | TensorFlow | 全下沉 | 稀疏推荐框架 | 基于TensorFlow,适配NPU设备的全下沉稀疏推荐框架(POC状态) | 快速入门 |
| torch_rec_v1 | PyTorch + TorchRec | 非全下沉 | 稀疏推荐框架 | 基于PyTorch、TorchRec开源软件,适配NPU设备的非全下沉稀疏推荐框架 | 快速入门 |
| torch_rec_v2 | PyTorch + TorchRec | 全下沉 | 稀疏推荐框架 | 基于PyTorch、TorchRec开源软件,适配NPU设备的全下沉稀疏推荐框架(POC状态) | 快速入门 |
关键术语说明
- 非全下沉:指部分计算任务在NPU上执行,部分在CPU上执行的混合模式
- 全下沉:指所有计算任务都下沉到NPU上执行
- POC状态:Proof of Concept(概念验证)状态,表示该组件仍处于试验验证阶段,功能可能不完整或不稳定
Rec SDK支持的产品型号如下:
- Atlas 200T A2 Box16
- Atlas 800T A2 训练服务器
- Atlas 900 A3 SuperPoD 超节点
- Ascend 950 系列产品
| 组件名称 | 安装指南 |
|---|---|
| tf_rec_v1 | 安装指南 |
| tf_rec_v2 | 安装指南 |
| torch_rec_v1 | 安装指南 |
| torch_rec_v2 | 安装指南 |
| 模型名称 | 适配框架 | 组件名称 | 代码链接 |
|---|---|---|---|
| DIN | PyTorch | torch_rec_v1 | 代码链接 |
| DLRM(DCNv2) | PyTorch | torch_rec_v1 | 代码链接 |
| GR | PyTorch | torch_rec_v1 | 代码链接 |
| GR | PyTorch | torch_rec_v1 | 代码链接 |
| mmoe、eta | PyTorch | torch_rec_v1 | 代码链接 |
| GR | PyTorch | torch_rec_v2 | 代码链接 |
Rec SDK版本分支的维护阶段如下:
| 状态 | 时间 | 说明 |
|---|---|---|
| 计划 | 1—3 个月 | 计划特性 |
| 开发 | 6—12 个月 | 开发新特性并修复问题,定期发布新版本。针对不同的PyTorch版本采取不同的策略,常规分支的开发周期分别为6个月,长期支持分支的开发周期为12个月 |
| 维护 | 1年/3.5年 | 常规分支维护1年,长期支持分支维护3.5年。对重大BUG进行修复,不合入新特性,并视BUG的影响发布补丁版本 |
| 生命周期终止(EOL) | N/A | 分支不再接受任何修改 |
torch_rec_v1 各版本维护状态如下:
| torch_rec_v1版本 | 维护策略 | 当前状态 | 发布时间 | 后续状态 | EOL日期 |
|---|---|---|---|---|---|
| 1.1.0 | 常规分支 | 维护态 | 2025年7月23日 | 预计 2026年9月30日后进入无维护状态 | 2026年9月30日 |
| 1.2.0 | 常规分支 | 维护态 | 2026年1月04日 | 维护中 |
欢迎参与项目贡献,贡献流程和规范请参见《贡献指南》。 贡献代码前,请先签署开放项目贡献者许可协议(CLA)。
- 如果您遇到bug,请提交issue。
- 如果您计划贡献bug-fixes,请提交Pull Requests,参见具体要求。
- 如果您计划贡献新特性、功能,请先创建issue与我们讨论。写明需求背景/目的,如何设计,对现有API等的影响。未经讨论提交PR可能会导致请求被拒绝,因为项目演进方向可能与您的想法存在偏差。
🔹 《版本说明》
🔹 《许可证声明》
🔹 《文档许可证声明》
🔹 《免责声明》
🔹 组件相关说明
| 组件名称 | FAQ | 安全加固 |
|---|---|---|
| tf_rec_v1 | FAQ | 安全加固 |
| tf_rec_v2 | FAQ | 安全加固 |
| torch_rec_v1 | / | 安全加固 |
| torch_rec_v2 | / | 安全加固 |
欢迎大家通过以下方式提出问题、交流讨论。
| 资源 | 说明 |
|---|---|
| 创建Issue | 提交 Bug、需求或建议 |
| 社区任务 | 查看和认领社区任务 |
Rec SDK由华为公司的下列部门联合贡献:
- 昇腾计算应用使能开发部
- 计算软件平台部
- 灵衢算力集群开发部
- 计算技术开发部
- 泊松实验室
感谢来自社区的每一个PR,欢迎贡献Rec SDK!
