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 від 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.

В ОС 27 AnyLanguageModel також працює з будь-якою моделлю, що відповідає протоколу LanguageModel Foundation Models, зокрема з моделями Core AI.

Паралельно з AnyLanguageModel ми розширили можливості swift-huggingface і swift-xet, щоб забезпечити прискорене завантаження моделей із Hub у застосунки Swift.

Також хостовані моделі

Цього року також розширилася підтримка хостованих моделей. Тепер AnyLanguageModel підтримує:

  • API Chat Completions і Responses від OpenAI
  • Open Responses для будь-якого постачальника із сумісною кінцевою точкою
  • API Messages від Anthropic, з адаптивним мисленням і параметрами зусиль
  • API Gemini від Google
  • Ollama
  • Private Cloud Compute в ОС 27
  • Inference Providers від Hugging Face та інші сумісні з 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 ГБ при Q4_0 із квантизаційно-орієнтованим навчанням.
  • LFM2.5 2.6B від Liquid AI, у форматі GGUF, близько 1,7 ГБ при Q4_K_M.
  • Qwen3.8 27B для MLX від Alibaba, близько 16 ГБ при 4 бітах.

Перші дві моделі поміщаються на iPhone, а Qwen3.8 27B працює на Mac із 32 ГБ пам’яті або більше. Вибір моделі MLX займає один рядок:

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

А якщо у вас під рукою є чотири максимально оснащені Mac Studio, GLM-5.3 від Z.ai займає близько 1,5 ТБ у 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 кориснішим для розробників застосунків.

Що далі

Мовні моделі довели, що є потужним інструментом для додавання інтелекту до продуктів. Вони також є лише одним із багатьох типів моделей, які розробники можуть використовувати. Ми раді застосувати той самий підхід до ширшого спектра можливостей: знайомі API Swift із можливістю вибору моделей, що працюють на пристрої. Незабаром: моделі, які приймають рішення, і моделі, які слухають.

Посилання

Моделі, згадані в цій статті 4

Спільнота

Завантажуйте зображення, аудіо та відео, перетягуючи їх у поле введення тексту, вставляючи або натискаючи тут.
Торкніться або вставте сюди, щоб завантажити зображення

· Зареєструйтеся або увійдіть, щоб залишити коментар

Моделі, згадані в цій статті 4

Перекладено автоматично з англійської. Оригінал статті — за посиланням нижче.

Вперше опубліковано виданням Hugging Face

Читати оригінал на Hugging Face ↗

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

← До новин

Ще новини

Усі останні новини