Eszközök

Mesterséges intelligenciával generált szöveg

AnyLanguageModel 1.0: egységes API helyi és hosztolt nyelvmodellekhez Apple platformokon

Az AnyLanguageModel 1.0 fejlesztői keretrendszer egy év fejlesztés után egységes, drop-in kompatibilis API-t kínál az Apple Foundation Models helyett, lehetővé téve, hogy az alkalmazások a számukra legmegfelelőbb modellt és szolgáltatót használják.

AnyLanguageModel 1.0: egységes API helyi és hosztolt nyelvmodellekhez Apple platformokon

Tavaly novemberben mutatták be az AnyLanguageModelt mint a Foundation Models keretrendszer helyettesítőjét, amely lehetővé teszi, hogy az alkalmazásfejlesztők tetszőleges modellt és szolgáltatót válasszanak. A fejlesztők visszajelzéseire reagálva jött létre az AnyLanguageModel: sokan érdeklődtek a helyi modellek iránt, ugyanakkor nem akarták a többszörös inferencia-szolgáltatók kezelésének többletkomplexitását.

A 1.0 kiadás

Egy év és több tucat kiadás után AnyLanguageModel 1.0 most elérhető, párhuzamosan a swift-huggingface 1.0 és a swift-xet 1.0 csomagokkal. A fő koncepció változatlan: ugyanazt a Foundation Models API-t használhatja az alkalmazás, de tetszőleges modellre irányítva. A migráció egyszerű: elegendő az import utasítást átírni FoundationModels-ról AnyLanguageModel-re, és a meglévő session-kód azonnal működik a rendszer modellel, helyi open-weight modellekkel (llama.cpp, MLX, Core ML), illetve a támogatott hosztolt szolgáltatókkal.

Főbb új funkciók

  • Tool calling minden támogatott szolgáltatónál működik.
  • Guided generation szintén elérhető minden szolgáltatónál, beleértve a beágyazott @Generable típusokat és ezek tömbjeit.
  • Képek csatolása promptokhoz a Foundation Models 27 szintaxisával: ez működik a rendszer modellnél iOS, macOS és visionOS 27 alatt.
  • OS 27-en bármi, ami megfelel a Foundation Models LanguageModel protokollnak (például Core AI modellek), használható az AnyLanguageModel-lel.

Gyorsabb letöltések és hosztolt modellek

A swift-huggingface és a swift-xet kiegészítők gyorsabb, Hub-ról történő modellletöltést biztosítanak Swift alkalmazások számára. A hosztolt modellek támogatása is bővült: az AnyLanguageModel 1.0 támogatja többek között

  • OpenAI Chat Completions és Responses API-kat,
  • Open Responses kompatibilis végpontokkal,
  • Anthropic Messages API-t adaptív beállításokkal,
  • Google Gemini API-t,
  • Ollama Private Cloud Compute-ot OS 27-en,
  • Hugging Face Inference Provider-eket, valamint OpenAI-kompatibilis végpontokat (például OpenRouter) egyedi base URL-lel.

Az Inference Provider-ek lehetővé teszik, hogy a készüléken túl nagy, „open-weight” modelleket ugyanazzal a session-kóddal használjon a fejlesztő. A hosztolt szolgáltatók ugyanazokat a funkciókat kapják meg, mint a helyi modellek: guided generation, eszközhívás streaminggel, és token használat mérése a válaszoknál. A logikai következtetés (reasoning) részei immár a tranzkriptumban is benne vannak; ha szolgáltatót vált az alkalmazás, a rendszer automatikusan kihagyja azokat a reasoning blokkot, amelyeket az új szolgáltató nem képes visszajátszani.

API kulcsok és biztonság

A kulcsok beszerzése most closure-ön keresztül történik ahelyett, hogy statikus stringként lennének átadva; ez megkönnyíti a rövid életű tokenek szerveroldali kiadását. A README és a kiadási megjegyzések részletezik, mikor érdemes a felhasználó által hozott kulcsokat engedni, és mikor érdemes kérés-továbbítót (proxy) használni.

Linux és nagyobb modellek

AnyLanguageModel mostantól Linuxon is fut, így ugyanaz a kód futtatható szerveroldalon is. A helyi modellek képességei is javultak: több, a Hubon jelenleg nagyon letöltött modell ma már kisebb helyet foglal vagy hatékonyabban quantizált. Példák:

  • Gemma 4 E2B (Google) GGUF formátumban, körülbelül 3,4 GB, Q4_0 kvantálással és kvantálás-tudatos tréninggel.
  • LFM2.5 2.6B (Liquid AI) GGUF-ben, kb. 1,7 GB, Q4_K_M kvantálással.
  • Qwen3.8 27B for MLX (Alibaba), nagyjából 16 GB 4 bites verzióban.

Az első két modell elfér egy iPhone-on, a Qwen3.8 27B pedig Macen fut, ha a gépben legalább 32 GB memória van. MLX modell kiválasztása egyszerűen egy sor kóddal történik. Nagyobb modellek, mint a GLM-5.3 (Z.ai) BF16 formátumban több száz gigabájtokban mérhetők (például ~1,5 TB), ezért ezekhez az Inference Provider-ek adnak elérhetőséget a legtöbb felhasználónak.

Frissítés és közösségi hozzájárulás

A 1.0-s csomagokra frissítéshez a dependency megadása mellett a kiadási megjegyzések és a migrációs útmutatók segítenek a kódfrissítésben. A cikk kiemeli, hogy a közösségi visszajelzések és hozzájárulások több nagy funkció kialakulását formálták — a szerzők köszönetet mondtak minden közreműködőnek.

Mi következik?

A fejlesztők szerint a nyelvi modellek erős eszközzé váltak a termékek intelligens viselkedésének kiépítésében, de csak egyike a használható modelleknek. A jövőbeli tervek között szerepel, hogy hasonló megközelítéssel további képességeket tegyenek elérhetővé natív Swift API-kon keresztül: hamarosan érkeznek „döntést hozó” modellek és halló (listening) modellek is.

Központi GitHub projektek és források: AnyLanguageModel, swift-huggingface és swift-xet GitHub tárak, valamint az eredeti bejelentő bejegyzések és a README-k a további részletekért.