ml-explore/mlx-lm

Run LLMs with MLX

何を解決するか

mlx-lm は、Apple silicon上で大規模言語モデル(LLM)を簡単に実行・微調整・量子化できるように設計されています。Macのハードウェア上でLLMをローカルにデプロイする際の障壁を低減し、テキスト生成およびモデル最適化のための統合されたPythonパッケージとコマンドラインツールを提供します。

仕組み

このプロジェクトはMLXフレームワークを活用して、Apple silicon上のLLMパフォーマンスを最適化しています。Hugging Face Hubからモデルを読み込み、テキストを生成し、モデル重みを管理するためのPython APIとCLIを提供しています。主な技術的特徴は以下の通りです:

  • モデル変換と量子化:モデルを変換・量子化(例:4ビット)し、メモリ使用量を削減してHugging Face Hubに再アップロードできます。
  • メモリ管理:回転型固定サイズのキーバリュー(KV)キャッシュと、設定可能なプリフィルステップサイズを使用して、長いプロンプトを効率的に処理します。
  • プロンプトキャッシュ:長いプロンプトをキャッシュすることで、複数のクエリ間で再計算を回避できます。
  • 微調整:低ランク(LoRA)およびフルモデル微調整をサポートしており、量子化モデルも対応しています。
  • 分散計算mx.distributed を通じて分散推論および微調整を可能にします。

対象ユーザー

Apple silicon搭載のMacを使用し、LLMをローカルで実行したい、ハードウェアに最適化したい、または特定のタスク向けに微調整したい開発者や研究者です。

特徴

  • Hugging Face統合:Hugging Face Hubへの直接統合により、モデルのアクセスとアップロードが簡単です。
  • Apple Silicon最適化:Macハードウェアに特化しており、macOS 15以降での大規模モデル用メモリ接続も対応しています。
  • ローカルチャットREPL:即時的なモデルとの対話が可能な組み込みチャットインターフェースを備えています。
  • 効率的な長文処理:プロンプトキャッシュや回転型KVキャッシュなどのツールにより、長文生成へのスケーラビリティを実現しています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト