微信扫码
添加专属顾问
我要投稿
蚂蚁数据构建引擎如何通过Ray技术实现海量数据处理与智能推荐的高效协同? 核心内容: 1. 基于Ray的弹性调度与任务编排优化,解决传统C++引擎资源调度与稳定性难题 2. 构建RAG算子体系,实现分布式环境下高性能计算与智能推荐的无缝衔接 3. 蚂蚁集团在搜推和RAG场景的实践案例与未来技术演进方向
在蚂蚁集团,每一次精准的搜索推荐、每一轮流畅的智能对话背后,都离不开高质量数据的强力支撑。作为蚂蚁智能引擎部的核心技术底座之一,AI 数据构建引擎正持续为全站搜推广系统等关键产品注入“智能血液”。
本文整理自 Ray Forward 2025 上蚂蚁集团技术专家谢涛的分享,共包含三个部分:
基于 Ray 的海量数据构建提效
基于 Ray 的 RAG 算子体系建设
下一步展望
基于 Ray 的海量数据构建提效
1. 基于 Ray 的海量数据构建提效
我们基于 Ray 构建新一代索引构建引擎,支撑全站万亿级正排、倒排、KV、KKV 索引的高效生成。传统 C++ 引擎虽能力强(200 万行代码),但面临资源调度冲击、长尾场景低效与稳定性保障难题。通过引入 Ray 实现弹性调度与任务编排优化,显著提升系统可扩展性与运行成功率。
资源弹性调度:应对海量任务对容器平台的压力
传统索引构建任务规模大、资源峰值高,易导致底层容器调度平台(如 Kubernetes)资源争抢或 OOM 失败。基于 Ray 的分布式计算框架支持动态资源申请与释放,实现任务级弹性扩缩容,降低对底层基础设施的冲击,提升容器交付成功率与系统稳定性。
长尾场景提效:优化小批量任务执行效率
在推广 Processor-Builder-Merge 三阶段流水线,实现多任务并发调度与资源复用,显著提升长尾场景的吞吐能力与响应速度业务中存在大量低频、小数据量的长尾索引构建任务,传统批处理模式效率低下。Ray 支持细粒度任务并行与异步执行,结合。
稳定性与成功率保障:构建可观测与自愈机制
为保障存量业务稳定运行,在 Ray 框架中集成任务重试、失败隔离、状态持久化等机制。通过实时监控任务执行链路、自动熔断异常节点,并结合历史成功率预测模型,实现故障预判与快速恢复,提升整体作业成功率至 99.9% 以上。
2. 基于 Ray 底座迁移
蚂蚁集团将原生 C++ 索引构建引擎迁移到 Ray 分布式框架,通过 Actor 化改造、资源弹性调度与原生能力集成,解决传统容器架构下的稳定性、性能与运维难题。基于 Ray 的 C++ API 与核心服务(如 Health Check、Fail Over),实现了任务级高可用与自动扩缩容,显著提升系统可靠性与资源利用率。
Ray C++ API 深度集成
为支持原有 200 万行 C++ 代码的平滑迁移,团队深度集成 Ray C++ API,实现对 Processor、Builder、Merger 等核心组件的高效调用。利用 Ray 原生异步通信与对象存储机制,保障高性能计算任务在分布式环境下的低延迟与高吞吐。
PBM Worker Actor 化改造
将原基于容器的 PBM Worker 改造为 Ray Actor,实现从“容器粒度”到“进程粒度”的演进。Actor 模型支持轻量级启动与状态持久化,大幅降低镜像拉取与初始化开销,提升任务冷启动效率,尤其适用于长尾场景下的快速响应需求。
集群与作业模式重构
基于 Ray Job 模型重构上层作业调度体系,引入 BS Job Manager 作为统一管控入口,通过 Rest API 动态创建 ProcessorActor、BuilderActor 和 MergerActor。结合 SyncTarget 机制实现跨阶段数据同步,提升作业编排灵活性与可观测性。
HC/FO 与资源调度优化
充分利用 Ray 原生的 Health Check(HC)与Fail Over(FO)能力,实现任务节点故障检测与自动恢复。结合 Resource Manager 与 Colocate Placement 策略,优化资源分配与数据本地性,提升整体计算效率与系统稳定性。
Auto Scale 实现弹性伸缩
基于 Ray 的 Auto Scale 机制,系统可根据任务负载动态调整 Worker 数量,实现从几核到数千核的弹性扩展。配合 Disk Schedule 与 Object Store,有效应对海量索引构建带来的突发资源需求,显著提升资源利用率与任务成功率。
3. Ray 迁移收益
容器规格从 10+ 种减少至 2 种,资源弹性瓶颈消除。
Actor 轻量化改造,异构 worker 按需加载资源,调度 overhead 减少,小表构建耗时减少 1 倍+。
构建成功率和稳定性提升。
历时半年,我们完成核心索引构建引擎向 Ray 的全面迁移,80% 存量任务已上线新底座。通过容器规格简化、Actor 轻量化与资源弹性调度优化,实现资源利用率提升、长尾任务加速 1 倍以上、成功率升至 99.9%,显著改善系统稳定性与运维体验。
容器规格精简:消除资源弹性瓶颈
原架构依赖 10+ 种容器规格,导致调度复杂、资源碎片化严重。迁移后统一为大、小两类标准规格,结合 Ray 的动态资源分配能力,实现任务按需调度,大幅降低调度 overhead,有效缓解与底层 Kubernetes 平台的资源冲突问题。
Actor 轻量化改造:提升长尾任务效率
通过将 Worker 改造为轻量级 Actor,支持异构任务按需加载资源,减少冷启动开销。针对 100GB 以下的小表索引构建,P95 构建耗时从数十分钟降至约 10 分钟,整体提速超 1 倍,显著提升用户体验与业务响应速度。
构建成功率与稳定性全面提升
依托 Ray 的 Health Check、Fail Over 与 Auto Scale 机制,系统具备更强容错与自愈能力。当前索引构建成功率稳定在 99.9% 以上,故障率显著下降,夜间应急响应频率大幅减少,运维负担明显减轻,保障了核心业务连续性。
基于 Ray 的 RAG 算子体系建设
1. 基于 Ray 的 RAG 算子体系建设
为应对 RAG(Retrieval-Augmented Generation)场景中数据处理流程碎片化问题,蚂蚁集团基于 Ray 构建统一算子体系,覆盖 算子市场、编程范式与服务 SLA 保障 三大层。通过抽象通用处理链路(如 Parse、Chunk、Embedding、Indexing),实现跨业务域的标准化与可复用,支撑离线批处理、实时流与在线服务等多模态场景。
算子市场:支持租户管理、计费与动态注册
在服务接入层构建 算子市场,提供租户隔离、按量计费与动态注册能力。用户可将自定义算子上传至平台,系统自动完成元信息登记与权限控制,支持多团队协同开发与资源高效共享,形成开放可控的生态闭环。
算子编程范式:基于注解的输入输出约束
引入注解驱动的算子编程模型,对每个算子(如 SourceOp、ParseOp、ChunkOp)定义明确的输入输出契约。通过装饰器机制实现执行逻辑封装与类型校验,确保任务链路一致性,降低因接口不规范导致的错误风险,提升开发效率与系统稳定性。
算子服务:基于 Ray 实现多场景 SLA 保障
依托 Ray 的作业调度与集群管理模式,构建面向不同负载的算子服务引擎。支持从离线批处理(Batch)、实时流(Streaming)到在线推理(Online Serving)的全栈能力,并通过资源隔离、优先级调度与自动扩缩容,为各类业务提供差异化 SLA 支持,满足多样化需求。
数据标签,收集是比较困难的,很多场景中的数据是没有标签的
数据是分散的,(这也是最重要的一点)每家应用的数据不一样,比如腾讯用的是社交属性数据,阿里用的是电商交易数据,微众用的是信用数据,都是分散来应用的。现实中,如何进行跨组织间的数据合作,会有很大的挑战。
2. RAG 算子服务-API
为支撑多租户场景下的 RAG 算子服务,我们在 API 层构建了完整的治理框架,涵盖调用计量、权限隔离、OAuth 鉴权、灵活计费、限流熔断与智能路由六大核心能力。通过标准化接口与精细化管控,实现资源可控、成本透明、服务稳定的目标,推动 RAG 能力向企业级平台演进。
调用计量:实现精准资源消耗追踪
系统基于 API 调用次数与实际资源消耗(如 CPU、内存、GPU)进行精确计量,生成细粒度使用数据。为后续计费提供可靠依据,提升资源利用率分析能力,并支持按量付费、阶梯定价等商业模式,增强平台商业可持续性。
权限隔离与 OAuth 鉴权:保障多租户安全
采用 OAuth 2.0 协议实现身份认证与授权管理,结合租户维度的权限控制策略,确保不同业务方仅能访问其授权范围内的算子与数据。有效防止越权访问与资源滥用,保障系统安全与租户间独立性。
灵活计费:支持多样化商业模式
支持多种计费模式(如按调用量、按资源时长、按模型规模),结合计量数据实现成本分摊与账单生成。满足金融、健康等不同业务线的个性化需求,助力内部资源市场化运营与价值量化。
限流熔断:保障高并发下服务稳定性
集成限流(Rate Limiting)与熔断(Circuit Breaking)机制,动态控制请求流量,防止突发流量导致系统过载。在异常情况下自动降级或拒绝请求,确保核心服务持续可用,提升整体 SLA 水平。
智能路由:优化请求分发与系统吞吐
基于负载均衡与智能路由算法,根据算子类型、资源状态、延迟指标等动态分配请求路径。实现跨集群、跨区域的高效调度,提升 API 响应效率与系统整体吞吐能力,适应离线、实时、在线等多场景需求。
3. Rag 算子开发约束
为提升 RAG 算子的可复用性与系统稳定性,我们构建了一套基于 Python 装饰器的开发规范体系,涵盖节点定义、接口契约、资源初始化、异步加载、执行逻辑、幂等性、资源释放与生命周期管理八大约束。通过声明编程降低开发门槛,实现算子在多场景下的统一接入与高效运行。
节点定义:明确算子类型与职责
使用 node 装饰器定义算子逻辑单元,声明其类型、处理职责与数据流转角色。形成可识别的处理节点,便于平台自动编排与可视化调度,提升任务链路清晰度与模块化程度。
接口契约:保障数据流动兼容性
通过 input 和 output 注解声明算子输入输出接口规范,确保数据结构一致性。支持 JSON Schema 或 Protobuf 定义,实现跨算子的数据格式校验与自动转换,提升组件集成效率与系统健壮性。
初始化资源:支持依赖注入与异步启动
使用 setup 装饰器完成依赖加载、配置解析与外部服务连接建立。支持异步模型初始化,避免阻塞主流程,提升算子启动效率与并发能力,适用于高延迟资源加载场景。
异步加载:优化大型模型加载性能
框架支持按需或延迟加载大型模型,结合 Ray 的对象存储机制实现资源预热与共享。减少冷启动时间,提升整体吞吐率,尤其适用于多租户、低频调用场景。
执行逻辑:核心处理逻辑封装
通过 execute 装饰器封装算子的核心业务逻辑,明确输入输出映射关系。要求实现上下文隔离,保证多次执行互不干扰,支持幂等性与容错重试,提升任务可靠性与可调试性。
幂等性要求:保障重试与容错安全
要求算子具备幂等特性,即多次执行结果一致,避免副作用。适用于任务失败重试、断点续传等容错机制,防止重复处理导致数据污染或状态异常,增强系统鲁棒性。
资源释放:防止内存泄漏与句柄残留
通过 teardown 装饰器定义资源清理逻辑,负责释放内存、关闭数据库连接、回收 GPU 显存等。确保环境干净退出,避免长期运行导致资源累积与系统不稳定。
生命周期管理:覆盖全周期可控运行
完整覆盖从初始化到销毁的算子生命周期,提供统一的管控接口。支持动态扩缩容、健康检查与故障恢复,保障组件在分布式环境下的稳定运行与高可用性。
4. Rag 算子执行层
Code Gen 模块确保算子一次编写,即可运行在多个场景
Ray 作业模式:支撑日常海量非结构化数据处理场景
Ray 集群模式:支撑响应要求较高的异步场景
在线服务模式:支撑响应要求极高的在线服务场景
为满足 RAG 场景下多样化处理需求,我们构建了基于 Ray 的多模态算子执行层,通过 Code Gen 模块将用户自定义算子封装为可复用组件,支持 Ray 作业模式、Ray 集群模式与在线服务模式 三大运行范式。实现“一次开发、多场景部署”,提升资源利用率与系统灵活性。
Ray 作业模式:支撑海量非结构化数据批处理
将算子打包为 Ray Job,通过 ray submit 启动集群执行,适用于大规模非结构化数据的离线批处理任务。支持自动扩缩容与分布式调度,高效处理 PB 级数据,保障高吞吐与低成本运行。
Ray 集群模式:支持高响应异步处理场景
在 Ray Cluster 上部署算子,支持长尾、小批量或调试类任务的异步执行。结合动态资源调度与任务优先级管理,实现低延迟响应与高并发处理能力,适用于研发测试、快速迭代等场景。
在线服务模式:支撑极低延迟实时推理请求
将算子直接部署为在线服务(Serving),通过 API 接口接收实时请求,实现同步执行与毫秒级响应。适用于业务方直接调用 Chunk、Embedding 等操作的在线场景,确保高可用性与强一致性。
下一步展望
面向未来,我们将围绕 AI Native 能力集成、Remote Shuffle Service 统一处理与 Embedding 演进三大方向,建设新一代高性能 AI 数据构建引擎。目标是实现结构化与非结构化数据的统一处理、多模态感知与可信计算,推动数据处理从“算力驱动”向“智能驱动”演进。
关注蚂蚁开源视频号-直播回放,观看更多 Ray Forward 精彩分享
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2026-03-23
知识基座:让“AI 越用越懂业务”的团队经验实践【天猫AI Coding实践系列】
2026-03-21
面向手机Agent的记忆系统工程:OPPO的Agentic-RAG实战与演进
2026-03-20
为什么总感觉 Claude Code 比 Cursor 聪明?真正的原因根本不是模型能力!
2026-03-18
从RAG到GraphRAG:货拉拉元数据检索应用实践
2026-03-17
企业AI落地三重门,用友如何破局?
2026-03-16
Java 开发者的轻量级 RAG 方案:MeiliSearch 混合搜索实战
2026-03-11
Embedding相似度虚高,如何用langchain+Milvus搭建CRAG解决?
2026-03-11
上下文腐烂:拖垮企业AI与LLM表现的隐患与对策
2026-01-15
2026-01-02
2026-02-13
2025-12-31
2026-02-03
2026-01-06
2026-02-03
2025-12-29
2026-02-06
2026-01-28
2026-03-17
2026-03-11
2026-02-22
2026-02-15
2026-02-04
2026-02-03
2026-01-19
2026-01-12