语言的边界不该是思维的边界
这些天笔者不是在忙着「从零开始学大模型」,以及转型 AI Infra 嘛,就想着要写一个稍稍硬核的 mini project,放在简历上。一是给自己实践的机会,检验自己的学习成果,二是让 HR 和面试官都能一眼知道“他懂”,以及面试有抓手来提问。
这些天笔者不是在忙着「从零开始学大模型」,以及转型 AI Infra 嘛,就想着要写一个稍稍硬核的 mini project,放在简历上。一是给自己实践的机会,检验自己的学习成果,二是让 HR 和面试官都能一眼知道“他懂”,以及面试有抓手来提问。
这是在 Hugging Face 的 TRL Quickstart 界面里,GRPO 训练的示例。今天从这里开始,探索一下 HF 的 GRPOTrainer 是怎样实现的,涵盖普通 Training loop 与 RL/GRPO 中的 Rollout、Training 环节,为之后我们手搓 GRPO Training Loop 打下基础!
Wi-Fi ✔ 插座 ✔ 厕所 ✔ 户外 ✔ 停车 ✔ 氛围 ✔ 安静 ✘
在 LA 去的第一家,感谢 Justin 友友带我探店。值得单独说的是有一个鸡肉馅饼(不知道算不算馅饼)“3 Cheese Chicken Quesadilla” 挺好吃的,值得一试。
今天注意到了一款 AI 时代新出现的需求孕育的新产品:“Vibe Island”,稍加调研了一下它的产品功能与商业模式,顿时感觉在 AI 时代产品护城河已经与之前的古法编程时代大不相同了,我们的思维也得做顺应时代的范式改变。
TurboQuant 是最近的热门,Google 一将它发出来,各种自媒体都在疯传说这个技术将内存占用率压缩了 6 倍,内存价格闪崩。出于兴趣以及正好在学大模型,就看了一下,发现其实也没有想象的那么复杂。
“断舍离” 是什么:
- 断 (断绝):不买、不收取不需要的物品,从源头控制物品流入。
- 舍 (舍弃):处理掉堆放在家里没用的东西,专注于对“此刻的自己”适用的物品。
- 离 (脱离):脱离对物质的执着和迷恋,让自己从物欲中解脱出来,拥有身心轻盈的状态。
很早之前就读过山下英子的《断舍离》了,但一直仅仅是把这个思想放在脑中,作为一个“知识”存在。
简单来说就是 Batch 的方式不只有平凡地把 [T, D] 的 Token 向量 “叠起来” 拼,形成 [B, T, D] 的矩阵。在最底层矩阵计算的时候,它被 pytorch 给展平成 [B * T, D] 这样一个大矩阵,去做矩阵乘法。
Paged Attention 要解决的,是 KV Cache 显存浪费的问题。
一般来说,为了放下 KV Cache,会预先 alloc 出一大块显存,但是 KV Cache 大学又是随着推理进行不断增长,是一个动态的逐渐增大的存储需求。此外,在多个序列同时进行推理时,各个序列的长度不同,对应的 KV Cache 也不一样,此时也不方便为不同序列配置不一样大小的显存。