huggingface/AnyLanguageModel
An API-compatible, drop-in replacement for Apple's Foundation Models framework with support for custom language model providers.
解決する課題
AnyLanguageModelは、AppleのFoundation Modelsフレームワークのドロップイン代替として機能するSwiftパッケージです。これにより、開発者はオンデバイスとクラウドベースの両方で、さまざまなカスタム言語モデルプロバイダーを一貫したAPIで使用でき、ベンダーロックインを減らし、異なるLLMバックエンドの統合を簡素化できます。
仕組み
import FoundationModels ステートメントを import AnyLanguageModel に置き換えるだけで、開発者はさまざまなプロバイダーにアクセスできます。このライブラリはSwift 6.1のトレイトを使用して、Core ML、MLX、llama.cppなどの重い依存関係を条件付きで含めるため、最終的なバイナリには必要なバックエンドのみが含まれ、ビルド時間とビルドサイズを小さく保ちます。
対象読者
iOS、macOS、visionOS、またはLinux向けに開発するSwift開発者で、ローカルのオンデバイスモデルとクラウドAPIの両方をサポートする統一インターフェースを使用して、LLMをアプリケーションに統合したい方。
ハイライト
- 幅広いプロバイダーサポート: Apple Foundation Models、Core ML、MLX、llama.cpp、Ollama、Anthropic、Google Gemini、OpenAIをサポート。
- ガイド付き生成:
@Generableと@Guideを使用して強く型付けされた出力を有効にし、手動の文字列解析を回避。 - ツール呼び出し: すべてのプロバイダーにわたる包括的なツール呼び出しサポート。実行を監視または制御するデリゲートシステムを含む。
- マルチモーダル機能: さまざまなプロバイダー(モデルがサポートする場合)での画像入力のサポート。
- 推論サポート: 最終回答とは別に推論セグメントをキャプチャして表示する機能。Anthropicの思考モデルと特別に統合。
- トークン追跡: さまざまなプロバイダーにわたる入力、出力、キャッシュ、推論トークンの詳細な追跡。
関連
- Dispatch
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト