🏠 ホーム ニュース 📖 解説記事 📚 トピック解説 🏷️ タグ一覧 ℹ️ About
🔍 記事を検索
カテゴリ
📡 RSSフィード
Follow
X (Twitter) Threads
Quick Links
ニュース一覧 🏷️ タグから探す
🧠 Claude 🤖 Agent 💬 LLM 🔌 MCP 🛠️ Tool
Subscribe
📡 RSSフィード
Breaking News
2026.04.02 06:04 text-generation devops automation

Apple Silicon向けSwiftLM、TurboQuant KVキャッシュ圧縮とSSD Expert Streamingを実装

⚡ ニュース
Apple Silicon向けSwiftLM、TurboQuant KVキャッシュ圧縮とSSD Expert Streamingを実装
TL;DR
SharpAIがMLXベースの推論サーバSwiftLMを発表。M5 Pro対応のTurboQuant技術でKVキャッシュを3.5倍圧縮、122B超大型モデルをiOS/macOSで動作可能に。

何が起きたか

SharpAIがSwiftLMを発表。Apple SiliconネイティブのSwift推論サーバで、MLXモデルをOpenAI互換API経由で動作させる。最大の特徴は、TurboQuant技術を統合したKVキャッシュ圧縮(3.5倍)と、SSD Expert Streaming機能。これにより大規模言語モデルをMacBook Proで実運用可能に。Python ランタイム、GIL、不要なメモリコピー一切不要。

背景と経緯

大型言語モデルのローカル実行は、メモリ制約が大きな課題。特に「Mixture of Experts (MoE)」アーキテクチャの大規模モデルは、Unified MemoryへのスワップでmacOS Watchdog OS カーネルパニックを引き起す。従来はPython + llama.cppが標準だったが、GILによるオーバーヘッド、メモリコピーロスが無視できず。SwiftLMは「ベアメタルApple Silicon性能」を重視し、Swift + Metal Native実装で根本的に再設計された。

技術的な詳細

TurboQuant KVキャッシュ圧縮アーキテクチャ

SwiftLMはハイブリッドV2+V3 TurboQuantを実装。従来のTurboQuantは2つの路線で分裂していた:

方式 特徴 課題
V2(ハードウェア高速化版) 線形affine量子化、高速 3-bitで品質低下
V3(論文準拠版) 非線形Lloyd-Max符号帳、高品質 ソフトウェア逆量子化が遅い

SwiftLMの突破口:

  1. V3のLloyd-Max符号帳をネイティブC++符号化パスに移植
  2. 逆量子化をfused Metal シェーダーで実行 (bggml-metal)
  3. 結果:V3品質でV2速度 を実現。Python オーバーヘッド完全排除

K-Cache圧縮:3-bit PolarQuant + 1-bit QJL = 4.25 bits/dim

【K-Cache圧縮フロー】
1. L2ノルム抽出&正規化:x̂ = x / ‖x‖
2. Fast Walsh-Hadamard Transform (WHT) 回転で外れ値を分散
3. 3-bit非線形Lloyd-Max符号帳で各座標を量子化
4. 残差誤差を計算
5. Johnson-Lindenstrauss (QJL) 行列で投影、1-bit符号を格納

QJL採用理由:内積注目度スコアリング時の符号帳解像度低下を抑制するレギュライザーとして機能

V-Cache圧縮:3-bit PolarQuant = 3.125 bits/dim

V-キャッシュは注意機構のスコアリングに使用されないため、QJL補正は不要。QJLを無効化して追加25%メモリ削減を実現。

graph LR A["入力テンソル"] --> B["L2正規化"] B --> C["WHT回転"] C --> D["3-bit PolarQuant"] D --> E["K-cache: 4.25 b/d"] D --> F["残差計算"] F --> G["1-bit QJL投影"] G --> E C --> H["V-cache: 3.125 b/d"]

SSD Expert Streaming

大規模モデルのMoE層をNVMe SSDから直接GPU command bufferにストリーミング。macOS Unified Memoryスワップを完全バイパス(ゼロコピー)。Watchdog OS パニック回避。

影響範囲

テスト済みハードウェア

サポート機能

⚠️ 対応済み:MoEモデルの推論実行、OpenAI互換API経由のアクセス

主な機能

macOS サーバー機能

試してみるには

macOS サーバーの最速セットアップ(Pre-built Binary)

# 1. Releases から最新版 tarball をダウンロード
tar -xzf SwiftLM-<version>-macos-arm64.tar.gz

# 2. 解凍ディレクトリから実行(default.metallib同梱、同じディレクトリに配置必須)
./SwiftLM --model mlx-community/Qwen2.5-3B-Instruct-4bit --port 5413

ソースからビルド

# リポジトリをクローン(mlx-swift サブモジュール必須)
git clone --recursive https://github.com/SharpAI/SwiftLM
cd SwiftLM

# ビルド
swift build -c release

# default.metallib を.build/release/ に配置
cp LocalPackages/mlx-swift/Source/Cmlx/mlx/mlx/backend/metal/kernels/default.metallib \
  .build/release/

