AnyLanguageModel 是一个 Swift 包,为苹果平台上的大型语言模型提供统一 API。它作为苹果 Foundation Models 框架的替代品,支持多种模型提供商,包括本地和云端选项。该工具旨在减少开发者在集成 LLM 时的摩擦,并促进本地开源模型的采用。
AnyLanguageModel 的核心设计理念是保持与苹果 Foundation Models 相同的 API,开发者只需替换导入语句即可。例如,从导入 FoundationModels 改为导入 AnyLanguageModel。这允许开发者使用相同的代码结构来调用不同提供商的模型。
该工具支持多种提供商,包括苹果 Foundation Models、Core ML、MLX、llama.cpp、Ollama、OpenAI、Anthropic、Google Gemini 和 Hugging Face 推理提供商。重点放在可以从 Hugging Face Hub 下载的本地模型上,云端提供商则用于降低入门门槛和提供迁移路径。
在设计 AnyLanguageModel 时,团队选择基于苹果的 Foundation Models 框架作为模板,因为它设计良好,利用了 Swift 特性如宏来提供良好的开发者体验,并且其抽象层适合扩展。