waybarrios/vllm-mlx
High-performance OpenAI and Anthropic compatible LLM inference server for Apple Silicon. Native MLX, continuous batching, multimodal models, MCP tool calling, and Claude Code support.
vllm‑mlx – Apple Silicon 上での高スループット LLM サービング
何であるか
- MLX フレームワークと Metal カーネルを使用して、Apple Silicon GPU 上で大規模言語モデル(およびマルチモーダルモデル)を直接実行する、vLLM 風の即時インストール型推論サーバー。
- オリジナルの vLLM プロジェクトの多数のパフォーマンス最適化(連続バッチ処理、ページ化 KV キャッシュ、プレフィックス共有、オプションの SSD ベースキャッシュ)をバンドルしており、多数の同時リクエストを低遅延で処理可能。
- OpenAI互換(
/v1/chat/completions,/v1/completions,/v1/embeddingsなど)および Anthropic互換(/v1/messages)REST API を提供し、既存のクライアントライブラリを変更せずに利用可能。
なぜ重要か
- Apple の M シリーズチップは強力な GPU コアを持つが、多くのオープンソース LLM サーバーは CUDA をターゲットとしている。vllm‑mlx により、モデルを他の形式に変換せずに、ネイティブな Metal バックエンドを活用できる。
- 連続バッチ処理とページ化 KV キャッシュは、特に長文コンテキストやマルチターンチャットのシナリオでスループットとメモリ使用量を大幅に改善する。
- ビジョン、オーディオ、埋め込みの組み込みサポートにより、単一プロセスでテキスト専用 LLM、ビジョン言語モデル、音声認識(STT)、音声合成(TTS)、ベクトル検索埋め込みをすべて提供可能。
主な機能(README に記載)
| カテゴリ | ハイライト |
|---|---|
| API | OpenAI互換エンドポイント(/v1/*)、Anthropic /v1/messages、19種類のモデルファミリー向けツールコールパーサー、JSONスキーマベースの構造化出力。 |
| パフォーマンス | 連続バッチ処理、ページ化 KV キャッシュ、プレフィックスキャッシュ、オプションの SSD タイアード KV キャッシュ、ウォームプロンプトプリロード(1.3–2.25倍高速な初トークン)、MoE top-k削減、推測的デコード、スパースプレフィル。 |
| マルチモーダル | ビジョンモデル(Gemma 3/4、Qwen3‑VL、Pixtral、Llama‑vision)、画像/動画/オーディオ入力、ネイティブ TTS(11音声、15+言語)および STT(Whisperファミリー、M4 Maxで最大197×リアルタイム)。 |
| 高度な推論 | 推論抽出パーサー、MoEエキスパート削減、推測的デコード、アテンションベースプレフィル。 |
| 可観測性 | Prometheusメトリクスエンドポイント、ビルトインベンチマーカ CLI(vllm‑mlx bench‑serve)。 |
| ハードウェア | Apple Silicon(M1–M5)専用、MLX/Metal経由、統合メモリ、モデル変換ステップ不要。 |
一般的なワークフロー
- インストール –
pip install vllm-mlx(またはuv tool install vllm-mlx)。オプションのオーディオ機能はpip install vllm-mlx[audio]で追加。 - サーバー起動 – 例:
vllm-mlx serve mlx-community/Llama-3.2-3B-Instruct-4bit --port 8000 --continuous-batching。 - 呼び出し – OpenAI Python SDK または Anthropic SDK を
http://localhost:8000/v1に接続(APIキー不要)。READMEには最小限のチャット例とリランキング用curl例が記載。 - オプション機能 – ウォームプロンプトロード、SSDキャッシュディレクトリ、MoE top-k、推測的デコード、ツールコール、マルチモーダルペイロード、TTS/STTユーティリティ、埋め込みモデルなど。
パフォーマンス数値(M4 Max、128 GB)
- LLMデコード速度:0.6 B 8ビットモデルで最大約418トークン/秒、3 B 4ビットモデルで約206 t/s、30 B 4ビット MoEモデルで約128 t/s。
- 音声認識(STT):Whisper‑tiny で197×リアルタイム、Whisper‑large‑v3‑turbo で55×、Whisper‑large‑v3 で24×。
利用シーン
- クラウドGPUを必要とせずに、MacBook上でLLM駆動アプリのローカル開発。
- 単一の統合APIを必要とするマルチモーダルエージェント(テキスト+画像+音声)のプロトタイピング。
- Appleハードウェア上で機密データのプライベート・オフライン推論を実行。
- 非CUDA GPU上で連続バッチ処理およびKVキャッシュ戦略のベンチマークと研究。
インストールと導入
# 推奨:uv インストール(システムワイド CLI)
uv tool install vllm-mlx
# または仮想環境での pip
pip install vllm-mlx
# オーディオ拡張機能
pip install vllm-mlx[audio]
brew install espeak-ng # 非英語TTSに必要
完全なドキュメントは https://vllm-mlx.is-a.dev/ にホストされており、サーバー設定、マルチモーダル利用、ベンチマーク、モデル取得のステップバイステップガイドを含む。
ライセンスとコミュニティ
- Apache 2.0 オープンソースライセンス。
- Wayner Barrios と MLXコミュニティが積極的にメンテナンス中;貢献歓迎(バグ修正、パフォーマンス改善、新しいベンチマークなど)。
要するに、vllm‑mlx は vLLM の高スループットサーバー機能を Apple Silicon に持ち込み、馴染み深い OpenAI/Anthropic API を提供しながら、テキスト、ビジョン、オーディオ、埋め込みをすべてMacエコシステム内に留めたままサポートする。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト