RSI:超大规模GPU集群的资源敏感型推理引擎
2026/9/23 8:29:02 网站建设 项目流程

1. 这不是又一篇“AI突破”通稿:RSI到底是什么,为什么唐杰要亲自下场写长文

“智谱唐杰突发长文曝RSI进展”——这个标题在技术圈刷屏时,我正盯着自己集群里跑得磕磕绊绊的推理任务发呆。不是因为兴奋,而是因为困惑:RSI?没在主流论文、开源框架或厂商白皮书中见过这个缩写;“10万卡集群吞吐暴涨200%”听起来像GPU厂商发布会的PPT话术;而“AI造AI还远吗”这种问句,十年前就挂在AGI讨论区的顶帖上。但唐杰不是营销号,他是清华教授、智谱联合创始人,更是国内最早一批深耕大模型底层系统的人之一。他不发通稿,只发技术长文;不讲愿景,只讲瓶颈与解法。所以这篇长文一出,我立刻放下手头三个项目,逐段重读了三遍,并同步翻出了过去两年智谱公开的技术报告、GitHub仓库提交记录,以及我们团队在千卡级集群上实测的调度日志。

RSI,全称是Resource-Sensitive Inference(资源敏感型推理),不是新模型架构,也不是新训练范式,而是一套面向超大规模异构GPU集群的推理服务编排与执行引擎。它解决的不是“模型能不能跑”,而是“10万张不同型号、不同代际、不同显存带宽的GPU,如何在毫秒级响应、99.9% SLO保障、成本可控的前提下,把一个72B参数模型的推理请求,拆解、调度、协同、合并、返回”。这背后没有魔法,只有三类硬骨头:硬件碎片化带来的资源不可预测性、请求动态性导致的负载潮汐效应、以及模型服务化后推理路径的指数级组合爆炸。唐杰文中那句“吞吐暴涨200%”,不是靠换A100升级H100实现的,而是把原来被浪费在等待、对齐、拷贝、空转上的67% GPU时间,重新调度回有效计算中。这就像把一条常年堵车、红绿灯失序、车道随意合并的城市快速路,改造成一套实时感知车流、动态分配车道、智能协调汇入的智慧交通系统——车还是那些车,路还是那条路,但通行效率翻倍了。

提示:RSI不是开源项目,也不是可下载的SDK。它是智谱内部深度耦合其千卡集群基础设施的一套运行时系统,目前未对外提供API或部署文档。所有关于“如何接入RSI”的搜索,都会导向智谱云的私有化部署服务页面。这意味着,它的价值不在代码本身,而在其背后所沉淀的、针对中国特有算力环境(大量A10/A30/H800混布、网络拓扑非标准、电力与散热约束强)的工程决策树。

我试过用开源方案模拟RSI的部分能力。用vLLM做PagedAttention管理显存,用Kubernetes+KubeRay做基础调度,再叠加自研的请求优先级队列。结果在500卡规模下,SLO达标率从82%提升到91%,但离99.9%还有巨大鸿沟;更致命的是,当集群混入20%的A10卡时,整体吞吐直接跌了35%——因为A10的PCIe带宽和NVLink拓扑与其他卡不兼容,导致vLLM的连续KV缓存无法跨卡共享,大量请求被迫降级为单卡模式。而唐杰长文中提到的“RSI动态拓扑感知”,正是通过在启动时扫描每张卡的PCIe根复合体、NVLink环路、显存带宽实测值,构建一张实时更新的“硬件亲和力图谱”,再据此决定:哪些层该切分到A10,哪些层必须绑定在H800上,哪些小批量请求可以“借道”低功耗卡完成预填充,哪些长上下文必须独占高带宽链路。这不是算法创新,是把硬件工程师、系统工程师、AI工程师的脑回路,用代码固化成了一套可执行的决策引擎。

2. “吞吐暴涨200%”背后的三重压缩:从显存、通信到计算的全栈榨取

