Hacker News 中文摘要

RSS订阅

在M1 Max上运行Kimi K3 -- Running Kimi K3 on a M1 Max

文章摘要

该文章介绍了一个名为Deltafin的研究项目,在配备64GB内存的M1 Max Mac上运行拥有2.8万亿参数的Kimi K3混合专家模型,速度约为每14.6秒生成一个token。文章提供了安装步骤和两种下载模式(完整版和流式版),并说明了不同模式对磁盘空间和网络的要求。

文章总结

好的,这是根据您的要求,对原文进行中文重述和精简后的版本:

Deltafin:在Apple Silicon Mac上运行Kimi K3(2.8T参数)的实验

Deltafin是一个小型研究项目,旨在让一个远超其所在机器规模的混合专家模型(MoE)得以运行。目前,在一台64GB内存的M1 Max Mac上,其运行速度中位数约为每秒0.0687个token(即每token耗时14.6秒)。所有已公布的数据均来自这台初代M1 Max机器,而非更新的Max或Ultra芯片。该项目通过自动内存预算管理和能力门控路径,使其引擎也能在更新的Apple Silicon Mac上运行。

安装与运行

安装过程只需三个命令,核心在于选择模型的下载模式。

  1. 环境准备:创建Python 3.12+虚拟环境,并安装必要的依赖库。
  2. 内核编译:编译一个用于加速的MXFP4融合内核。
  3. 模型下载:运行脚本下载模型,有两种模式可选:
    • 完整模式(推荐):需要约1.7TB磁盘空间,下载耗时5-10小时(可断点续传)。下载后推理速度最快,在M1 Max上中位速度为每token 14.6秒。推理时无需网络。
    • 流式模式:仅需约215GB磁盘空间,下载约30分钟。推理时需从网络按需获取专家数据,速度较慢(约每token 3分钟以上)。

两种模式的核心区别在于:每个token都需要读取约25.8GB的专家数据。从本地磁盘读取约需4秒,而从网络读取则需要数分钟。

使用方式

  • 命令行交互:通过kimi_run.py脚本提问或进行文本补全。生成的token会实时打印,可按Ctrl-C中断。
  • OpenAI兼容服务器:运行serve_openai.py脚本可启动一个兼容OpenAI API的服务器,支持/v1/chat/completions等接口。这意味着任何支持OpenAI API的聊天界面、SDK或编程助手,只需更改基础URL即可接入Deltafin。

重要提醒

  • 速度极慢:模型思考时间很长,一个完整的聊天回复可能需要很长时间。请将客户端的超时时间设置为小时级别,而非秒级。
  • 流式模式更慢:在流式安装模式下,由于需要从网络获取数据,推理速度会显著下降。
  • 功能限制:仅支持贪婪解码(temperaturetop_p参数会被忽略),且同一时间只能处理一个请求。

工作原理

K3模型权重总计约1.56TB,远超普通Mac的内存。其运行的关键在于,混合专家模型(MoE)每次只激活一小部分参数。

  • 常驻骨干网络:约114GB的模型核心部分(如注意力机制、共享专家等)会被下载并量化到本地,每个token按层读取并计算。
  • 路由专家:约1.45TB的82,432个路由专家。每个token,模型的路由器会从每层中挑选16个专家进行读取。完整安装模式下,所有专家都在本地;流式模式下,则按需从Hugging Face下载。

性能与预期

所有数据均基于64GB内存的初代M1 Max Mac。当前版本的性能相比早期版本有巨大提升,例如首个token的生成时间从约40分钟缩短至28秒,稳定解码速度从约20分钟/个token提升至14.6秒/个token。

解码速度目前受限于磁盘带宽,因为每生成一个token都需要重新读取约53GB的骨干网络数据。在更先进的Mac上,更高的内存带宽、更强的GPU、更快的SSD以及更大的内存(如128GB)都将带来显著的性能提升,尤其是更大的内存可以让骨干网络常驻内存,从而避免重复的磁盘读取。

技术亮点

  • I/O优化:采用合并专家获取、原始数据缓存、并行专家读取和双缓冲层加载等技术,大幅减少了数据读取时间。
  • 计算优化:开发了融合的MXFP4反量化与矩阵乘法内核、模板层缓冲区复用、int8量化骨干网络、自定义Metal反量化内核等技术,提升了计算效率。
  • 解码优化:实现了N-gram推测解码,在无质量损失的前提下,通过一次前向传播生成多个token,从而提升速度。

致谢与许可

Deltafin项目借鉴了colibri、ds4/DwarfStar等开源项目的设计思路,并直接使用了Moonshot AI开源的Kimi K3模型权重和代码。Deltafin自身代码采用MIT许可,而K3模型权重则遵循Moonshot AI的许可协议。

评论总结

根据评论内容,总结如下:

主要观点与论据:

  1. 速度极慢,实用性存疑(多数评论认可)

    • 评论1、2、7、13、16指出速度极低,如“under 0.02 tok/s”“0.01 tk/s is unusable”“~60–76 s/token”,认为这种速度无法实际使用。
    • 关键引用:
      • “under 0.02 tok/s”(lostmsu)
      • “0.01 tk/s is unusable for anything, you would wait a whole day for just 1000 token of output”(Azantys)
  2. 硬件要求高,但仍有潜力(部分评论认可)

    • 评论3、8、12提到在高端硬件(如M5 Max 128GB、4x Mac Studio 512GB)上可能实现更快速度,但成本高昂(如512GB Mac Studio约4万美元)。
    • 关键引用:
      • “Soon decent speed across two Mac Studios with 512GB of RAM”(antirez)
      • “idk how people access (soldout) and even afford 512GB RAM MacStudio's. Isn't it $40k or so?”(ALLTaken)
  3. 对本地AI未来的乐观(部分评论认可)

    • 评论17认为本地模型是未来趋势,无需依赖数据中心,但训练仍需集中资源。
    • 关键引用:
      • “Local AI on your device seems like a much more likely future to me than datacenters in space”(mindwok)
  4. 技术细节与质疑(少数评论)

    • 评论4、5、6、14、18关注存储需求(2TB NVMe)、对SSD寿命的影响、能否在ESP32运行、以及通过小模型替代的可能性。
    • 关键引用:
      • “Says it requires a 2TB disk? Must it be internal NVMe?”(als0)
      • “Does anyone else feel like the writing is on the wall for a future of local models?”(mindwok)

平衡性总结:
评论整体对项目速度持批评态度,认为当前实用性低,但认可其技术突破和本地AI的潜力。少数评论关注硬件成本、存储限制等细节,并质疑项目实际价值。