用語集 / どう聞き取るか

MLX

別名:Apple MLX、MLXフレームワーク

更新日:

定義

MLXは、Apple siliconで機械学習を行うためのオープンソースの配列フレームワークで、Appleの機械学習研究チームが作っています。多くの言語モデルや音声モデルが、Macのチップ上で動くのに使っています。

Mac用にダウンロードしたモデルの名前がMLXで終わっていたり、MLXモデルのコレクションから入手したものだったりする場合は、重みがこのフレームワークで読める形式に変換されている、という意味です。

MLXは開発者や研究者のためのツールで、Appを使うためにインストールするものではありません。MLXを使うAppは、内部にMLXを含んでいます。MITライセンスでリリースされていて、最初の公開版は2023年末に登場しました。

Macに向いている理由

Appleの説明では、ほかのフレームワークとの違いとして、ユニファイドメモリモデルが挙げられています。Apple siliconでは、プロセッサとグラフィックスチップが1つのメモリを共有しています。MLXの配列はその共有メモリ上にあるので、データを行き来させてコピーすることなく、2つのあいだで処理を移せます。

ほかの多くのコンピュータでは、グラフィックスカードが独自の別のメモリを持っていて、モデルはそこに収まる必要があります。Macではマシン全体のメモリをモデルが使えるので、本来なら専用のカードが必要なモデルもノートパソコンで動かせます。

動作する環境

Appleのドキュメントによると、演算はCPUとGPUで実行できます。Neural Engineは挙げられていません。Macにインストールするには、Apple siliconとmacOS 14以降が必要です。

同じドキュメントでは現在、Linux向けのビルドも説明されていて、その中にはNVIDIAのグラフィックスカード向けのものもあります。つまりMLXはもうApple製ハードウェア専用ではありません。それでも、設計の中心はApple siliconです。

MLXのファミリー

MLX自体が扱うのは、配列とその演算だけです。多くの人が実際に触れるのは、その上に作られたパッケージです。

  • MLX LM:Appleの同じチームによるもので、大規模言語モデルでテキストを生成したり、ファインチューニングしたりするためのパッケージ。
  • MLX Whisper:Appleのサンプルにあるもので、Whisperで音声認識を行うためのパッケージ。
  • MLX Swift:Swiftで書かれたMacやiPhoneのAppから、MLXを直接使えるようにするパッケージ。
  • 音声や話し言葉のためのコミュニティライブラリ:MLXを土台にしていますが、Apple製ではありません。

MLXモデルと量子化

MLXのコレクションにあるモデルの名前は、よく4bitや8bitで終わっています。これが量子化です:重み1つあたりのビット数を減らして保存することで、ダウンロードが小さくなり、メモリの負担も軽くなりますが、精度はいくらか下がります。MLXのツールは、モデルを変換するときにこうしたビルドを作れます。

MLXとCore ML

Appleには、デバイス上でモデルを動かすフレームワークが2つあり、用途が違います。AppleはMLXを、Apple silicon上で生成モデルを試したり、学習させたり、ファインチューニングしたりするためのオープンソースの配列フレームワークと説明しています。Core MLは、機械学習モデルをAppに組み込むための手段と説明しています。

実際には、両方を使うAppも多くあります。Neural Engineに向いたモデルにはCore MLを、グラフィックスチップで動く大きな言語モデルや音声モデルにはMLXを使う、という形です。

よくある質問。

MLXは何の略?

Appleは正式な名称を示していません。MLXを、Apple siliconで機械学習を行うための配列フレームワークと説明しています。

MLXはIntelベースのMacで使える?

いいえ。Macでは、Appleのドキュメントの要件はApple siliconとmacOS 14以降です。

MLXはNeural Engineを使う?

Appleのドキュメントによると、MLXの演算はCPUとGPUで実行されます。Neural Engineは挙げられていません。

MLXは無料?

はい。MITライセンスのオープンソースです。

MLXで作られたAppを使うのに、MLXをインストールする必要はある?

いいえ。MLXを使うAppは、MLXを含んでいます。自分でMLXをインストールするのは、コードを書いたり、コマンドラインからモデルを動かしたりする場合です。

MLXモデルとは?

MLXで読める形式に重みが変換されたモデルです。Macのメモリに無理なく収まるよう、4ビットや8ビットに量子化されていることがよくあります。

関連用語

いつだって、声のほうが速かった。

7日間無料、その後は$19 USDの買い切り。アカウント不要、サブスクリプションなし、アップロードなし。

macOS 14以降 · Apple silicon