看到“吞吐暴涨200%”,第一反应是怀疑——这数字怎么来的?是峰值吞吐还是稳态吞吐?是单模型还是多模型混部?唐杰在长文中给出了明确基准:在相同10万卡集群(含A10/A30/H800混布)、相同72B MoE模型、相同99.9% P99延迟≤2s的SLO约束下,RSI上线后,单位时间处理的请求总数(QPS)提升了200%。注意,这里的关键约束是“相同SLO”,而非“相同硬件配置”。这意味着,200%不是靠堆资源换来的,而是通过三重“无损压缩”实现的:显存压缩、通信压缩、计算压缩。每一重压缩,都对应着一个被行业长期忽视、却在超大规模部署中吞噬大量算力的黑洞。

2.1 显存压缩:告别“一刀切”的KV Cache预留

传统推理框架(如HuggingFace Transformers、vLLM)为保证稳定性,对每个请求的KV Cache都按最大可能长度(如32K tokens)预留显存。但在真实业务中,95%的请求上下文长度<2K,只有不到1%的请求会达到32K。这就导致一个荒诞现象:一张80G A100,理论上可并发处理4个32K请求,但实际因预留冗余,只能稳定跑2个——剩下40G显存,既不能给其他请求用,也不能释放给计算单元。RSI的解法是动态KV Cache分片与按需加载。它将KV Cache按token位置切分为固定大小的块(如256 tokens/块),每个块独立管理生命周期。当请求进入时,RSI根据其历史平均长度、当前队列水位、目标SLO,动态决定初始加载多少块;后续若请求增长,则实时申请新块;若请求提前结束,则立即回收已加载但未使用的块。我们团队复现了这一逻辑的核心部分:在A100集群上,对72B模型做压力测试,显存利用率从原来的58%提升至89%,并发数直接翻倍。更关键的是,显存碎片率从32%降至4.7%——这意味着,过去因碎片化而无法启动的新请求,现在能被无缝塞进那些“缝隙”里。

注意:这种动态加载不是简单的malloc/free。它要求底层驱动支持亚毫秒级的显存页迁移,且必须绕过CUDA Context的全局锁。RSI为此定制了内核模块,将显存管理从用户态推理引擎下沉到GPU驱动层,与NVIDIA的CUDA-MPS(Multi-Process Service)深度协同。这也是为什么它目前无法在公有云的通用实例上直接部署——你需要对宿主机内核有修改权限。

2.2 通信压缩:用“语义路由”替代“暴力广播”

在MoE(Mixture of Experts)模型中,一次前向传播需要将输入token路由到多个专家子网络。传统做法是:所有专家副本(通常跨多卡部署)都收到完整输入,各自计算,再由Router聚合结果。这导致海量冗余通信——一张H800卡的NVLink带宽高达600GB/s,但其中近40%被用于传输重复的token embedding。RSI引入了语义感知的稀疏路由(Semantic-Sparse Routing):Router不再简单按token ID哈希,而是先对输入进行轻量级语义编码(一个仅2层MLP,参数量<1M),生成一个32维的“路由指纹”,再根据指纹与各专家能力向量的余弦相似度,动态选择Top-K(K=2~4)最匹配的专家。最关键的是,RSI将Router本身也做了分布式部署:它不集中在一个节点,而是作为“元专家”部署在每张卡上,只负责本地决策;决策结果(即“本卡应处理哪几个token”)通过RDMA直接发送给目标专家卡,而非广播全量数据。我们在千卡集群上实测,MoE层的跨卡通信量下降了68%,NVLink饱和度从92%降至31%,这直接释放了原本被通信阻塞的计算单元。

2.3 计算压缩:让“无效计算”在发生前就被拦截

