查看: 3788| 回复: 4
跳转到指定楼层
上一主题 下一主题
收起左侧

[经验总结] 尝试从 LLM 推理学习系统设计

   
🔗
匿名用户-HONHA  2025-12-31 16:31:57 |倒序浏览

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
本帖最后由 匿名 于 2025-12-31 17:00 编辑

眼红 LLM 的大包 但是普通 SDE 也确实没啥机会染指 偶然接触到 LLM 推理引擎 Sglang 利用周末时间看源码 自己也手挫了一个猴版baby-sgl 来学习。收获良多,记录分享下学习的心得 期望能对自己的日常业务开发和能力提升有一些帮助

从 SDE 的视角看 Sglang
Sglang Runtime 和\"传统\"的 spark有相似之处。Engine + TokenizerManager 像 Spark Driver:负责接入/解析请求、维护全局状态。Scheduler 像 Executor:本地持有资源与状态(比如模型权重、KV cache),自回归地循环执行计算,在多个请求之间做切换,并把结果流式回传给上层

按照这个思路往下理解。传统分布式系统的优化 缓存 batch 异步 并行 调度都可以用上

比如:

  • 为了降低排队延迟,引入 Continuous batching(静态调度改成动态)
  • 为了减少内存碎片、引入 Paged Attention(把 KV cache 做成“分页/slot 化”的池)
  • 为了请求间前缀复用,引入 Radix Attention(前缀缓存,用于多轮对话比如 agent 等场景)
  • 用 1-token overlap schedule 减少 CPU 和 GPU 之间的强制等待(把 cpu 调度和 gpu 运行 尽量 overlap)
  • Tensor Parallel 类似拆分存储大 Key(把一次计算拆到多卡并行)
  • ... PD分离这些高级 feature 还没学到 ...
从 Sglang 学系统设计
从学习系统设计/面向对象设计的角度也可以有一些收获 类似几个问题

  • 设计一个高并发小请求的自适应批处理服务(Continuous batching)
  • 设计一个可变长 Buffer 的内存池(Paged Attention)
  • 设计一个“前缀复用”的缓存/去重系统(Radix Tree + Longest Prefix Match)
  • 设计一个异步流水线以隐藏 IO 等待(Overlap schedule)


斗胆猜测 LLM 推理系统的演进

缓存: 最容易想到的冷热数据多级缓存 确实已有实现 Sglang Hicache https://lmsys.org/blog/2025-09-10-sglang-hicache/
调度: 除了单机内部 req 调度 集群内也可以有一些类似操作 似乎也有实现 https://github.com/vllm-project/aibrix
cloud-native: 多租户,弹性扩缩容这些是不是也可以怼上

一些学习资源

除了sgl 本身,社区有很多mini 版本实现适合入门学习

https://github.com/GeeeekExplorer/nano-vllm

https://github.com/sgl-project/mini-sglang

我的猴版 https://github.com/baby-llm/baby-sglang

评分

参与人数 10大米 +51 收起 理由
涂哈哈 + 1 赞一个
gongchen + 2 很有用的信息!
instant_dev + 10 给你点个赞!
微信用户_evkia + 1 赞一个
ndhuanhuan2 + 2 给你点个赞!

查看全部评分


上一篇:有人想在圣诞假期期间讨论和mock系统设计吗?
下一篇:有人愿意share hellointerview账号吗
全局:
我上周末给智谱在vllm引入勒 glmasr

给我难受的够呛 然后hr告诉我不能远程
回复

使用道具 举报

地里匿名用户
🔗
匿名用户-HONHA  2025-12-31 20:18:40 来自APP
https://github.com/baby-llm/baby-sglang 欢迎交流学习 欢迎star!
回复

使用道具 举报

🔗
Pattern 2025-12-31 20:38:18 来自APP | 只看该作者
全局:
微信用户_a74b39d 发表于 2025-12-31 03:43:00
我上周末给智谱在vllm引入勒 glmasr

给我难受的够呛 然后hr告诉我不能远程
你在国内吗?
回复

使用道具 举报

全局:

USA

那个岗位是intern  是有个好大哥摁推的  面试官当时很着急 什么八股文都没问  就说glmasr要在1月份发版前能在vllm和sglang支持  sglang好大哥弄完勒 vllm我圣诞节两天弄完了  processing走的transformer不然很麻烦    反正现在vllm那边已经approval勒
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表