AnyLanguageModel: Apple プラットフォーム向け統合 LLM API

AnyLanguageModel はローカルおよびリモートの LLM に対する統合インターフェースを提供します

Hugging Face は、Apple プラットフォームアプリケーションへの Large Language Models (LLM) の統合の摩擦を軽減するために設計された Swift パッケージ AnyLanguageModel の発表を行いました。このライブラリは、Apple の Foundation Models フレームワークのドロップイン置換として機能し、1 つの import 文を変更するだけでローカルのオープンソースモデルとクラウドベースのフロンティアモデル間を切り替えることができ、同じ API を維持します。

多様なモデルプロバイダーのサポート

AnyLanguageModel は、一貫したインターフェースを通じて幅広いバックエンドを使用できるように開発者を支援します。このアプローチにより、迅速な実験が可能になり、ユースケースが検証された後にクラウドプロバイダーからローカルモデルへ移行できます。

サポートされているプロバイダーには次のものがあります:

  • Apple Foundation Models: macOS 26+ および iOS 26+ 向けのネイティブ統合
  • Local Inference: Core ML (Neural Engine アクセラレーション)、MLX (Apple Silicon 最適化)、llama.cpp (GGUF モデル)、および Ollama (HTTP API) のサポート
  • Cloud Providers: OpenAI、Anthropic、および Google Gemini との統合
  • Hugging Face Inference Providers: Hugging Face を介して数百のクラウドモデルにアクセス

Apple の Foundation Models に基づく API 設計

AnyLanguageModel は、新しい抽象を作成する代わりに、Apple の Foundation Models フレームワークをベースの API テンプレートとして使用します。この設計選択は、以下の 3 つの主な理由によるものです。

  1. Ergonomics: 既存のフレームワークは、Swift マクロと抽象を活用し、セッション、ツール、および生成のために LLM 機能に適切にマッピングします。
  2. Low Conceptual Overhead: Apple プラットフォームを対象とするほとんどの Swift 開発者は Foundation Models API に遭遇するため、その上に構築することで学習曲線が低減されます。
  3. Stability: 「最小公約数」アプローチを使用することで、開発者が解決しようとしている問題から距離を置くような過剰な抽象化の層を避けることができます。

Swift 6.1 パッケージトレイトによる依存関係管理の最適化

依存関係の肥大化を防ぐため、AnyLanguageModel は Swift 6.1 パッケージトレイトを利用します。これにより、開発者は必要な特定のバックエンドのみをオプトインでき、プロジェクトに不要な重い依存関係が取り込まれることを防ぎます。

利用可能なトレイトには CoreMLMLX、および Llama(llama.cpp / llama.swift 用)が含まれます。デフォルトでは、パッケージはベース API とクラウドプロバイダーを含み、これらは標準の URLSession ネットワークのみに依存します。

ビジョン言語モデルの拡張機能

Apple の現在の Foundation Models フレームワークはプロンプトとともに画像を送信することをサポートしていませんが、AnyLanguageModel はビジョン言語モデル (VLM) をサポートするように API を拡張します。これにより、開発者は Claude などの互換性のあるモデルに画像を送信し、画像の説明、スクリーンショットからのテキスト抽出、チャート分析などのタスクを実行できます。

ロードマップと今後の開発

AnyLanguageModel は現在プレ-1.0 状態です。コア API は安定していますが、プロジェクトはすべてのアダプターに以下の機能を提供するために積極的に作業を進めています。

  • Tool calling: すべてのプロバイダーにわたる
  • MCP integration: ツールと elicitations のための
  • Guided generation: 構造化された出力のための
  • Performance optimizations: ローカル推論のための

目標は、Apple プラットフォーム上でシームレスなエージェントワークフローを構築するために必要な足場を提供することです。ここで、モデルはシステムリソースにアクセスし、ツールを利用して複雑なタスクを完了できます。

Sources