# 実行(SSD Expert Streaming 有効)
.build/release/SwiftLM \
  --model <HuggingFace-model-id> \
  --stream-experts \
  --port 5413

API テスト例

curl http://localhost:5413/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen-model",
    "stream": true,
    "messages": [
      {"role": "system", "content": "You are a helpful assistant. Output strictly in JSON format."},
      {"role": "user", "content": "Provide a JSON response with a key and a reason."}
    ]
  }'

コマンドラインオプション一覧

オプション デフォルト 説明
--model 必須 HuggingFace モデルID または ローカルパス
--port 5413 リッスンポート
--host 127.0.0.1 バインドホストアドレス
--max-tokens 2048 生成トークン上限
--gpu-layers モデルデフォルト GPU割当層数制限
--stream-experts false MoE Expert マトリクスのSSDストリーミング有効化(実験段階)

業界への影響

技術的な注意点

⚠️ Metal GPU エラー対応

Failed to load the default metallib が発生した場合、バイナリと default.metallib が同じディレクトリに있는지確認。バイナリのみ移動した場合エラーが発生。

⚠️ MLX バージョンマッチング

Pythonの mlx-metal パッケージは使用禁止。pip mlx-metal は本バイナリのコンパイル対象と異なるMLXバージョン。バージョン不一致時GPU kernel ABIが破壊され、クラッシュが発生。必ず LocalPackages/mlx-swift/Source/Cmlx/mlx/mlx/backend/metal/kernels/default.metallib を使用

参考実装・論文

今後の展望

SSD Expert Streaming は現在実験段階。今後の改善次第で、大規模モデルへの対応可能性。エッジAI活用シーンの拡大が期待される。

参考リンク


この記事はAI業界の最新動向を速報でお届けする「AI Heartland ニュース」です。

よくある質問
Q. TurboQuantKVキャッシュ圧縮とは何ですか?
大型言語モデルのKVキャッシュを約3.5倍圧縮する技術。TurboQuant技術を統合し、3-bit PolarQuantと1-bit QJLの組み合わせを使用。K-Cacheは4.25 bits/dimに圧縮されます。
Q. SSD Expert Streamingの機能と目的は?
122B超のMixture of Experts (MoE)層をNVMe SSDから直接GPU command bufferにストリーミング。macOS Unified Memoryスワップを回避し、Watchdog OS カーネルパニックを防止。ゼロコピー実装。
Q. SwiftLMはどのようなハードウェアで動作しますか?
Apple SiliconネイティブのSwift推論サーバ。テスト済みハードウェアはMacBook Proで64 GB Unified Memoryおよび内部Apple NVMe搭載の環境です。
Q. PythonやllCPPと比べた利点は何ですか?
Python ランタイム不要、Global Interpreter Lock (GIL)なし、不要なメモリコピー排除。ベアメタル Apple Silicon 性能を実現。単一バイナリで配布可能で保守が簡略化される。
🔔 AI速報、毎日Xで配信中
Claude Code・MCP・AIエージェントの最新ニュースをいち早くお届け
@peaks2314 をフォロー
🔥 Popular
#1 POPULAR
🔓 Claude Codeのソースコード流出、npmソースマップに51万行が丸見えだった件
Anthropic Claude Codeのnpmパッケージにソースマップが含まれ、1,902ファイル・51万行超のTypeScriptソースが公開状態に。未公開プロジェクト「KAIROS」や107個のフィーチャーフラグなど、内部コードの全貌を解説する。
#2 POPULAR
🚨 【速報】JavaScript主流ライブラリAxios、NPM供給チェーン攻撃でRAT配布
JavaScriptの週間1億DL HTTPクライアント「Axios」がNPM供給チェーン攻撃の被害に。[email protected]と0.30.4に悪意あるパッケージplain-crypto-jsが注入され、クロスプラットフォーム対応RATが配布。証拠自動削除機能を備えた高度な攻撃。
#3 POPULAR
⚠️ Anthropic、Claude Codeで予想外の高速クォータ枯渇認める。キャッシュバグで料金10〜20倍
Claude Codeでプロンプトキャッシュを破壊する2つのバグが発見され、API利用料が10〜20倍に跳ね上がる問題が発生。Anthropicは「チームの最優先事項」と認める。Pro/Maxユーザーから月間の大半で使用不可との報告多数。
#4 POPULAR
🔍 Claude Codeセキュリティ事件を切り分ける:ソース漏洩とaxios攻撃の違いと対処法
3月31日にClaude Codeで起きたソース漏洩とaxiosマルウェア。感染チェックコマンド・対策コードを交えて、2つの別事件の実態と具体的な対応手順を解説。
#5 POPULAR
🚀 ソフトウェア開発者ではない人が400ドルから年7M達成。AI時代の先発者優位性
AI技術を活用して短期間で大規模な収益を生み出した事例から、開発経験がなくても可能な起業の実態と、AI知識の先発者優位性について解説する。
← StepFun 3.5 Flashが最高コスパ 300回の戦闘でOpenClaw最強に Google、オープンモデル「Gemma 3」とセーフティチェッカー「ShieldGemma 2」をリリース →