
2025 年 9 月 30 日,腾讯 AI 开源项目 Angel 正式发布 3.3.0 版本。
2025 年 9 月 30 日,腾讯 AI 开源项目 Angel 正式发布 3.3.0 版本。Angel 是腾讯研发并开源的面向企业级应用的高性能分布式机器学习平台,功能特性涵盖了特征工程、模型构建、参数训练、AutoML、模型服务 Serving 等全栈机器学习服务,提供机器学习、深度学习、图神经网络等多种算法,支持级万亿级超大规模参数模型的训练,已在生产业务系统中大规模部署,并在推荐、广告、游戏、视频、金融反欺诈等多个业务场景中广泛应用。
本次开源聚焦于升级底层框架,新增向量检索算法,优化已有图算法功能,支持异构图神经网络算法,增强 PyTorch on Angel 框架易用性等,全面提升算法性能与易用性。
Angel-3.3.0 框架
Angel-3.3.0 升级框架图如下所示,包含 Angel PS 图结构&能力升级、图算法升级、外部组件升级及 PyTorch on Angel 升级等,本次升级丰富了 Angel 在图计算方面的能力,同时提高了计算性能,如:GNN 算法提升 1 倍以上。
Angel 框架升级示意图
Angel PS 图结构&能力升级
Angel PS(Parameter Server)提供了高效,稳定和灵活的参数存储和交换服务,具有灵活的可定制函数 PS Function(PSF),可以将部分计算下推至 PS 端。PS 架构良好的横向扩展能力让 Angel 能高效处理千亿级别的数据和模型。本次更新升级了 PS 端图数据结构、存储方式及异构图等,以支持真实场景中广泛存在的异构图学习,如:电商推荐、广告推荐、游戏互动、内容推荐、异常检测等场景;具体更新内容如下:
支持带权/类型邻接表:允许邻接表携带权重/类型,为带权采样、支持异构图等能力提供基础。
优化邻接表存储结构:针对更新频率低的邻接表,采用二进制的方式存储,节约存储空间。
支持异构图:新增 MultiGraphNode,作为异构图的节点,能够支持多种类型的节点与邻接表,为异构图 GNN 算法提供基础能力。
异构图场景
图算法优化升级
Angel 图算法在过去几年服务腾讯内部各个业务场景,如:广告推荐、游戏用户/装备推荐、内容推荐、金融反欺诈等多个业务场景,经过几年真实业务场景打磨,Angel 算法也不断迭代升级。本次开源版本更新,将推出一些新的算法并升级已有图算法,不断完善 Angel 端到端学习框架,具体内容如下:
Angel 端到端学习框架
新增向量检索算法:BruteForce、HNSW,该能力的补充完善了 Angel 算法应用链路,提供了 embedding 检索/召回能力。
新增社区挖掘算法:KClique 社区发现算法是一种基于完全子图(clique)的重叠社区检测方法,它通过寻找图中相互重叠的 k-clique 结构来划分社区,允许节点同时属于多个社区。在真实的业务场景中社区通常是存在一定重叠现象的,同时根据业务需求不同,如:有些场景需要获取 topk 的社区归属等,该算法在这类场景中表现出较好的效果。
新增强化版 PageRank:PageRankPro 与 PageRank 的不同在于 PageRankPro 给部分节点一个初始 rank 值,如当部分节点是种子节点时,使用该组件相当于做了一次风险/影响力传播。该算法在风控与核心人群识别等场景中应用比较广泛。
新增异构图神经网络算法:GATNE 多路异构图表示学习模型,用于异构图的表示学习。在 Angel 中实现了归纳式学习范式 GATNE-I 模型,后面都用 GATNE 来表示,异构图能够较好的处理更真实的业务场景,融合多多种类型的节点与边,在业务中取得较好的效果。
解耦 GAMLP 算法:将 GAMLP 解耦为两个独立的模块:Aggregator 和 GAMLP。Aggregator 作为特征传播聚合模块,GAMLP 作为模型训练模块,加载聚合模块特征进行训练,大大提升了模型训练效率。
优化已有图算法:EGES,Louvain,CommonFriends
○ EGES:优化重编码机制与初始化方式用于支持增量训练
○ Louvain:优化 Range 划分下 Louvain 算法,并在 Range 划分模式下支持均衡划分
○ CommonFriends:支持边割版本,优化邻接表存储结构,节约存储空间
外部组件升级
升级外部组件 Spark 与 PyTorch 版本,将社区最新的优化引入 Angel 框架,在数据均衡,资源配置,计算性能等方面得到优化与提升,其中计算性能提升 1 倍以上。
Spark 版本升级 (2.4.4->3.3.1):Angel 融合了自研的 Angel PS 高维稀疏处理能力和 Spark 的大数据处理能力解决大规模数据与稀疏模型处理与存储等难题,升级 Spark 版本至 3.3.1,能够引入 Spark 新的特性与底层框架的优化,对于上层计算来说,在数据均衡,资源配置,计算性能等方面得到优化与提升。
PyTorch 版本升级 (1.5 ->2.5):随着 PyTorch 版本更新,优化了底层核函数性能,引入了算子融合,提升了模型的训练速度和性能;目前 PyTorch on Angel 可以支持更高版本的 PyTorch(1.13+、 2.x),用户可以通过切换版本来获得计算速度的提升。
兼容多版本组件:PyTorch 版本升级后,兼容历史版本的模型文件,用户可以轻松加载历史模型而无需做任何修改。
PyTorch on Angel-0.4.0
发布 PyTorch on Angel 0.4.0 版本,该版本中支持了异构图图神经网络算法,如: GATNE;解耦 GAMLP 算法以提升计算效率;将 Python Client 内嵌到 Angel 框架中,提供模板化配置,提升了框架的易用性,降低用户的使用门槛。
支持 GNN 参数模板化:提供标准的 yaml 模版,用户可以通过修改模板进行参数配置,降低参数配置错误,减轻用户配置负担;其中模板按照功能分为:graph,model,trainer,predictor 等模块,如下图所示:
模版化参数配置示例
内嵌多版本 PyTorch 环境:支持 PyTorch 1.5~2.5 版本,可选择任意版本,目前 PyTorch-1.13.1+官方有新增底层优化,有较好的性能提升,建议使用 1.13.1 及以上版本。
GNN 模型自动生成与导出:将 PythonRunner 集成到 PyTorch on Angel 中,无需安装本地环境即可根据配置文件参数生成对应 GNN 模型 PT 文件,直接从系统加载 PT 模型进行训练;同时兼容多种模式生成 pt 模型文件,具体如下:
○ yaml 配置文件:通过用户配置的参数,使用系统内置的 python 模型脚本,生成 pytorch 模型文件 (pt 文件) 用于训练
○ 用户自定义 Python 模型:通过 yaml 配置的参数,使用用户自定义 python 的模型脚本,生成 pytorch 模型文件 (pt 文件) 用于训练
○ 本地生成 pt 模型文件:直接上传生成好的 pytorch 模型文件 (pt 文件),通常在增量训练模式下使用,如非增量训练则需要用户安装本地 pytorch 环境用于生成 pt 文件(该方式为旧版本使用方式,用户使用成本较高,建议直接使用升级后的方式)
python 客户端自动生成/加载 PyTorch 模型
多版本部署便利化:将示例入口分离为独立模块,便于支持多版本部署。
Angel 前沿探索
近几年,Angel 在图网络方向在不断地深入研究,提出了新的图算法与框架,不断地提升性能与效率。如:
PaSca:可拓展图学习理论(PaSca)工业落地于自研的 Angel Graph 图计算框架,降低大规模图神经网络模型训练的门槛,提升了系统的数据学习效率,并获得 2022 年 WWW 最佳论文。
OUTRE:提出了一种面向单机超大规模图训练的图神经网络训练系统 OUTRE,通过显式消除「邻居冗余」和「时序冗余」两类数据冗余,结合自动化缓存管理机制,显著降低 I/O 数据请求量,在多个公开图数据上实现 1.52–3.51 倍的训练加速。
DMA:同时也在探索 LLM 与 Graph 结合的新方向,如:提出了一种新型噪声可感图主动学习框架 DMA。通过 LLM 生成的伪样本,以数据集和 LLM 双重可感的方式估算标注噪声分布;利用估计的噪声分布衡量节点可靠性,并选择能最大化可靠影响力的节点。在五个公开文本属性图数据集上的评估结果表明,DMA 性能始终优于所有基线方法。
表:Angel 前沿探索论文列表
未来规划
近几年 Angel 框架在不断地打磨优化,在业界取得了不错的反馈,收获了一些荣誉同时也积累了一些业务场景应用案例:
荣誉:
○ 2024 年世界互联网大会领先科技奖
○ 2023 年中国电子学会科技进步一等奖
○ 2022 年数博会领先科技成果奖
业务场景应用案例:
○ 图计算实践之模式匹配优化
○ 微信支付基于图计算的反欺诈实践
○ 腾讯 Angel Graph 图计算框架在智能风控中的应用
未来 Angel 将持续优化框架性能,聚焦新方向探索,如:工业级图检索增强应用、Graph 与 LLM 融合应用等新方向,开源计划如下:
图算框架优化升级:优化算子/算法,提升计算性能;兼容多种图数据库系统,支持实时图计算。
图检索增强应用:基于当前图框架探索并优化图检索算法、增强图推理能力、优化 GPU 性能并支持更多异构硬件等,提供工业级的图检索增强能力。
探索 Graph 与 LLM 结合的新方向:利用 Graph 信息提升 LLM 在复杂关系推理能力、使用 LLM 增强 Graph 学习中语义信息、Graph 与 LLM 融合等,并在真实业务场景中落地应用。
来源:互联网