Mooncake:月之暗面Kimi联合清华等机构推出的大模型推理架构

本文涉及的产品
NLP自然语言处理_基础版,每接口每天50万次
NLP 自学习平台,3个模型定制额度 1个月
NLP自然语言处理_高级版,每接口累计50万次
简介: Mooncake是由月之暗面Kimi联合清华大学等机构共同开源的大模型推理架构。该架构以KVCache为中心,通过分布式设计和资源优化,显著提升了大模型推理的吞吐量和效率,同时降低了算力开销。Mooncake在长上下文场景中表现出色,支持多种应用场景,如自然语言处理、内容推荐系统和搜索引擎等。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🚀 快速阅读

  1. 架构设计:Mooncake采用以KVCache为中心的分布式架构,分离预填充和解码集群,优化资源利用。
  2. 性能提升:通过高效的KVCache缓存和资源优化,显著提升大模型推理的吞吐量和效率。
  3. 应用广泛:支持多种应用场景,包括自然语言处理、内容推荐系统和搜索引擎等。

正文(附运行示例)

Mooncake 是什么

公众号: 蚝油菜花 - Mooncake

Mooncake是由月之暗面Kimi联合清华大学等机构共同开源的大模型推理架构。该架构以KVCache为中心,通过分布式设计和资源优化,显著提升了大模型推理的吞吐量和效率,同时降低了算力开销。Mooncake在长上下文场景中表现出色,支持多种应用场景,如自然语言处理、内容推荐系统和搜索引擎等。

Mooncake的核心优势在于能显著提升大模型推理的吞吐量,降低算力开销,在保持服务延迟相关的服务级别目标(SLO)的同时,处理高负载场景。架构在长上下文场景中表现出色,能显著提高吞吐量,同时支持基于预测的早期拒绝策略,优化过载情况下的资源分配。

Mooncake 的主要功能

  • 高效的大模型推理:通过分布式架构优化大模型的推理过程,特别是在处理长上下文数据时,显著提升推理吞吐量。
  • KVCache中心化设计:以KVCache为中心,实现高效的数据缓存和重用,减少对GPU资源的依赖,降低算力开销。
  • 预填充与解码分离:将预填充(Prefill)和解码(Decode)阶段分开处理,资源可以针对不同阶段的计算特性进行优化。
  • 资源优化:通过分离式设计,更有效地利用CPU、DRAM和SSD资源,提高资源利用率。
  • 负载均衡:实现基于缓存负载的均衡策略,通过自动热点迁移方案,提升缓存命中率和系统负载的均衡。
  • 过载管理:面对高负载情况,采用基于预测的早期拒绝策略,优化资源分配并减少无效计算。
  • 高性能传输:基于RDMA技术,实现跨节点的高速KVCache传输,降低延迟。
  • 标准化接口:为大模型时代打造新型高性能内存语义存储的标准接口,提供参考实现方案。
  • 成本降低:通过优化推理过程和资源利用,降低大模型推理的成本,AI技术更加经济高效。

Mooncake 的技术原理

  • 分布式架构:利用GPU集群中的CPU、DRAM和SSD资源,实现KVCache的分布式存储和传输,提高缓存容量和传输带宽,降低对单一GPU资源的依赖。
  • 全局调度器(Conductor):负责根据当前KVCache分布和工作负载情况调度请求,以及决定KVCache块的复制或交换,优化整体吞吐量和满足服务级别目标(SLO)。
  • 分块流水线并行(Chunked Pipeline Parallelism):对于长上下文请求,将输入标记分成多个块,并在不同的节点上并行处理,以减少延迟。
  • Layer-wise预填充:异步加载和存储KVCache,通过重叠传输和计算,减少VRAM占用。
  • 缓存感知调度:调度算法考虑了KVCache的重用、预填充时间和实例负载的排队时间,以实现高效的请求调度。

如何运行 Mooncake

准备工作

为了安装和使用Mooncake,需要进行一些准备工作:

  • RDMA驱动和SDK(如Mellanox OFED)。
  • Linux-x86_64系统,需要gcc、g++(9.4+)和cmake(3.16+)。
  • Python(3.10或以上)。

此外,为了支持Mooncake Transfer Engine的更多功能,建议安装以下组件:

  • CUDA 12.1及以上版本,包括NVIDIA GPUDirect Storage支持。
  • Go 1.20+。
  • Rust工具链。

安装步骤

  1. 初始化源代码

    git clone https://github.com/kvcache-ai/Mooncake.git
    cd Mooncake
    
  2. 安装依赖项

    bash dependencies.sh
    
  3. 编译Mooncake和示例

    mkdir build
    cd build
    cmake .. # (可选) 指定构建选项,如-D
    make -j
    

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

