之前想看一下 veRL ,不过粗看了下内容比较多,一口吃不下去,想先各个击破比较好,免得囫囵吞枣。

随着预训练瓶颈渐显,后训练、推理时计算越来越受到关注,还是先从 serving 看起;此外从实际需要出发,先看 serving 也合适,毕竟 serving 是把模型用起来的第一步。

SGLang 和 vLLM 类似,都是校园里走出来的,一个来自斯坦福,一个是来自UC 伯克利,提供的 featrue 也有类似。

vLLm 从 page attention 起家,SGLang 则提供了 radix attention 来应对,感觉功能上大同小异,如果要想用起来,作为长期工程投资,就看后继谁功能迭代快,社区强,用户反馈好了。不过,这不妨碍我们花点时间来研究下。

SGLang 作为 serving 框架,提供 featrue 比较丰富,比如基础的 chunked prefill、speculaitve decoding 、radix attention 和 structured output(这个也是为什么 SGLang 的一个原因,能够提供结构化的返回),作为 serving 框架,我们先看看这四个 feature。

插句题外话,SGLang 除了提供后端 serving 能力,也提供了一个前端框架,前端框架提供了一套 DSL ,看它代码,还是有 ir 中间表达和解释器实现,通过这个确实是按照语言来去实现的,看的出来 SGLang 不仅仅想作为一个框架存在,更想能成为一个应用,不过现在看这个前端稍显鸡肋。

01

chunked prefill

书归正传,我们继续,为了能更好的理解这些后端 feature,我们先看一下 chunked prefill。

为了能更好的理解这个 feature,我们先回忆下推理阶段,一般推理阶段可以分为两个过程,prefill 和 decode,prefill 阶段是用户输入 promt 到模型产出第一个 token 结束。

decode 阶段就是模型通过自回归产出 token 都遇到终止 token 或者达到输出上限。

为什么会分成两个过程,主要是模型负载不同,主要消耗的资源类型不同。

prefill 阶段,输入是 B×L×d,其中 B 是 batch 大小,L 是 prompt 长度,d 是 embeding 维度。

可以看出 prefill 阶段是计算密集型,对 GPU 的利用率是比较高的。

而 decode 阶段呢,由于 decode 是指针对上轮产生的 token 进行计算,负载为 B×1×d,由于之前各个层 KV 向量是可以不用重新计算的,可以放到 cache 里复用,就导致大量的显存操作,进一步减弱了 GPU 的利用率。

这里为了提升 GPU 利用率,基本的就是合并请求,从单个串行执行,变成Batch 操作,Batch 大小要控制好,如果太大,很容易打满 GPU,如果太小,那会导致 GPU 空闲。此外就是如何合理的进行分配 prefill 和 decode。

为了好衡量这两个阶段的效率,这里有两个指标一个是 TTFT( the time for first token ),用来衡量 prefill 阶段的时间,还有一个是 TPOT(time per output token),标识 decode 阶段,输出下一个 token 的时间。

如果 TTFT 过长,用户的体感就是系统卡死,TPOT 同样也是。 在 batch 操作中,如果 batch 结束,才接收新的请求,那之前最长的 decode 将是 batch 请求的总时间,那会显著提高 TTFT。 

如果允许在 decode 阶段允许新的请求,如果新的请求 prompt 过长,就会导致 TPOT 过长,同时产生 GPU 空闲。

为了更好的挖掘 GPU 时间,可以在 prefill 阶段,把 prompt 进行分段,短 prompt prefill 之后,可以直接进入 decode ,且不会阻塞其他的请求的 prefill 操作。

这个就是 chunked prefill 实现,为什么会提升效率的原因。

02

speculative decoding

推测解码,也有人翻译成投机解码,觉得翻译成推测解码更合适,不然大胆猜测,小心验证,就该改成大胆投机了。

LLM 是一个自回归模型,简单理解下就是一个“猜字”游戏,基于当前的字面,猜一个字,新字再加入到字面,循环猜字的过程。

有时候字面并不复杂,比较好猜,没有必要使用大的模型结构,完全可以使用小的模型结构,来优化推理过程。 

推迟编码实现就是通过训练一个小模型,即 draft model 草稿模型来推测输出,之后用原模型进行验证,如果原模型对应的 token 概率不小于 p,则采纳,否则重新通过原模型进行推理。

是不是有点奇怪,验证阶段不是也会经过原模型计算,那成本减少在哪里? 这个效率提升的秘密就在于并行。

举个例子,draft model 在 decode 阶段先生成未来 10 个 token,那验证阶段,就可以并行验证了, 通过并行来提高效率,产生收益。

SGLang 默认实现是通过 EAGLE,EAGLE 选择的 draft model 和原模型结构一致,不同的地方只是在 LM head 层前单独训练一个 draft 模型获取 next feature,之后通过原模型的 LM head 。

这里这个 head 指的不是 attention 里那个,更像是图像检测的检测头网络。

 这份《AI产品经理学习资料包》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以在文末CSDN官方认证二维码免费领取【保证100%免费】
资料包: CSDN大礼包:《对标阿里黑客&网络安全入门&进阶学习资源包》免费分享


AI产品经理,0基础小白入门指南
作为一个零基础小白,如何做到真正的入局AI产品?

什么才叫真正的入局?

是否懂 AI、是否懂产品经理,是否具备利用大模型去开发应用能力,是否能够对大模型进行调优,将会是决定自己职业前景的重要参数。

你是否遇到这些问题:
1、传统产品经理

不懂Al无法对AI产品做出判断,和技术沟通丧失话语权
不了解 AI产品经理的工作流程、重点
2、互联网业务负责人/运营
对AI焦虑,又不知道怎么落地到业务中想做定制化AI产品并落地创收缺乏实战指导
3、大学生/小白
就业难,不懂技术不知如何从事AI产品经理想要进入AI赛道,缺乏职业发展规划,感觉遥不可及
为了帮助开发者打破壁垒,快速了解AI产品经理核心技术原理,学习相关AI产品经理,及大模型技术。从原理出发真正入局AI产品经理。

这里整理了一些AI产品经理学习资料包给大家
📖AI产品经理经典面试八股文
📖大模型RAG经验面试题
📖大模型LLMS面试宝典
📖大模型典型示范应用案例集99个
📖AI产品经理入门书籍
📖生成式AI商业落地白皮书

🔥作为AI产品经理,不仅要懂行业发展方向,也要懂AI技术,可以帮助大家:
✅深入了解大语言模型商业应用,快速掌握AI产品技能
✅掌握AI算法原理与未来趋势,提升多模态AI领域工作能力
✅实战案例与技巧分享,避免产品开发弯路

这份《AI产品经理学习资料包》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
资料包: CSDN大礼包:《对标阿里黑客&网络安全入门&进阶学习资源包》免费分享

AI大模型学习福利
作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

大模型&AI产品经理如何学习
求大家的点赞和收藏,我花2万买的大模型学习资料免费共享给你们,来看看有哪些东西。

1.学习路线图


第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己整理的大模型视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要点击CSDN大礼包:《对标阿里黑客&网络安全入门&进阶学习资源包》免费分享前往获取

3.技术文档和电子书
这里主要整理了大模型相关PDF书籍、行业报告、文档,有几百本,都是目前行业最新的。


4.LLM面试题和面经合集
这里主要整理了行业目前最新的大模型面试题和各种大厂offer面经合集。


👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。


1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以CSDN大礼包:《对标阿里黑客&网络安全入门&进阶学习资源包》免费分享免费领取【保证100%免费】🆓

Logo

免费领 200 小时云算力,进群参与显卡、AI PC 幸运抽奖

更多推荐