术语表 / 它怎样听你说话

MLX

又称:Apple MLX、MLX框架

更新于

定义

MLX是一个面向Apple芯片的开源机器学习数组框架,由Apple的机器学习研究团队开发。许多语言模型和语音模型都借助它在Mac自身的芯片上运行。

如果你为Mac下载的模型名称以MLX结尾,或者它来自某个MLX模型合集,意思就是:它的权重已被转换为这个框架能读取的格式。

MLX是给开发者和研究人员用的工具,不是为了使用某个App而需要安装的东西。使用它的App会把它内置在里面。它以MIT许可证发布,第一个公开版本出现在2023年底。

为什么它适合Mac

Apple的介绍指出了它与其他框架的一个不同之处:统一内存模型。在Apple芯片上,处理器和图形芯片共享同一个内存池。MLX数组就存放在这块共享内存中,所以计算可以在两者之间转移,而无需来回复制数据。

在大多数其他电脑上,显卡有自己独立的内存,模型必须装得进去。在Mac上,模型可以使用整台电脑的内存,所以笔记本电脑能运行原本需要独立显卡的模型。

它在什么硬件上运行

Apple的文档说,运算可以在CPU和GPU上运行。文档没有列出神经网络引擎。要在Mac上安装它,需要Apple芯片和macOS 14或更高版本。

同一份文档现在也介绍了适用于Linux的版本,其中包括一个适用于Nvidia显卡的版本,所以MLX已不再只用于Apple硬件。但它仍是围绕Apple芯片设计的。

MLX系列

MLX本身只处理数组以及数组上的运算。大多数人接触到的是构建在它之上的软件包。

  • MLX LM,来自Apple的同一团队,用于借助大语言模型生成文本,以及对这些模型进行微调。
  • MLX Whisper,来自Apple的示例,用于借助Whisper进行语音识别。
  • MLX Swift,让用Swift编写的Mac或iPhone App直接使用MLX。
  • 用于音频和语音的社区库,它们构建在MLX之上,但不是Apple开发的。

MLX模型与量化

MLX合集中的模型名称常以4bit或8bit结尾。这就是量化:每个权重用更少的位数存储,让下载更小、模型占用的内存更少,代价是损失一些准确度。MLX工具可以在转换模型时生成这些版本。

MLX与Core ML

Apple有两个在其设备上运行模型的框架,用途各不相同。Apple将MLX描述为一个开源数组框架,用于在Apple芯片上试验、训练和微调生成式模型。它将Core ML描述为把机器学习模型集成到App中的方式。

实际上,许多App两者都用:Core ML用于适合神经网络引擎的模型,MLX用于在图形芯片上运行的大型语言模型或语音模型。

大家常问的问题。

MLX代表什么?

Apple没有给出全称。它将MLX描述为面向Apple芯片的机器学习数组框架。

MLX能在搭载Intel处理器的Mac上运行吗?

不能。在Mac上,Apple的文档要求Apple芯片和macOS 14或更高版本。

MLX会使用神经网络引擎吗?

Apple的文档说MLX运算在CPU和GPU上运行。文档没有列出神经网络引擎。

MLX是免费的吗?

是的。它以MIT许可证开源。

使用基于MLX构建的App,需要先安装MLX吗?

不需要。使用MLX的App已经包含了它。自己安装MLX是为了编写代码,或者从命令行运行模型。

什么是MLX模型?

权重已被转换为MLX可读取格式的模型,通常量化为4位或8位,以便轻松装进Mac的内存。

相关术语

你的声音一直都更快。

免费试用7天,之后$19 USD买断。无需账户,无需订阅,不上传任何内容。

macOS 14或更高版本 · Apple芯片