开头
最近技术圈里有个话题讨论得很热:某头部社交与AI公司用14个月的时间完成了“基础重建+前沿推进”的双线作战。很多团队看到这个消息的第一反应是“真强”,但真正在大厂待过、参与过基础架构升级的人都会倒吸一口冷气——14个月,双线作战,这意味着什么?意味着既要给跑了多年的老系统“换心脏”,又要在同一时间内在AI赛道上拿出有说服力的成果,任何一条线掉链子,整个战略都会崩盘。
我不是这家公司的员工,但过去几年一直在做大规模分布式系统和机器学习平台的架构设计,也带团队做过类似的小规模“重建基础”项目。今天这篇东西,不聊八卦,就纯从技术和工程管理的角度,把“14个月重建基础并推进前沿”这件事拆开揉碎,讲讲背后的思路、节奏、关键技术选型和容易踩的坑。无论你是架构师、技术负责人,还是想了解大型系统演进逻辑的开发者,这篇文章应该都能给你一些参考价值。
这句话的核心“重建基础”,指的是底层数据体系、计算平台、模型训练链路这些很多人平时感知不到、但一崩就全崩的东西;而“推进前沿”,指的是在AI模型能力、推荐效果、产品体验上持续拿出新东西。两者同时推进,难度是相乘而不是相加。接下来我按自己的理解,把整件事拆成四个阶段来讲。
1. 先理解“14个月”意味着什么:双线作战的本质
1.1 为什么双线同时推进是高风险战略
先问一个问题:为什么要在重建基础的同时推前沿?把顺序反过来,先把基础修好,再追求前沿,不是更稳妥吗?
理论上是,但现实不允许。因为AI这个赛道的迭代速度已经不以年计了,甚至不以季度计,而是以周计。你花18个月先把基础设施做到“完美”,再回头追前沿,会发现对手手里的模型能力已经比你领先两个代际,用户习惯也被重新定义了一轮。所谓“一步慢,步步慢”,在技术窗口期极短的今天尤其明显。
所以14个月双线推进,本质上是一种“边飞边换引擎”的策略。这个策略的风险在于:老系统在重建过程中随时可能出故障,而新系统的能力又还没完全顶上,两套系统之间的交接期是事故高发区;同时,前沿研发又极度依赖基础设施的稳定和高效——训练一个前沿模型,数据管道断一天,可能整个团队一周的进度都白费。因此双线推进绝不是“两条线各自干各自的”,而是要设计一个精密的交错节奏,让两者的依赖关系尽量解耦。
1.2 重建“基础”到底重建什么
很多人听到“重建基础”第一反应是“换服务器”“买新GPU”,这是误区。重建基础的核心是数据系统和计算系统之间的配合关系。
具体来说,重建基础大体上有三层:
- 数据层:包括日志采集、消息队列、数据湖、数据仓库、特征平台。这个层的核心痛点在于随着AI业务的数据量暴涨,原有的批处理架构已经扛不住,需要演进到实时+批处理融合的架构。
- 计算层:包括CPU集群、GPU集群、容器调度、分布式训练框架。这个层的痛点在于训练大规模模型的算力需求超出了原有集群的调度能力,需要重构资源调度策略。
- 工程层:包括CI/CD、模型上线、监控告警、实验评估。这个层的痛点在于模型迭代速度加快之后,原本“一月一上线”的节奏已经变成“一天十几版”,工程链路必须全面自动化。
三层重建中,最耗时、最容易翻车的永远是数据层。因为计算层可以靠买卡、堆机器去缓解,但数据层的血缘关系、数据质量、口径一致性,不是靠砸钱能解决的,得一间一间地把“历史债务”还干净。
1.3 前沿是什么:这14个月前沿发生了什么
说到“推进前沿”,这14个月里最明显的方向就是大模型相关的能力建设。但我这里想说的是,前沿不只是“搞一个更大的模型”,它还包括如何把前沿能力放进真实产品里产生价值。
如果把“前沿”拆成三个方向来看:
- 模型能力前沿:训练更大的底座模型,提升理解、生成、推理能力。
- 应用方式前沿:多模态交互、智能体(Agent)、端侧模型、个性化生成等新交互形态。
- 基础设施前沿:比如推理加速、模型压缩、大规模RLHF的工程化,这些虽然不被普通用户看到,却是支撑前两个前沿的地基。
所以“重建基础”和“推进前沿”之间并不是割裂的:前沿方向会不断倒逼基础设施演进,而基础设施重建后又为下一波前沿突破铺路。14个月的时间,恰好能覆盖一个“基础设施重构+模型能力升级”的小周期,这也是这家公司选择这个时间窗口的原因。
2. 双线作战的顶层设计与推进节奏
2.1 项目拆解:把14个月拆成三个阶段
在项目管理的粒度上,14个月不是直接扔给团队“你们加油干”,而是需要清晰的三阶段节奏。按照我见过的大体量技术重构项目,通常会按这样的逻辑拆:
第一阶段(第1-4个月):止血与摸底。这个阶段的目标不是变革,而是稳定。先盘点现有系统的承载上限、核心瓶颈、故障热点,确定哪些系统已经“烂到必须重写”,哪些只是“需要优化”。同时,把已有的前沿方向项目保护起来,确保基建变动不会影响当前模型的日常迭代。
第二阶段(第5-10个月):并行建设。启动数据平台和计算平台的重大改造。这个阶段最关键的动作是“新旧并行”——新系统和老系统同时运行,业务流量逐步灰度切换到新系统,而不是一刀切。前沿团队在这个阶段开始使用新的训练框架和新的数据管道,反馈问题并驱动修正。
第三阶段(第11-14个月):收口与冲刺。完成最后的系统切换,拆除老系统,同时把前沿成果推向产品化。这个阶段目标是“稳定”和“亮点”两手抓:基础设施不能再出大故障,前沿必须有可展示的里程碑成果。
这里要给所有计划做类似事情的同学一个经验:阶段划分看似简单,但执行中最常犯的错误是第一阶段拖太久。摸底和盘点很容易变成无休止的评审和论证,正确做法是设定一个硬性的截止时间,到点就进入建设期,边做边修正。
2.2 基础设施重建的关键路径
在三条线(数据、计算、工程)里,哪条是关键路径?我的判断是数据层。为什么?因为计算层的GPU可以买,调度系统可以拿开源方案改,但数据层是整个公司所有模型和业务的“记忆”,一旦数据管道断掉,模型训练、数据分析、产品日志、实验评估等全都停摆。
数据层重建的关键路径上,有几个核心任务:
- 统一数据采集入口:把各个业务线各自为政的埋点和日志接入方式整合成一个统一的接入层,保证数据格式的一致性。
- 湖仓一体落地:把传统数仓和数据湖打通,同一份数据既能跑SQL做分析,又能直接喂给特征平台做训练样本,避免来回搬运。
- 特征平台重建:特征存储从“每个模型自己管”变成“平台统一管理、在线/离线一致性校验”,这是机器学习基础设施中最容易被低估的环节。
这三件事做完,数据层基本就算“重建”完成了。但注意,这三项没有一项是三个月能搞定的,它们是一块硬骨头,必须在14个月的第一阶段就开始全力推进。
2.3 前沿研发不被拖垮的组织机制
组织机制往往是双线作战中最容易被忽略、却最重要的部分。我的经验是:如果让同一个团队同时既做基建维护又做前沿研发,结果一定是基建没做好、前沿也没突破——人的精力是有限的,必须做组织层面的隔离。
合理的做法是把团队拆成两类角色:
- 平台组:专职负责基础设施的重建、稳定性、性能优化。平台的“用户”是内部的算法工程师,不直接面向业务。
- 前沿组:专职负责模型能力探索、算法创新、新场景验证。前沿组有独立的算力池、独立的数据管道,尽量避免受基建改造的影响。
但组织隔离不等于物理隔离,两者之间必须有紧密的沟通机制。实践中可以建立“每周一次平台-前沿联调会”,平台上每个影响训练资源的变更必须提前广播,前沿组的关键实验任务在平台变更期间有优先保护。这套机制做得好,14个月的双线推进才能成立。
3. 核心实操拆解:从集群调度到数据治理再到推理链路
3.1 计算侧:GPU集群调度与训练稳定
算力是推进前沿的基础燃料。14个月的重建期内,计算侧的实操重点有几个:一是训练任务的资源隔离,二是训练稳定性保障,三是多任务调度策略。
先说资源隔离。在大规模集群上跑训练任务,最怕的是“邻居吵闹”——一个任务把CPU或者网络带宽打满,导致旁边任务的训练速度骤降。实践中可以用多租户的方式,按团队划分资源池,再给每个池子设配额上限,同时配合网络QoS策略,保证流量大的数据加载任务不会抢占训练通信的带宽。
再说训练稳定性。大模型训练过程中最常见的故障就是“突然训练中断”——可能因为一台机器宕机、显存ECC报错或网络抖动,而恢复训练时如果没做断点续训,可能白跑好几天。实操方案是给所有长训练任务强制启用周期性的checkpoint机制,比如每30分钟存一次模型权重和优化器状态。不要觉得存checkpoint占用存储太浪费,相比重跑几天的时间成本,这点存储开销完全可以接受。
3.2 数据侧:特征平台与湖仓一体重构
数据侧的重建,我在前面已经说了是关键路径,这里展开讲几个实操细节。
第一个实操细节是“口径一致性”。做特征平台最头疼的问题就是训练时用的特征分布和上线时用的特征分布不一致,这直接导致模型上线后效果衰减。标准解法是训练样本生成和线上特征计算共用同一套特征定义代码,确保离线、在线特征逻辑完全一致。这句话说起来轻巧,实施起来需要非常严格的代码统一管理,任何特征逻辑的修改都要同时发离线版和在线版,并且要自动做一致性校验。
第二个实操细节是“数据回填”。湖仓架构切换时,存量历史数据往往需要从老系统迁移到新系统。看起来是一个技术活,实际是一个组织协调活——你要跟业务方确认哪些历史数据还有分析价值,哪些可以归档,哪些应该直接丢弃。很多团队在数据迁移上耗费大量时间,就是因为舍不得删数据,把迁移任务搞得像搬一座山。
第三个实操细节是“实时化改造”。原有的批处理管道最短也要小时级延迟,而推荐、搜索、广告这类场景需要分钟级甚至秒级延迟的特征更新。这需要在湖仓架构之上加一层实时流处理,比如用流处理引擎把实时行为数据持续写入特征存储,同时保持与离线特征的对齐。这里面有很多坑,稍后我在问题排查部分会展开讲。
3.3 工作流侧:从notebook到生产Pipeline
前面说的都是底层平台,工作流侧是算法工程师每天直接面对的东西,体感最直观。
一个常见的现状是:算法工程师在notebook里调好模型,然后让平台工程师帮忙上线,整个链路走完可能要几天,中间还要反复沟通参数、版本、依赖。14个月重建基础的一个重要目标,就是把这条链路缩短到小时级。
实操上,需要用工作流平台把原有的“散装脚本”编排成标准化的流水线,每个环节(数据加载、特征计算、训练、评估、部署)都做成了可复用的组件。算法工程师只需要配置好参数,点击发布,平台自动完成从训练到部署的全过程。这里的关键不是工具的选型,而是团队规范的建立:所有算法代码必须走版本管理,所有训练任务必须通过平台提交,禁止在服务器上手动跑脚本。这些规范一开始会有阻力,但坚持几个月后会显著提升团队的交付效率。
3.4 推理侧:从“训练完就完事”到持续部署
前沿模型的落地,最后一步是推理服务上线。很多团队在重建基础时只盯着训练,却忽略了推理侧的工程改造,结果训练快了一倍,上线还是慢吞吞,整体节奏并没有明显提升。
这14个月里推理侧的核心工作是:模型格式统一、推理框架标准化、灰度发布自动化。模型训练完产出的是一个通用格式的权重文件,推理服务统一加载这个格式,不再为每个实验模型单独适配;推理框架从多个自研小框架收敛到一个统一框架,方便统一做性能优化和资源管理;上线过程中自动按流量百分比灰度,实时监控推理延迟和效果指标,异常自动回滚。
4. 推进“前沿”的实操策略:如何在重基础时持续出成果
4.1 稳定产出与探索两条腿走路
重建基础期间,前沿团队最怕的是“什么都不敢动”——基建在改造,训练集群不稳定,算法同学做实验处处受限,最后14个月过去,前沿颗粒无收。
我在自己的项目里验证过一个比较有效的方法:前沿工作分成两条线。
一条线是“稳定产出线”:用成熟的方法论做渐进式优化,比如在现有推荐模型上做特征增量、做模型结构微调、做更精细的粗排和精排优化。这些工作不依赖大规模集群,不需要等新的数据管道完全就绪,利用现有的稳定环境就能推进,产出的效果可以按周度量。
另一条线是“前沿探索线”:专门做高风险、高回报的方向,比如大模型在内容理解中的应用、多模态特征融合、智能体交互等。这些方向需要大规模算力和新的数据管线,可以等平台建设有基本雏形后再全力推进,早期只做小规模验证。
两条线并行,既保证了阶段性产出,又为远期突破留出了空间。很多团队失败的原因恰恰是只做了一条线——要么全部押注前沿方向,结果基础平台跟不上,天天在排障中度过;要么太保守,天天做小优化,最后在代际升级中被对手打懵。
4.2 内部评测与迭代闭环的高频机制
14个月的高强度推进中,怎么判断前沿方向是不是走对了?不能等到14个月之后才看结果,必须建立高频的内部评测闭环。
实操上可以这样做:每个月设定一个“前沿成果日”,所有前沿探索项目集中展示当前效果,用统一的评测数据集比较不同方向的进展,决定下个月资源倾斜方向。这个评测不是学术性质的,而是以业务指标为核心——离线指标提升是一回事,上线后用户是否买账是另一回事。
同时,前沿方向一定要尽早做“用户实验”。比如一个新模型哪怕只提升1个点的离线指标,也争取在1%的流量上做在线实验,看真实反馈。这样做有双重好处:一是尽早发现离线指标好但线上不work的问题;二是让平台建设团队有一个稳定的“压力测试场景”,帮助基础设施团队发现瓶颈、验证新能力。
5. 这14个月里最容易踩的坑与排查经验
5.1 数据迁移与实时链路里的坑
数据侧的坑在重建过程中是最多的,这里列几个我亲眼见过、或者身边团队踩过的典型问题。
坑一:历史数据迁移后口径对不上。某团队在切换数据平台后发现,新平台上跑出来的业务报表数字跟老平台不一致,前后差了0.5个百分点。排查了很久,最后发现是两套系统的时区处理逻辑不同,老系统默认用的是GMT,新系统用本地时区,时间字段的处理差异导致部分数据落到了不同天。这个案例给我们的教训是:做数据平台切换时,时间字段的语义统一要作为第一优先级确认项,迁移后第一件事是基于同一批原始数据做新旧平台的输出对比校验。
坑二:实时链路的数据乱序。实时特征更新上线后,发现特征值经常“跳变”——同一个用户的特征在几秒内忽高忽低。原因是没有处理事件时间乱序问题,用户的行为日志由于网络传输延迟,到达处理引擎的顺序和实际发生顺序不一致。解决方法是引入事件时间处理机制,窗口计算基于事件发生时间而不是数据到达时间,并加上延迟数据的容忍和迟到数据的水位线管理。这个改造看起来只是加几个参数,实际上涉及整条流处理逻辑的调整,需要专门的团队负责。
5.2 资源竞争与训练稳定的问题
计算侧的坑主要集中在大规模集群的资源竞争上。
典型场景是:某天训练任务突然变慢,大家怀疑是网络问题,排查了半天发现是一个数据回填任务在疯狂读取远端存储,把网络带宽打满了。解决思路是给不同类型的任务打上标签,数据回填、数据分析这类IO密集任务设为低优先级,并且限制其网络带宽;模型训练任务设为高优先级,在网络和存储资源上优先保障。
另一个场景是小规模频繁训练任务和大规模长训练任务争抢GPU资源。小任务占用GPU后,大任务等不到资源,导致大模型的训练进度被不断拖延。实践解法是设置“抢占式调度”:允许高优先级的大任务抢占低优先级小任务的资源,小任务被抢占后自动保存状态、排队等待,大任务结束后再恢复。这套机制需要任务框架本身支持checkpoint和恢复,对平台工程能力要求不低,但一旦跑通,整个集群的资源利用效率会大幅提升。
5.3 快速排查与止损的经验
双线作战期间,系统的复杂性极高,任何一个微小的变更都可能引发连锁故障。这里分享三条我个人的排查经验。
第一条:先恢复,后排查。线上出故障时,第一时间永远是止损——回滚变更、切换到备用链路、重启服务——而不是打开日志慢慢分析根因。很多初级工程师容易犯的错是在故障现场花半小时找原因,结果业务受损面越来越大。正确的姿势是先把服务恢复到可用状态,保留现场日志,等业务稳定了再冷静分析。
第二条:建立可观测性比什么都重要。我见过很多团队在重建过程中遇到故障却无从下手,就是因为系统缺失全链路的监控数据。日志不完整,指标不统一,调用链追踪没有接入,排障完全靠猜。14个月的重建期,必须把指标采集、日志采集、链路追踪这三件套作为基建的一部分优先落地。没有可观测性,后面的所有优化都像闭眼开车。
第三条:变更管理要严格。重建过程中大量的系统变更容易让人麻木——“只是改个配置、发个新版本”,结果一改就闯祸。建议所有涉及线上系统的变更,哪怕只是修改一行配置,都走审查和灰度流程,并且变更前记录好回滚点。这套流程看起来增加了一些工作量,但在14个月的高频变更期里,它可能是帮你兜住底线的东西。
结束语
这14个月看下来,我的整体感受是:技术上的硬骨头虽然多,但最难的始终是节奏管理和预期管理。重建基础这种事情,短期内看不到收益,不被业务方理解;推进前沿又需要长期投入,很难用季度KPI来衡量。能坚持把这两条线同时走完,需要团队上下的共识和耐心,也需要在执行层面非常克制——克制住“什么都想马上做”的冲动,按优先级和节奏一条一条推进。
最后分享一个我个人的心得:如果你所在的团队也面临类似的“既要建基础又要追前沿”的局面,与其一开始就追求完美方案,不如先把数据的口径统一好、把可观测性搭起来、把组织机制的隔离做清楚,这三件事做好了,后面的技术演进再多也有底气接得住。至于那些光鲜的前沿成果,它其实只是这个稳健底盘上自然长出来的花而已。
希望这篇拆解对正在做架构升级或者平台重建的你有一点点帮助。如果大家在自己项目里遇到过更有意思的坑,欢迎交流。