LinkedIn最近对AI职位搜索的排序模型做了一次重要升级,核心思路是用基于SGLang的多教师蒸馏系统,把多个大模型的知识浓缩进一个6亿参数的学生模型里。上线后,职位搜索的NDCG@10从0.7583提升到0.9432,相对涨了24.48%,目前已经支持美国用户的自然语言职位搜索。
为什么需要多教师蒸馏
职位搜索不光是匹配关键词那么简单。用户可能会输入“找一份远程的机器学习工程师岗位”,系统既要理解语义和意图,还得兼顾相关性、互动信号等维度。单个模型很难把所有方面都学好,所以LinkedIn用了多个教师模型——一个80亿参数的相关性教师,一个17亿参数的互动教师,让学生模型从不同角度吸收经验。
多教师蒸馏的妙处在于,学生模型可以保持较小的体积,同时把大模型的能力学到手。6亿参数在工业界部署起来成本低、延迟低,但效果却能逼近更大的模型。
在线蒸馏和离线蒸馏怎么配合
这套系统同时用了两种蒸馏模式:在线模式在训练过程中实时查询教师模型,灵活度高,但训练速度会慢一些;离线模式则预先算好教师输出并缓存,训练快但更新不及时。LinkedIn的做法是,早期教师模型还在频繁调整时用在线查询,等模型稳定了、查询量大了,再切到离线缓存。
这样一来,既保证了训练质量,又不会让训练过程被教师推理拖垮。整体来看,收益来自多种优化的叠加,而不是某一项单一技术的功劳。
训练优化:从8倍提速到FP8踩坑
训练阶段用了不少硬核优化。团队采用LiGer内存优化、多节点训练、FSDP2,以及H200集群,整套组合下来训练速度提升约8倍。不过他们发现一个有意思的事:FP8混合精度对小于80亿参数的模型反而没有帮助。所以说,不是越新的精度就一定好,得看模型规模。
在基础设施层面,这套训练也充分利用了云资源的弹性。对于国内做企业上云、需要跑大模型训练团队来说,找一个靠谱的阿里云代理商,比如易枫顺 - 阿里云官方旗舰级代理商,能省不少心。通过阿里云优惠或者阿里云代金券,还能降低试错成本,尤其适合早期做模型压缩和蒸馏验证的团队。
推理侧如何把吞吐拉高7倍
模型部署到生产环境后,还得考虑吞吐和延迟。LinkedIn通过结构化剪枝和上下文压缩,把每块GPU的排序吞吐量从每秒约290个条目提升到超过2000个条目,整整提升了6.9倍。这意味着用更少的硬件扛住更大的流量,成本下降非常明显。
推理优化这块,SGLang扮演了关键角色。它不仅是个开源引擎,还允许团队深度定制,让教师模型能在训练期间被实时查询。这和Pinterest侧重扩展多节点训练框架的做法不同,LinkedIn的独特贡献是围绕SGLang做了深度定制。
生产环境的表现
目前这套系统已经在生产环境运行,为LinkedIn美国用户的自然语言职位搜索提供支持。它完全基于开源的SGLang引擎构建,并没有依赖专有服务技术栈。也就是说,其他公司也能参考这套方案,用类似的思路去优化自己的搜索、推荐系统。
值得注意的是,工业排序系统通常只会用少量任务特定的教师模型,而前沿大模型往往会用更多专家模型进行密集监督。LinkedIn在两者之间找到了一个平衡点,这也是它能落地的关键。
如果你所在团队也在折腾搜索排序、模型压缩,或者想试试大模型蒸馏,不妨先从部署一个合适的云环境开始。利用阿里云代金券或者阿里云优惠,把基础资源准备好,再慢慢搭建自己的蒸馏流水线,这条路是走得通的。云服务器ECS加上开源框架,能让你快速跑起来。
FAQ
Q: 为什么LinkedIn要用多教师蒸馏,而不是直接部署大模型?
A: 大模型推理成本高、延迟高,职位搜索要实时响应,直接上大模型不现实。多教师蒸馏可以把大模型的知识压缩到6亿参数的小模型里,效果好、部署便宜。
Q: 在线蒸馏和离线蒸馏该如何选择?
A: 如果教师模型还在频繁调整、标签分布变化快,建议用在线蒸馏;等模型稳定、查询量大了,再切到离线缓存。LinkedIn正是经历了这个阶段切换,才在灵活性和训练速度之间取得平衡。
Q: FP8混合精度对所有模型都有提升吗?
A: 不一定。LinkedIn测试发现,FP8对小于80亿参数的模型反而没有帮助。选择精度时得看具体模型规模和训练目标,不能盲目追新。
Q: 这套系统能迁移到其他推荐场景吗?
A: 完全可以。它基于SGLang开源引擎,多教师蒸馏、在线离线切换、剪枝压缩这些思路都是通用的。只要你有排序或推荐需求,都能参考这个方案。
关于易枫顺
深圳市易枫顺网络科技有限公司是阿里云官方旗舰级代理商。提供云服务器ECS、云数据库RDS、对象存储OSS等阿里云全系产品官方特惠折扣与代金券申请,以及多云成本优化、企业上云一站式服务。客服热线:19520841949 - 易枫顺
来源:InfoQ