用异构计算打开一条新的推理路径
原标题:4090单卡跑满血版DeepSeek-R1,清华团队开源项目再破大模型推理门槛
文章来源:量子位
内容字数:4243字
清华大学开源项目KTransformers:让千亿参数大模型“飞入寻常百姓家”
DeepSeek-R1等千亿参数大模型因其强大的性能而备受关注,但高昂的推理成本和对硬件资源的极高需求,使其难以在中小团队甚至个人手中运行。清华大学KVCache.AI团队联合趋境科技发布的KTransformers开源项目,为这一难题提供了一种有效的解决方案。该项目通过一系列技术创新,实现了在24GB显存的消费级显卡上运行DeepSeek-R1/V3的671B参数满血版,将千亿级模型的推理带入“家庭化”时代。
突破显存限制:专家卸载技术与异构计算
KTransformers的核心技术在于“专家卸载”技术,它巧妙地利用MoE(混合专家)架构的稀疏性。DeepSeek-R1/V3采用MoE架构,模型的任务分配给不同的专家模块,每次推理仅激活部分参数。KTransformers将非共享的稀疏MoE矩阵放在CPU/DRAM上,使用llamafile的高速算子处理;将稠密部分放在GPU上使用Marlin算子处理,实现了GPU/CPU的异构计算划分策略。这种策略使得在仅需24GB显存的环境下就能运行671B参数的模型,例如单张4090显卡即可满足需求。
显著提升推理速度:高性能算子与CUDA Graph优化
KTransformers不仅解决了显存问题,还大幅提升了推理速度。它采用基于计算强度的offload策略,优先将计算强度高的部分(MLA > Shared Expert > Routed Expert)放入GPU。同时,引入llamafile作为CPU内核和Marlin算子作为GPU内核,并进行多线程、任务调度等优化,实现了高达286 tokens/s的预填充速度和14 tokens/s的生成速度。此外,KTransformers通过优化CUDA Graph,减少了CPU/GPU通讯开销,进一步提升了性能。
易用性与扩展性:友好的API和灵活的框架
为了降低使用门槛,KTransformers提供了兼容HuggingFace Transformers的API和ChatGPT式Web界面。同时,其基于YAML的“模板注入框架”支持灵活切换量化策略、内核替换等多种优化方式,方便用户进行模型和算子的组合测试。该项目支持Windows和Linux平台,并已在localLLaMa社区持续位居热榜第一,拥有活跃的开发者社区。
技术细节:MLA算子优化与算子选择策略
KTransformers对MLA算子进行了优化,将矩阵直接吸收到q_proj和out_proj权重中,减少了KV缓存大小并提升了GPU利用率。通过计算强度来决定划分策略,将高计算强度任务优先分配给GPU,充分发挥GPU和CPU的算力。
总而言之,KTransformers通过巧妙的架构设计和优化策略,成功地将千亿参数大模型的推理门槛大幅降低,为广大开发者和科研人员提供了更便捷、更经济的探索和应用途径,推动了大模型技术的普及和发展。
联系作者
文章来源:量子位
作者微信:
作者简介:追踪人工智能新趋势,关注科技行业新突破