相关文章
|
3月前
|
人工智能 测试技术 数据处理
首个Mamba+Transformer混合架构多模态大模型来了,实现单卡千图推理
【10月更文挑战第18天】《LongLLaVA: Scaling Multi-modal LLMs to 1000 Images Efficiently via Hybrid Architecture》提出了一种新型多模态大模型LongLLaVA,结合了Mamba和Transformer架构,通过系统优化实现在单张A100 80GB GPU上处理近千张图像的突破。该模型在视频理解、高分辨率图像分析和多模态智能体任务中表现出色,显著提升了计算效率。
169 64
|
3月前
|
人工智能 前端开发 JavaScript
前端架构思考 :专注于多框架的并存可能并不是唯一的方向 — 探讨大模型时代前端的分层式微前端架构
随着前端技术的发展,微前端架构成为应对复杂大型应用的流行方案,允许多个团队使用不同技术栈并将其模块化集成。然而,这种设计在高交互性需求的应用中存在局限,如音视频处理、AI集成等。本文探讨了传统微前端架构的不足,并提出了一种新的分层式微前端架构,通过展示层与业务层的分离及基于功能的横向拆分,以更好地适应现代前端需求。
|
10天前
|
人工智能 自然语言处理 PyTorch
Bamba-9B:基于 Mamba2 架构的仅解码语言模型,旨在提高大型语言模型在推理时的效率
Bamba-9B 是由 IBM、普林斯顿大学、卡内基梅隆大学和伊利诺伊大学香槟分校联合推出的基于 Mamba2 架构的仅解码语言模型。该模型在开放数据集上训练,旨在提高大型语言模型的推理效率,特别是在处理长文本时的内存带宽瓶颈。Bamba-9B 在推理时相较于标准变换器模型展现出 2.5 倍的吞吐量提升和 2 倍的延迟加速。
55 12
Bamba-9B:基于 Mamba2 架构的仅解码语言模型,旨在提高大型语言模型在推理时的效率
|
12天前
|
人工智能 自然语言处理
RWKV-7:RWKV系列开源最新的大模型架构,具有强大的上下文学习能力,超越传统的Attention范式
RWKV-7是RWKV系列的最新大模型架构版本,具有强大的上下文学习能力,超越了传统的attention和linear attention范式。本文详细介绍了RWKV-7的主要功能、技术原理及其在多语言处理、文本生成等领域的应用场景。
91 7
RWKV-7:RWKV系列开源最新的大模型架构,具有强大的上下文学习能力,超越传统的Attention范式
|
11天前
|
机器学习/深度学习 存储 自然语言处理
RWKV-7:极先进的大模型架构,长文本能力极强
RWKV-7 是极先进的最新大模型架构,超越 attention / linear attention 范式,拥有强大的 in-context-learning(上下文学习)能力,可真正持续学习,在保持 100% RNN 的同时,拥有极强的长文本能力。
RWKV-7:极先进的大模型架构,长文本能力极强
|
29天前
|
存储 人工智能 监控
【AI系统】推理系统架构
本文深入探讨了AI推理系统架构,特别是以NVIDIA Triton Inference Server为核心,涵盖推理、部署、服务化三大环节。Triton通过高性能、可扩展、多框架支持等特点,提供了一站式的模型服务解决方案。文章还介绍了模型预编排、推理引擎、返回与监控等功能,以及自定义Backend开发和模型生命周期管理的最佳实践,如金丝雀发布和回滚策略,旨在帮助构建高效、可靠的AI应用。
102 15
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
大模型最强架构TTT问世!斯坦福UCSD等5年磨一剑, 一夜推翻Transformer
【7月更文挑战第21天】历经五年研发,斯坦福、UCSD等顶尖学府联合推出TTT架构,革新NLP领域。此架构以线性复杂度处理长序列,增强表达力及泛化能力,自监督学习下,测试阶段动态调整隐藏状态,显著提升效率与准确性。实验显示,TTT在语言模型与长序列任务中超越Transformer,论文详述于此:[https://arxiv.org/abs/2407.04620](https://arxiv.org/abs/2407.04620)。尽管如此,TTT仍需克服内存与计算效率挑战。
184 2
|
2月前
|
机器学习/深度学习 编解码 异构计算
4090笔记本0.37秒直出大片!英伟达联手MIT清华祭出Sana架构,速度秒杀FLUX
英伟达、麻省理工学院与清华大学联合发布Sana,一款高效文本到图像生成框架。Sana通过深度压缩自编码器和线性注意力机制,实现快速高分辨率图像生成,生成1024×1024图像仅需不到1秒。此外,Sana采用解码器专用文本编码器增强文本与图像对齐度,大幅提高生成质量和效率。相比现有模型,Sana体积更小、速度更快,适用于多种设备。
35 7
|
3月前
|
缓存 前端开发 JavaScript
前端架构思考:代码复用带来的隐形耦合,可能让大模型造轮子是更好的选择-从 CDN 依赖包被删导致个站打不开到数年前因11 行代码导致上千项目崩溃谈谈npm黑洞 - 统计下你的项目有多少个依赖吧!
最近,我的个人网站因免费CDN上的Vue.js包路径变更导致无法访问,引发了我对前端依赖管理的深刻反思。文章探讨了NPM依赖陷阱、开源库所有权与维护压力、NPM生态问题,并提出减少不必要的依赖、重视模块设计等建议,以提升前端项目的稳定性和可控性。通过“left_pad”事件及个人经历,强调了依赖管理的重要性和让大模型代替人造轮子的潜在收益
|
4月前
|
消息中间件 API 调度
TAG:BladeLLM 的纯异步推理架构
近期,大模型推理社区(vLLM,SGLang 等)普遍开始关注框架运行时开销,提出了多步调度、异步输出处理、独立 API Server 进程等工作,来分摊或掩盖部分开销。 在我们的实际业务场景中,也观察到高额的框架开销严重限制了系统吞吐,特别是在高并发(>1k)场景下,运行时开销已经接近或高于 GPU 运行时间,导致资源严重浪费和性能下降。为此,BladeLLM 设计并实现了基于 Python 的纯异步 LLM 推理架构 -- TAG (Totally Asynchronous Generator) ,以最大程度提高 GPU 利用率,提升引擎性能。

热门文章

最新文章