JAVA

Netflix 用 JDK Vector API 优化推荐系统:一次教科书级的性能工程实录

Netflix 技术博客 2026 年 3 月的文章,讲 Ranker 推荐服务里一个占单节点 CPU 7.5% 的热点(视频惊喜度打分的余弦相似度计算)如何被一步步优化到 1%:先把 M×N 次独立点积重构成矩阵乘,发现批处理反而慢了 5%,定位到内存布局和分配策略问题后用扁平数组加 ThreadLocal 复用解决,试过 BLAS 因 F2J 和 JNI 开销放弃,最终落在孵化中的 JDK Vector API(纯 Java SIMD,无 JNI),上线后整体 CPU 降约 7%、平均延迟降约 12%、CPU/RPS 改善约 10%。核心启示:性能优化拼的不是找到“最快的库”,而是计算形状、内存布局、分配策略、计算内核四件事全部对齐。
方糖猫 方糖猫 · · #Netflix · #JDK Vector API · #SIMD
AI 工程

Netflix 的 LLM 后训练框架:从「跑通脚本」到「管好四根支柱」

Netflix 技术博客介绍了其内部 LLM Post-Training Framework:后训练在大规模生产环境里本质是工程问题而非建模问题,框架围绕 Data、Model、Compute、Workflow 四根支柱提供标准化配方(SFT、DPO、RL、蒸馏),底层跑在 Mako、PyTorch、Ray、vLLM 之上。三个核心教训:从 SFT 的 SPMD 模型演进到 RL 的「单控制器 + SPMD」混合架构(集成 Verl 做编排);全面拥抱 Hugging Face 生态,用 AutoTokenizer 作为唯一事实源消除训练-推理 skew,并用 AI coding agent + logit verifier 自动桥接新模型架构;差异化价值投在 on-the-fly sequence packing(吞吐提升最高 4.7 倍)和 vocab size 对齐 64 这类深水区优化上。对工程师的启示:训练框架的价值不在堆组件,在于把分布式系统的坑变成配置项。
方糖猫 方糖猫 · · #Netflix · #LLM · #后训练
AI 工程

Netflix 图搜索的 AI 进化笔记:从结构化 DSL 到自然语言

Netflix 技术博客 Graph Search 系列第四篇的学习笔记:企业内部几百个应用原本靠 Graph Search Filter DSL 过滤数据,用户被迫学习每个应用的查询构建器;Netflix 用 LLM 做 Text-to-Query,把自然语言翻译成 DSL。核心工程经验有三条:把「正确」拆成语法、语义、语用三层分别治理;用双路 RAG(字段 RAG + 受控词表 RAG)给 LLM 裁剪上下文,解决几百个字段、上千个枚举值塞不进 prompt 的问题;用 AST 确定性校验兜底幻觉,再把 AST 反射回 UI 组件「show your work」建立用户信任。
方糖猫 方糖猫 · · #Netflix · #GraphQL · #RAG
随笔

高 bug 率的人该怎么对待:一场项目争论背后的对事、对人与系统

从一个真实的项目争论引子——组里有人 bug 率明显偏高,到底是对事不对人、还是该小惩大诫、还是架构与设计的锅、还是 AI 用得太少——先用数据把症状变成事实,用「引入链分解 × 鱼骨图 6M × 控制变量实验」找全病根,对照行业成熟方法论(IBM ODC、DORA 指标、shift-left 工具链、错误预算、丰田安灯),最后用 Just Culture 区分错误类型,回到《系辞》与 Dalio《原则》的统一:让反馈回路不失灵。
方糖猫 方糖猫 · · #随笔 · #软件工程 · #团队管理