来源: YouTube | Charles Frye | Jun 04, 2026 播客: Stanford Online 分类: 其他 原文发表: Jun 04, 2026 纪要生成: 2026-06-22
Charles Frye 是 Modal 的工程师,长期从事 AI 应用开发与教学。他拥有加州大学伯克利分校的博士学位,研究方向包括神经药理学、神经生物学以及神经网络优化,曾通过 Weights & Biases 和 Full Stack Deep Learning 等项目向数千人传授从线性代数、GPU 底层到商业落地所需的完整栈知识。本场演讲中,他围绕推理服务的全栈技术展开,系统拆解了从应用需求、模型与引擎选择、硬件特性到部署调试与性能优化的完整路径。
本节重点
详细精要
相比之下,出售一个“装有软件的 CD”几乎无人买单,只有把模型变成可用的产品才能可持续地支撑后续训练。
训练工作本身也越来越离不开高效推理:现代训练流程,尤其是强化学习,需要让模型产生输出并与世界交互,再将反馈注入权重。
因此,推理已经从“训练的弟弟”变成整个 AI 工程中不可回避的核心环节。
推理为全栈工程师提供了天然的游乐场:从电子和散热到线性代数与 GPU 编程,再到应用层设计,推理把技术栈的两个极端连接起来。
随着推理需求即将爆发式增长,能够高效满足这些需求的工程师将有巨大的市场机会。
演讲者的个人背景与立场:演讲人在 Modal 专注推理约两年,此前深耕训练与全栈深度学习教育,合作对象包括数百至数千块 GPU 量级的团队。
💬 精华片段(中文)
“训练很酷,但从生意的角度看它是一个成本中心,而不是收入中心:你投钱进去,模型出来,但并没有一个好办法直接把模型权重变成金钱。” "Training is cool, but from the perspective of a business, it's a cost center, not a revenue center. You put money in, and a model comes out. And then there's not actually a good way to turn model weights into money directly."
本节重点
详细精要
对延迟极其敏感,通常要求毫秒到秒级的响应,是人机交互体验的核心指标。
后台代理(Background agent):例如 Devin、OpenClaw、各种代码审查与 SRE 代理,人类仅仅触发任务而不实时等待。
延迟约束放宽到分钟甚至小时量级,但仍存在上限,因为人类最终还是要拿到结果。
数据处理器(Data processor):以 Reducto 之类的非结构化数据提取平台为代表,目标是把 PDF、邮件等文档转化为结构化信息并写入数据库或文件系统。
💬 精华片段(中文)
“我说‘聊天机器人增强版’,是因为它不只是在聊天,它还会用文本输出去和计算机系统交互,替用户做事。” "I say chatbot plus because it's not just yapping. It's also that this thing uses its text outputs to interact with other computer systems on behalf of the user."
本节重点
详细精要
输出长度不可靠,因为模型自己决定何时吐出结束令牌,只能靠经验数据去估计。
前缀重用(Prefix reuse)是降低成本的关键变量:如果系统能识别重复的前缀并直接复用之前的计算结果,可以把大量昂贵的 GPU 计算转化为更便宜的存储读取。
前缀命中率既受用户习惯影响,也取决于提示词的封装方式,适当约束客户端行为能明显提升命中率。
延迟预算的两个核心成分:
通常还需要结合输出长度推算出最后令牌时间(TTLT),但在存在工具调用时,真实延迟会变得非常复杂且难以理论推导,必须依靠生产数据。
单副本标定与扩缩容:先评估一个推理引擎副本的极限性能,再通过增减副本数量来匹配总负载。
这种“脉冲响应”式的测量思路,能帮助工程师快速描绘出副本的能力范围,从而为资源规划提供依据。
尾延迟才是体验杀手:即便 P50 延迟看起来很好,P95 或 P99 的卡顿会在交互场景中造成明显的停顿与抖动。
💬 精华片段(中文)
“即使只有百分之五的用户碰上这种延迟,当你把它放到单个序列级别去衡量时,那些卡顿就会像大家熟悉的推理供应商一样让人恼火。” "you measure something like P95 and P99. You think, oh, only one out of every 20 or one out of every 100 users experiences this. How big of a deal could it be? ...you see all this stuttering."
本节重点
详细精要
该类工作负载下可选模型非常丰富:Qwen、NeMo Tron、Gemma、Mistral、StepFun 等,并且每个家族都有不同尺寸、模态和领域优化的变体,工程师几乎“被选择宠坏了”。
能力绑定(Capability bound):当最强模型依然不够用时,用户愿意为更高智能付出一切。
在从闭源 API 转向自托管时,可选模型不多:DeepSeek、Kimi GLM、Minimax 等大体量开源前沿模型是目前的主要替代品;开始微调之后模型迁移会更受限,因为训练代码的兼容性仍未成熟。
推理引擎的结构与重要性:引擎的核心是运行在 CPU 上的调度器,它负责把工作源源不断地推送给 GPU,确保其永不空闲。
目前对于普通用户而言,两者没有压倒性的优劣之分,同时拥有多个高质量选择是一件好事。
学习推理引擎的推荐资源:Mini vLLM 和 Nano vLLM 是极简化实现,可以帮助理解内部原理;Alexa Gaudich 的详尽讲解同样值得参考,所有相关资源已打包到 Modal 的 Notebook 中,可以直接在多 GPU 环境下体验预填充与解码的分离部署。
💬 精华片段(中文)
“GPU 是一个协处理器,你派活给它,它过一会儿再把答案还给你。你的任务就是确保它总有事可做——这就是 PyTorch 的道:Python 花一秒时间决定下一个内核该跑什么也没关系,只要这个决定是在 GPU 跑完上一个内核之前做好的。” "GPU is a coprocessor. You are giving it work to do, and it gives you the answers back later. You want to make sure that there is always work for that thing to do. And that is like-- that's the DAO of PyTorch-- why PyTorch eager mode works is that while the GPU is doing a petaflop, Python is taking its sweet time of a second to decide which kernel to run next. And that's fine, as long as you know which kernel to run next before the GPU finishes."
本节重点
详细精要
这与现代 GPU 每年攀升的脊点算术强度(ridgeline arithmetic intensity)趋势背道而驰,造成解码时 GPU 的算术单元几乎必定闲置,整体性能被内存带宽死死卡住。
数据中心级 SXM GPU 的不可替代性:
多 GPU 内联的 NVLink 和跨节点的 InfiniBand 是扩展规模的基础,尤其在能力绑定的大模型场景不可或缺。
替代方案当前皆有短板,但长期值得关注:
💬 精华片段(中文)
“如果你在设计奇特的模型架构,一定要确保它们能利用矩阵乘法。不要重蹈 Transformer 的覆辙——让推理看起来像矩阵-向量乘法。” "So hot tip-- if you're thinking about weird model architectures, make sure that they can take advantage of matrix matrix multiplication. Don't make the transformers mistake of having your inference look like matrix-vector multiplication."
本节重点
详细精要
硬件如此昂贵,以至于节省硬件成本的心态几乎是下意识地贯穿了整个演讲;最大化硬件回报是推理工程师的默认立场。
GPU 的脆弱性需要系统级冗余:根据观察,H100 的平均故障间隔时间(MTTF) 只有数周甚至数天,而非年。
即便如此,面对数千块 GPU 的集群,不同云提供商的故障率差异巨大,仍需要细致的监控与降级策略。
流量波动是比硬件故障更棘手的问题:推理请求/分钟的曲线常表现为围绕明显季节性波动的剧烈锯齿状峰值,这与社会化媒体驱动的爆发式增长现实高度吻合。
按需获取 GPU 并动态扩缩容为解决之道,但新副本的冷启动时间过长又是一个巨大阻碍。
实现快速冷启动的几个关键技术:
💬 精华片段(中文)
“每个进程说到底不过是一个数据结构……它终究只是数据。如果你知道怎么创建它,把它存起来,你就可以比重新创建更快地从存储恢复它。” "every process is actually just a data structure in the end. …this is, in the end, just data. You create it. If you know how to create it, store it, and then you can restore it from storage faster than you can recreate it."
本节重点
详细精要
性能回归:随时间累积,或在异构环境中不同副本间出现不一致,需要基线数据进行对比。
可观测性的理念与分层实践:
令牌 ID 必须记录:仅记录字符串会丢失隐藏的歧义,很多在 Unicode 下难以辨识的错误,在令牌 ID 中一目了然。对于性能,记录尽量多的指标,哪怕是之后才用的上,也比事后追悔要好。
评测集的地位与用法:评测之于 LLM 应用,就像单元测试之于传统软件,虽然编写耗时且看起来不酷,但至关重要。
模型和部署方案总在更换,但评测集的生命周期更长(至少要跨模型比较),可以用它来驱动所有后续优化决策:选择哪个模型、能否承受极端的量化、推测解码是否值得等。
核心监控指标建议:
💬 精华片段(中文)
“我求你们了,把令牌 ID 写进日志。别只记录字符串。那些在 Unicode 下非常微妙的 bug,换成令牌 ID 就会变得显而易见——‘这个数字是哪儿来的?’” "I am begging you log token IDs as part of your logging. Don't just log the strings. You will have trouble recreating those token IDs later. And this is bugs that are very subtle expressed in Unicode are very obvious-- expressed in token IDs. Where did that number come from?"
本节重点
详细精要
实现路径多态:从简单 N-gram、内建的多令牌预测(MTP),到基于隐藏状态较早层的 Eagle,再到算术强度更高、天然更适合硬件的扩散语言模型 D-Flash,团队正大力投入后者的工程化与框架集成。
量化(Quantization)——近乎免费的线性加速:
KV 缓存的可压缩性更差,最好在训练阶段(如 DeepSeek V4)就引入,否则极易出错。
中级优化——让 CPU 为 GPU 让路:
定位这类问题常用 py-spy 做 CPU 火焰图,一个简单的 Python 指针缓存即可在多模态推理中带来超过 10% 的加速,完全不必动用 Nsight 等重工具。
最后才触及的 GPU 内核优化:
💬 精华片段(中文)
“推测解码的加速是应用专属的:你可以用自己应用的数据训练草稿模型,将接受长度从 2 倍提升到 6 倍,这再乘以 3 的收益,决定了这门生意做得成还是做不成。” "using application specific data, you can increase your speed up from speculative decoding from a factor of 2 to a factor of 6, which is a factor of 3 speed up. That's very big. It's the difference between does this application work or not."
本节重点
详细精要
这些技术和前面“苦涩的教训”一脉相承:只要能用更多数据和算力换来可接受的精度损失,巨大的推理成本节省就会驱动工业界立即采纳。
异构推理硬件已是公开布局:演讲人明确指出,尽管目前只有以 HBM+SXM+NVIDIA 为中心的方案可行,但 Grok 的 LPU 等专用芯片将与 NVIDIA GPU 组成混合机架,虽尚未完美匹配预填充/解码的拆解范式,但这基本只是历史路径依赖。
未来,预填充和解码有极大可能由各自专门优化的异构加速器分别承担,进一步提升能效。
AI 代理将改变推理工程本身:未来的推理堆栈中将充满由 LLM 组成的代理,它们负责执行基准测试、配置管理、监控设置等一系列原本由人完成的工作。
💬 精华片段(中文)
“你不再是自己写代码了,你的任务是构建一个系统来度量代理的正确性,然后它们会替你去做基准测试、配置、监控。” "Your job is now to build the system that measures the correctness of agents. They will then do things like benchmarking, configuration, monitoring."
| 术语 | 解释 |
|---|---|
| 推理 (Inference) | 使用已训练好的模型对新输入数据进行计算并生成输出(如生成回答文本)的过程,与“训练”相对。本集特指 LLM 的在线或批量生成服务。 |
| SLO (Service Level Objective) | 服务等级目标,通常定义期望达到的延迟、吞吐或可用性等性能指标的具体数值。 |
| QPS (Queries Per Second) | 每秒查询数,衡量推理服务在单位时间内需要处理的用户请求数量;也可扩展为每秒令牌数等变体。 |
| TTFT (Time To First Token) | 首令牌时间,从发出请求到接收到第一个生成令牌的耗时,直接决定交互式应用的响应体感。 |
| ITL (Inter-Token Latency) | 每输出令牌耗时,又称令牌间延迟,即生成过程中连续两个令牌之间的时间间隔。 |
| 前缀重用 (Prefix Reuse / KV Caching) | 当新输入的部分前缀与历史请求相同时,直接复用之前缓存的注意力键值对(KV Cache),避免昂贵 GPU 的重复计算,以存储成本换取延迟或吞吐收益。 |
| 推测解码 (Speculative Decoding) | 用一个轻量级的“草稿模型”快速生成多个候选令牌,再由大模型并行验证并只采纳符合真实分布的令牌,用闲置算力换取数倍解码加速。 |
| 量化 (Quantization) | 将模型参数或中间数据从高精度浮点数(如 FP16、FP8)压缩到更低精度(如 FP4)的技术,降低内存带宽和计算资源消耗。 |
| 脊点算术强度 (Ridgeline Arithmetic Intensity) | 硬件性能模型中的一个临界点:低于该强度时性能受内存带宽限制,高于它则受限算术能力;解码阶段通常远低于当代 GPU 的脊点。 |
| HBM (High Bandwidth Memory) | 高带宽内存,直接焊装在 GPU 芯片周围的堆叠式 DRAM,提供远超普通显存的带宽和更低的功耗/延迟,是解码性能的关键硬件基础。 |
| SXM | NVIDIA 数据中心 GPU 的专用板载形态,采用高密度连接器替代 PCIe 插槽,支撑更高的供电与散热水平,通常为最高性能 SKU 的标志。 |
| Tensor Core | NVIDIA 自 Volta 架构起引入的矩阵专用硬件单元,可在一个时钟周期内完成小规模矩阵乘加,承载了推理中几乎全部浮点运算。 |
| Evals (评估集) | 用于衡量模型输出质量的一组样本与评分标准,在推理工程中用于比较不同模型、优化策略或部署版本的表现。 |
| NUMA 亲和性 (NUMA Affinity) | 管理 CPU/GPU 与最近内存节点的映射配置,不当时会导致多路通信竞争,产生难以察觉的性能扰动,常表现为某些进程或副本落后。 |