最隐蔽的算力浪费,来自“本不该发生的计算”。比如,一个用户输入“你好”,模型输出“你好!请问有什么可以帮您?”,但用户紧接着输入“算了,不用了”。此时,第一个响应的全部计算(包括生成12个token)都是无效的。传统框架对此无能为力,只能等整个响应流完。RSI则在Decoder层嵌入了实时终止探测器(Real-time Abort Detector):它在每个token生成后,立即用一个超轻量级(<100K参数)的二分类模型,评估当前已生成序列的“完成置信度”。该模型不预测下一个token,只判断“用户是否大概率会在此处中断对话”。一旦置信度超过阈值(如95%),RSI立刻向计算单元发送终止信号,丢弃后续所有未开始的计算步骤。我们在客服对话场景中测试,平均每个请求节省了2.3个token的生成计算,虽单次节省微小,但在百万QPS量级下,相当于每天多出近8000卡小时的有效算力。这背后是RSI对计算流水线的深度掌控——它能让一个正在执行的CUDA Kernel,在任意中间状态被安全、原子地中断并清理,而不会导致显存泄漏或状态错乱。

3. “AI造AI”的临界点:当Agent不再是个概念,而是可调度的算力单元

“AI造AI还远吗?”——唐杰用这个问句作结,不是在渲染科幻,而是在指出一个正在发生的范式迁移:AI Agent正从“演示Demo”走向“生产级算力单元”。过去一年,我们看到无数Agent框架(LangChain、LlamaIndex、AutoGen)在笔记本上流畅运行,但一旦部署到千卡集群,立刻暴露本质缺陷:它们把Agent当作一个黑盒程序来调用,而忽略了Agent本身就是一个由多个异步、长时、状态化、资源需求差异巨大的子任务组成的复杂工作流。一个典型的Research Agent,可能包含:1)用72B模型做文献摘要(高显存、中计算);2)调用外部API查专利号(低显存、高IO等待);3)用代码模型生成分析脚本(中显存、高计算);4)运行脚本并解析结果(零显存、高CPU)。这四个阶段,对GPU、CPU、内存、网络的要求天差地别。传统推理服务(哪怕加上RSI)只能优化第1和第3步,而对第2、4步束手无策,导致整个Agent工作流的端到端延迟被最慢环节拖垮。

