Sakhanda Wire
NVDA $213.34 -1.73% MSFT $528.18 -1.00% GOOGL $342.12 -0.60% META $682.39 -3.27% AMZN $261.82 -0.24%
← Към новините

AnyLanguageModel 1.0: Една година локални модели на платформите на Apple

AnyLanguageModel 1.0: Една година локални модели на платформите на Apple
Публикувано 20 октомври 2026 г.
Актуализация в GitHub
Миналия ноември представихме AnyLanguageModel в този блог: заместител на Foundation Models framework на Apple, който ви позволява да избирате модела и доставчика, използвани от приложението ви. Получихме обратна връзка от разработчици на приложения, които се интересуваха от локални модели, но не винаги бяха сигурни откъде да започнат. Те също искаха да избегнат допълнителната сложност при поддръжката на множество доставчици на инференция. AnyLanguageModel се роди именно от тази обратна връзка.

Локалната и хостваната инференция имат своите предимства, а и двете имат роля в изграждането на това ново поколение интелигентни приложения. Споделеният API улеснява избора на правилния модел за всяка задача.

Една година и десетки издания по-късно, AnyLanguageModel 1.0 вече е достъпен, заедно със swift-huggingface 1.0 и swift-xet 1.0.

Ето какво се промени и какво предстои:

Съвместим API за директна замяна

Основната идея на AnyLanguageModel остава същата: използвайте API на Foundation Models с модела, който най-добре отговаря на приложението ви. За да започнете, променете оператора import:

- import FoundationModels
+ import AnyLanguageModel

След това същият код за сесия работи със системния модел, с модели с отворени тегла чрез llama.cpp, MLX и Core ML, както и с хостваните доставчици по-долу.

През изминалата година добавихме няколко основни функции:

  • Извикването на инструменти работи с всеки доставчик.
  • Насоченото генериране също работи с всеки доставчик, включително вложени типове @Generable и масиви от тях.
  • Поддръжката на изображения ви позволява да прикачвате изображения към подсказки чрез синтаксиса на Foundation Models 27, включително когато използвате системния модел в iOS, macOS и visionOS 27.

В OS 27 AnyLanguageModel работи и с всеки модел, който отговаря на протокола LanguageModel на Foundation Models, включително модели на Core AI.

Успоредно с AnyLanguageModel разработихме swift-huggingface и swift-xet, за да предоставим ускорено изтегляне на модели от Hub към Swift приложения.

И хоствани модели

Тази година разширихме и поддръжката на хоствани модели. AnyLanguageModel вече поддържа:

  • API-тата Chat Completions и Responses на OpenAI
  • Open Responses, за всеки доставчик със съвместима крайна точка
  • Messages API на Anthropic, с адаптивно мислене и опции за усилие
  • Gemini API на Google
  • Ollama
  • Private Cloud Compute в OS 27
  • Hugging Face Inference Providers, както и други съвместими с OpenAI крайни точки като OpenRouter, чрез персонализиран базов URL адрес

С Inference Providers можете да използвате модели с отворени тегла, които са твърде големи за изпълнение на устройството, със същия код за сесия:

let model = OpenAILanguageModel(
    baseURL: URL(string: "https://router.huggingface.co/v1/")!,
    apiKey: ProcessInfo.processInfo.environment["HF_TOKEN"]!,
    model: "openai/gpt-oss-120b",
    apiVariant: .chatCompletions
)

Хостваните доставчици получават същите функции като локалните модели: насочено генериране, извикване на инструменти със стрийминг и използване на токени в отговорите.

Разсъждението вече също е част от транскрипцията. Когато сменяте доставчика, блоковете с разсъждения автоматично се пропускат от заявките, ако новият доставчик не може да ги възпроизведе.

API ключовете идват от затваряне вместо от низ, така че приложението ви може да извлича краткотрайни токени от собствения ви сървър. README файлът обяснява кога да позволите на хората да използват собствените си ключове и кога да насочвате заявките през прокси.

AnyLanguageModel работи и под Linux, така че същият код може да работи на сървър.

Моделите с отворени тегла станаха по-добри

Докато улеснявахме използването на локални модели, самите модели станаха по-способни, което прави малките модели добро начало. Ето някои от най-изтегляните модели в Hub в момента:

  • Gemma 4 E2B от Google, в GGUF, около 3,4 GB при Q4_0 с обучение, съобразено с квантизацията.
  • LFM2.5 2.6B от Liquid AI, в GGUF, около 1,7 GB при Q4_K_M.
  • Qwen3.8 27B за MLX от Alibaba, около 16 GB при 4 бита.

Първите два модела се побират на iPhone, а Qwen3.8 27B работи на Mac с 32 GB памет или повече. Избирането на MLX модела изисква един ред:

let model = MLXLanguageModel(modelId: "mlx-community/Qwen3.8-27B-4bit")

А ако разполагате с четири напълно оборудвани Mac Studio, GLM-5.3 от Z.ai заема около 1,5 TB в BF16. За всички останали той се предлага чрез Inference Providers.

Надграждане до 1.0

dependencies: [
    .package(
        url: "https://github.com/huggingface/AnyLanguageModel",
        from: "1.0.0",
        traits: ["MLX"]
    )
]

Ако надграждате съществуващо приложение, вижте указанията за миграция в бележките към изданията на AnyLanguageModel, swift-huggingface и swift-xet, за помощ при актуализирането на кода ви.

Обратната връзка и приносът на общността оформиха няколко от основните ни функции. Благодарим на всички, които допринесоха, за това, че помогнаха да направим AnyLanguageModel по-полезен за разработчиците на приложения.

Какво предстои

Езиковите модели се доказаха като мощен инструмент за изграждане на интелигентност в продуктите. Те са и един от многото видове модели, които разработчиците могат да използват. Вълнуваме се да приложим същия подход към още възможности: познати Swift API с избор от модели, работещи на устройството. Очаквайте скоро: модели, които вземат решения, и модели, които слушат.

Връзки

Модели, споменати в тази статия 4

Общност

Качвайте изображения, аудио и видеоклипове чрез плъзгане в текстовото поле, поставяне или щракване тук.
Докоснете или поставете тук, за да качите изображения

· Регистрирайте се или влезте, за да коментирате

Модели, споменати в тази статия 4

Преведено автоматично от английски. Оригиналната статия е на връзката по-долу.

Първоначално публикувано от Hugging Face на

Прочетете оригинала в Hugging Face ↗

Текстът и изображенията са собственост на Hugging Face и са възпроизведени тук с посочване на авторството и връзка към оригиналната публикация.

← Към новините

Още новини

Всички последни новини