首页 / 资讯中心 / 文章详情

14个月双线作战:基础设施重建与AI前沿推进的工程实践

14个月双线作战:基础设施重建与AI前沿推进的工程实践 ★ FEATURED ARTICLE
开头最近技术圈里有个话题讨论得很热某头部社交与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来衡量。能坚持把这两条线同时走完需要团队上下的共识和耐心也需要在执行层面非常克制——克制住“什么都想马上做”的冲动按优先级和节奏一条一条推进。最后分享一个我个人的心得如果你所在的团队也面临类似的“既要建基础又要追前沿”的局面与其一开始就追求完美方案不如先把数据的口径统一好、把可观测性搭起来、把组织机制的隔离做清楚这三件事做好了后面的技术演进再多也有底气接得住。至于那些光鲜的前沿成果它其实只是这个稳健底盘上自然长出来的花而已。希望这篇拆解对正在做架构升级或者平台重建的你有一点点帮助。如果大家在自己项目里遇到过更有意思的坑欢迎交流。
阅读完成 · 觉得有帮助?
咨询建站