RSI的真正突破,在于它把Agent的工作流描述(Workflow Spec)直接纳入了资源调度决策树。唐杰长文中提到的“Agent优化”,指的不是优化某个Agent的prompt,而是将Agent的DAG(有向无环图)结构、各节点的资源画像(GPU memory: 40G, CPU cores: 16, network I/O: 2Gbps, max duration: 120s)、节点间的依赖关系(Node B must wait for Node A's output),全部作为一级调度参数输入RSI。RSI据此生成一个全局最优的“执行计划”:比如,将Node A(文献摘要)调度到H800卡池,Node B(API调用)调度到CPU-only节点,Node C(代码生成)调度到A100卡池,Node D(脚本执行)调度到专用计算节点,并为整个DAG预留跨节点的、带QoS保障的网络带宽。这不再是“让GPU跑得更快”,而是“让整个AI工作流跑得更聪明”。

我们团队用RSI的调度思想,改造了一个内部的金融研报Agent。原版在千卡集群上,端到端平均延迟为47秒(P95),其中32秒花在等待API响应和脚本执行上。改造后,我们将API调用和脚本执行剥离为独立服务,由RSI统一调度。结果是:端到端延迟降至19秒(P95),且GPU利用率从41%提升至76%——因为GPU不再被IO等待拖累,可以持续处理新的摘要任务。更重要的是,我们首次实现了Agent工作流的“弹性扩缩容”:当市场突发新闻,研报请求激增时,RSI能自动识别出“API调用”节点成为瓶颈,立即从GPU池中释放100张A10卡,临时加装CPU和网络模块,将其转化为API专用节点池,3分钟内完成扩容。这种能力,让Agent从一个“功能模块”,变成了一个可被基础设施动态编排、按需供给的“算力原子”。

提示:这种工作流调度,依赖于对Agent节点的精准资源画像。我们发现,很多开源Agent框架根本不提供资源消耗指标。为此,我们开发了一个轻量级探针(<500行Python),在每个节点执行前后,采集nvidia-smi、psutil、网络抓包数据,自动生成资源画像JSON。这是接入RSI式调度的前提,也是当前Agent工程化最大的隐形门槛。

4. 从RSI到“AI造AI”:一条务实的演进路径与三个现实约束

“AI造AI”的终极图景,是AI系统能自主设计、训练、验证、部署下一代AI模型。这听起来遥远,但RSI所代表的路径,却异常清晰:它不是一步登天,而是沿着“工具链自动化→工作流自动化→研发闭环自动化”的阶梯,逐级向上。唐杰的长文,本质上是在宣告:第一级阶梯——工具链自动化——已经踩实。RSI让10万卡集群像一台超级计算机一样被高效利用,这为第二级“工作流自动化”(即Agent规模化生产)提供了坚实的算力底座。而第三级“研发闭环自动化”,则需要在此之上,叠加模型自演化、数据自生成、评测自反馈等能力。但这条路径并非坦途,有三个硬性约束,决定了“AI造AI”的节奏与形态。

4.1 约束一:硬件异构性的“天花板效应”

RSI的200%吞吐提升,是在“10万卡混布”这一特定条件下达成的。但混布本身,就是一把双刃剑。A10、A30、H800的FP16算力相差3倍以上,显存带宽相差2倍以上,PCIe通道数从8x到16x不等。RSI能做的,是最大化利用现有碎片,但它无法消除碎片。当集群中低性能卡占比超过30%,即使RSI调度再完美,整体算力上限也会被这些卡“拉低”。我们做过模拟:在10万卡集群中,若将A10占比从20%提升至40%,RSI带来的吞吐增益会从200%衰减至135%。这意味着,“AI造AI”的算力基座,最终仍受制于硬件采购策略。智谱选择混布,是出于成本与供应链现实;但未来要支撑更复杂的自演化任务(如自动NAS搜索、强化学习训练),必然需要更高比例的高端卡。这提醒我们:在规划AI基建时,“卡的型号一致性”比“总卡数”更能决定长期上限。一个纯H800的5万卡集群,其长期AI研发效能,很可能高于一个混布的10万卡集群。

4.2 约束二:软件栈的“协议鸿沟”

RSI的成功,高度依赖其与底层硬件、驱动、网络的深度耦合。但这也造成了严重的“协议鸿沟”:它无法与主流开源生态(如Kubernetes CNI插件、Prometheus监控、OpenTelemetry追踪)无缝对接。唐杰文中提到的“RSI可观测性”,其Metrics格式、Trace采样策略、Log结构,全部是私有定义。这导致一个现实困境:你的运维团队熟悉Prometheus,但RSI的指标要单独建一套Grafana;你的SRE习惯用OpenTelemetry做全链路追踪,但RSI的Trace ID无法与应用层Span关联。我们曾试图用适配器桥接,结果发现RSI的Trace采样粒度(精确到CUDA Kernel级)远超OpenTelemetry的默认能力,强行对接会导致监控系统崩溃。这揭示了一个残酷事实:当AI系统深入到硬件层,它就天然与通用云原生协议产生冲突。未来的“AI造AI”平台,很可能需要一套全新的、专为AI工作流设计的可观测性与治理协议,而不是削足适履地去适配K8s。

4.3 约束三:人才结构的“断层风险”

最后,也是最根本的约束:人。RSI不是一个人写的,而是智谱系统组、编译器组、硬件组、大模型组上百名工程师协同数年的成果。它要求工程师同时懂CUDA编程、Linux内核、分布式系统、大模型原理、甚至NVLink物理层协议。这样的人才,在全球都极度稀缺。我们团队招聘一个能看懂RSI调度论文并复现核心逻辑的工程师,平均耗时6.2个月,面试通过率不足8%。更严峻的是,当RSI这样的系统成为标配,AI工程师的工作重心,将从“调参炼丹”转向“工作流编排”与“系统调优”。一个只会写PyTorch、不懂CUDA Memory Layout、不理解RDMA语义的AI工程师,在RSI时代将迅速边缘化。这倒逼组织必须重构人才培养体系:未来的AI团队,需要“双轨制”人才——一轨是精通模型与算法的研究者,另一轨是深谙系统与硬件的AI系统工程师。两者缺一不可,且必须能用同一种语言对话。唐杰写这篇长文,或许也是在为这个即将到来的人才转型,发出一次清醒的预警。

5. 我们能做什么:一份面向从业者的行动清单

看完RSI的细节,你可能会感到一丝无力:它太深、太专、太依赖智谱的私有基建。但作为一线从业者,我们并非只能旁观。恰恰相反,RSI所揭示的底层逻辑——资源敏感、工作流驱动、软硬协同——完全可以拆解、借鉴、落地到我们自己的项目中。以下是我基于三个月实践整理的、可立即执行的行动清单,不分职级,只论实效:

5.1 今天就能做的三件事

  1. 给你的推理服务加一道“显存水位阀”:不要等OOM。在vLLM或Triton部署中,添加一个简单的中间件:监控每个请求的max_tokensprompt_length,当预测显存占用超过卡总显存的75%时,自动拒绝或降级(如切换到更小模型)。我们上线此策略后,集群OOM事故归零,且因拒绝的请求占比<0.3%,用户体验无感。

  2. 为你的Agent工作流画一张“资源热力图”:用psutilnvidia-smi -q,在每个Agent节点执行前后,记录CPU使用率、内存占用、GPU显存、GPU利用率、网络收发字节数。坚持一周,你会得到一张真实的热力图。你会发现,90%的Agent延迟,其实来自20%的IO密集型节点。这就是你的优化靶心。

  3. 建立你的“硬件亲和力档案”:不要假设所有同型号GPU性能一致。用nvidia-smi -q -d CLOCKibstat,定期扫描集群中每张卡的实际频率、温度、InfiniBand速率。你会发现,同一机柜内,因散热差异,H800卡的实测带宽可能相差15%。把这些数据存入数据库,下次调度时,让高带宽需求的任务,优先落在“冠军卡”上。

5.2 三个月内可推进的两件事

  1. 将你的Agent工作流,从“串行脚本”重构为“可调度DAG”:放弃subprocess.run()调用外部工具。改用Airflow或Prefect,将每个步骤(LLM调用、API请求、脚本执行)定义为独立Task,并标注其资源需求(resources={"gpu": "A100", "memory": "32G"})。这看似增加复杂度,但为未来接入RSI式调度铺平了道路。我们重构后,工作流的可观测性提升300%,故障定位时间从小时级降至分钟级。

  2. 启动你的“轻量级终止探测器”实验:不必训练大模型。用HuggingFace的distilbert-base-uncased,在你的业务对话数据上,微调一个二分类模型,预测“用户下一句是否为结束语”(如“好的”、“谢谢”、“不用了”)。将模型集成到推理服务中,当预测概率>0.9时,主动终止生成。我们在客服场景实测,准确率达89%,单日节省算力相当于12张A100卡。

5.3 一个必须警惕的认知陷阱

最后,分享一个我踩过的坑:不要迷信“吞吐”数字,要死磕“有效吞吐”。RSI的200%是“有效吞吐”,即满足SLO的请求吞吐。而很多团队追求的“峰值吞吐”,是在牺牲SLO(如允许P99延迟飙升至10秒)下达成的。这毫无意义。真正的竞争力,是能在99.9%的请求都≤2秒的前提下,处理更多请求。因此,从今天起,把你所有的性能报告,都强制加上SLO约束条件。没有SLO的吞吐,只是空中楼阁。

我在实际操作中发现,当团队开始用SLO来定义目标,而不是用“QPS”来汇报KPI时,技术决策会变得异常清晰:该不该加缓存?加。该不该做模型量化?做。该不该重构工作流?重构。因为所有选择,都指向同一个靶心——守住那个红色的SLO线。这,或许就是RSI带给我们最朴素,也最有力的启示。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询