Foundation Models na Private Cloud Compute
Model Foundation Model działający na urządzeniu doczekał się rodzeństwa. iOS 27 wyposaża framework w model w skali serwerowej, który działa na Private Cloud Compute, z oknem kontekstowym o pojemności 32K i rozumowaniem, a sięga się po niego, zmieniając jedną linię kodu1. Ta sama LanguageModelSession, ten sam Generable, ten sam protokół Tool4. Większy ruch kryje się pod spodem: Apple otworzyło framework na niemal dowolny LLM za pośrednictwem publicznego protokołu, dzięki czemu model na urządzeniu, model w chmurze, lokalny model, który dostarczasz, model open source z Hugging Face, a wkrótce Claude i Gemini — wszystkie odpowiadają na to samo Swift API2. Przestajesz pisać kod pod konkretny model, a zaczynasz pisać kod pod gniazdo, które można wymienić.
Ten wpis stanowi warstwę chmury i dostawców nadbudowaną na materiale referencyjnym o frameworku. Jeśli nie poznałeś jeszcze LanguageModelSession, protokołu Tool ani generowania sterowanego, zacznij od omówienia frameworka Foundation Models oraz od wpisu o wywoływaniu narzędzi w iOS 27, a potem wróć tutaj.
TL;DR
- Private Cloud Compute wprowadza do frameworka Foundation Models większy model serwerowy, przełączalny poprzez zmianę jednej linii względem modelu na urządzeniu. Oferuje okno kontekstowe 32K wobec 4K na urządzeniu, obsługuje rozumowanie na trzech poziomach i działa z iOS, macOS, visionOS oraz watchOS12.
- Podejście do prywatności odpowiada temu z modelu systemowego: Apple zaprojektowało PCC tak, aby dane użytkownika nigdy nie były przechowywane i były wykorzystywane wyłącznie na potrzeby danego żądania, co niezależnie zweryfikowali badacze; bez kluczy API, bez konfiguracji konta i bez kosztu tokenów dla dewelopera1.
- Każdy użytkownik otrzymuje dzienny limit żądań naliczany na poczet jego konta iCloud, który można podnieść poprzez iCloud+. Obsłuż limit w interfejsie, sprawdzając stan przydziału modelu i pokazując trwały, możliwy do podjęcia element sterujący zamiast alertu. O dostęp wnioskuje się na stronie dla deweloperów; dostępne dla aplikacji z mniej niż 2 mln pobrań1.
- Nowy protokół
LanguageModelsprawia, że każdy model staje się wymienialny: System, PCC, Core AI dla modeli lokalnych na ANE, MLX dla społeczności Hugging Face oraz pakiety dostawców od Anthropic i Google, które dopiero nadejdą2. DynamicProfilepozwala, by pojedyncza sesja przemieszczała się między tymi modelami w trakcie rozmowy, więc tura burzy mózgów może korzystać z PCC z wysoką temperaturą, a tura weryfikacji może zejść do modelu na urządzeniu, by zaoszczędzić wywołania serwerowe3.
Większy model, te same trzy linie
W zeszłym roku argumentem było to, że odpytanie modelu na urządzeniu zajmuje trzy linie: utwórz sesję, wywołaj respond, odczytaj odpowiedź1. W tym roku ten argument rozciąga się na chmurę. Framework oferuje ujednolicone Swift API niezależnie od tego, z którym modelem rozmawiasz, więc przejście z modelu systemowego na urządzeniu na model PCC zmienia konstruowany model i nic więcej1. Ustrukturyzowane wyjście za pośrednictwem Generable oraz wywoływanie narzędzi zachowują się identycznie w obu przypadkach1.
Louis w sesji 319: odpytanie modelu na urządzeniu zajmuje trzy linie, a przełączenie na model serwerowy PCC to zmiana jednej linii prowadząca do znacznie większego modelu z większym kontekstem i rozumowaniem.
Kształt tej zamiany, w terminologii samego frameworka:
import FoundationModels
// On-device: the System model.
let onDevice = LanguageModelSession(model: SystemLanguageModel.default)
// Cloud: swap the model. Same session API, same prompts, same tools.
let cloud = LanguageModelSession(model: PrivateCloudComputeLanguageModel.default)
let summary = try await cloud.respond(to: "Summarize this 30-page contract.")
Nazwy symboli pochodzą wprost z sesji: Apple udostępnia model w chmurze jako PrivateCloudComputeLanguageModel, a sesja pokazuje rozmiar kontekstu odczytany z właściwości contextSize zarówno na SystemLanguageModel, jak i na PrivateCloudComputeLanguageModel1. Ponieważ model w chmurze spełnia ten sam protokół LanguageModel, co każdy inny model, reszta Twojego kodu nie zauważa różnicy2.
Jedno ograniczenie przenosi się z modelu na urządzeniu i zasługuje na rygorystyczną kontrolę: PCC działa wyłącznie na urządzeniach obsługujących Apple Intelligence. Sprawdź API dostępności i obsłuż przypadek, w którym Apple Intelligence jest niedostępne, tak samo jak już zabezpieczasz model na urządzeniu1.
Co kupuje Ci PCC i co to kosztuje
PCC to odpowiedź Apple na przypadki użycia, których model na urządzeniu nie jest w stanie obsłużyć: asystenci rozumujący nad dużymi danymi wejściowymi użytkownika lub funkcje, które wyzwalają wiele wywołań narzędzi z dużymi wynikami1. Kompromis jest konkretny, a nie oparty na przeczuciach, i sesja przedstawia go jako zestawienie bezpośrednie.
| Model systemowy na urządzeniu | Private Cloud Compute | |
|---|---|---|
| Prywatność | Na urządzeniu | Dane nigdy nieprzechowywane, używane wyłącznie na potrzeby żądania1 |
| Łączność | Działa offline | Wymaga połączenia z internetem1 |
| Limity żądań | Brak | Dzienny limit na użytkownika1 |
| Rozmiar kontekstu | 4K | 32K1 |
| Rozumowanie | — | Trzy poziomy: lekkie, umiarkowane, głębokie1 |
Dwa wiersze przesądzają o większości decyzji. Skok z 4K do 32K to właśnie to, co sprawia, że funkcja „podsumuj długi dokument z obrazami” jest wykonalna na modelu w chmurze, a ciasna na modelu na urządzeniu1. Rozumowanie to ta druga sprawa: tam, gdzie zwykła odpowiedź czyta prompt i generuje, odpowiedź z rozumowaniem generuje dodatkowy tekst w osobnym segmencie transkryptu, zanim udzieli odpowiedzi1. Trzy poziomy skalują ten budżet myślenia. Lekki zbiera nieco dodatkowego kontekstu, umiarkowany rozumuje głębiej, a głęboki może wytworzyć segment rozumowania dłuższy niż sama odpowiedź1. Poziom ustawiasz przy wywołaniu respond na sesji1.
Rozumowanie nie jest darmowe. Segment rozumowania to tekst, który model generuje, więc zużywa tokeny i wlicza się do budżetu kontekstu 32K1. Sesja nie owija w bawełnę wymaganej dyscypliny: decyzję między modelem na urządzeniu a PCC oraz wybór poziomu rozumowania należy podejmować na podstawie danych, a nie przeczuć1. Apple dostarczyło w Xcode nowy framework Evaluations właśnie po to, ponieważ model na urządzeniu radzi sobie lepiej, niż się spodziewasz, w wielu zadaniach, a jedynym sposobem, by się o tym przekonać, jest pomiar1.
Podejście do prywatności to nagłówek
Model serwerowy obsługujący prywatne dane wejściowe użytkownika to zwykle miejsce, w którym opowieść o prywatności się rozsypuje. PCC zbudowano tak, by tak się nie stało. Apple zaprojektowało Private Cloud Compute z myślą o prywatności od końca do końca, gwarantując, że dane użytkownika nigdy nie są przechowywane i są wykorzystywane wyłącznie na potrzeby żądania, a badacze niezależnie zweryfikowali ten projekt1. PCC zasila już własne złożone zadania Apple Intelligence; framework otwiera tę samą infrastrukturę dla Twojej aplikacji1.
Konsekwencje operacyjne to ta część, którą czują deweloperzy. PCC jest zintegrowane z systemem operacyjnym obok iCloud, więc nie trzeba podłączać uwierzytelniania, nie ma kluczy API do rotacji ani konfiguracji konta, o którą trzeba prosić użytkownika1. Użytkownik potrzebuje jedynie urządzenia obsługującego Apple Intelligence i niczego więcej. Nie ma żadnych kosztów tokenów po Twojej stronie jako dewelopera; każdy użytkownik otrzymuje dzienny limit, a użytkownicy mogą go podnieść poprzez iCloud+1. Model jest dostępny dla aplikacji z mniej niż 2 mln pobrań, a wniosek składa się na stronie dla deweloperów1.
Sesja 319 o gwarancjach prywatności: bez konfiguracji konta, bez uwierzytelniania, bez kluczy API i bez kosztu tokenów dla dewelopera, przy czym żądania każdego użytkownika są naliczane na poczet jego konta iCloud.
Aktualizacja, 8 czerwca 2026: PCC schodzi z Apple silicon
W tym samym tygodniu, w którym ruszyło WWDC, Apple opublikowało wpis o bezpieczeństwie, który zmienia miejsce działania PCC. PCC rozszerza się teraz na Google Cloud na GPU NVIDIA dla nowych obciążeń Apple Intelligence, „rozszerzając nasze wiodące w branży zobowiązania dotyczące prywatności PCC na centra danych podmiotów trzecich po raz pierwszy”5. Framework, na który celujesz, się nie zmienia. Zmienia się infrastruktura pod nim.
Apple utrzymuje identyczny kontrakt. Pięć podstawowych wymagań pozostaje dokładnie takich, jakie były: „obliczenia bezstanowe, egzekwowalne gwarancje, brak uprzywilejowanego dostępu w czasie wykonywania, niemożność celowania oraz weryfikowalna przejrzystość”5. Zmienia się implementacja, którą Apple nazywa jako „NVIDIA Confidential Computing z GPU NVIDIA, CPU Intela z TDX oraz układ Titan firmy Google”5. Apple wzmacnia tę podstawę ponad standardowe wdrożenie confidential computing na dwa sposoby, które deweloperzy powinni odnotować. Utrzymuje „kryptograficznie weryfikowalny, tylko-dopisywany rejestr całego sprzętu Google Cloud wchodzącego w skład floty PCC”, a dla komponentów mogących wyprowadzać dane użytkownika „atestacja oprogramowania jest zakorzeniona w co najmniej dwóch odrębnych korzeniach zaufania pochodzących od niezależnych dostawców”5.
Linia, która ma największe znaczenie dla podejścia do prywatności, dotyczy kontroli. Apple oświadcza, że „Apple zachowuje pełną kontrolę nad oprogramowaniem PCC; urządzenia Apple będą ufać wyłącznie oprogramowaniu PCC, które zostało kryptograficznie zatwierdzone przez Apple”5. Historia weryfikacji dla badaczy również się przenosi: Apple zapowiada, że opublikuje wszystkie pliki binarne do publicznego wglądu i zapewni dostęp do działających węzłów PCC w trybie badawczym poprzez program Apple Security Bounty5. Wdrożenie jest etapowe, „dochodząc do pełnego zestawu zabezpieczeń w trakcie letniego okresu podglądowego”, więc funkcja, którą dostarczasz w oparciu o PCC, w okresie podglądu dziedziczy zmienny zestaw gwarancji, a nie ten ostateczny5.
Wniosek dla kodu w tym wpisie: powyższe zapewnienia dotyczące prywatności obowiązują dla modelu PCC niezależnie od tego, czy odpowiada on z Apple silicon, czy z Google Cloud, ponieważ Apple utrzymuje te same pięć wymagań i tę samą bramę zaufania po stronie urządzenia. PCC jest również własną odpowiedzią Apple tam, gdzie modele podmiotów trzecich nie są w stanie pójść, co łączy się z własną odpowiedzią Apple na prompt injection z tego samego tygodnia.
Notatka z laboratorium: gwarancje PCC kończą się na granicy frameworka
Punkt, co do którego laboratoria WWDC były szczere, warto wyeksponować obok tego rozszerzenia, ponieważ wyznacza granicę, której nie wyznacza marketing. Gwarancje PCC — obliczenia bezstanowe, niemożność celowania i ulotne przechowywanie — nie rozciągają się na modele podmiotów trzecich, do których sięgasz poprzez protokół modelu językowego frameworka, takie jak Gemini czy Claude. Kiedy Twoja sesja kieruje się do pakietu dostawcy zamiast do modelu System lub PCC, to deweloper odpowiada za przeczytanie warunków tego dostawcy i ujawnienie wynikających z tego przepływów danych, w tym w etykietach prywatności App Store6. Protokół daje Ci jedno Swift API dla wielu modeli, ale nie daje Ci jednego podejścia do prywatności dla nich wszystkich. Ta praca związana z ujawnieniem spada na Ciebie, a nie na Apple.
Obsługa dziennego limitu bez psucia interfejsu
Dzienny limit to jedyne miejsce, w którym model w chmurze wkracza w UX, a sesja ma wyraźne zdanie na temat tego, jak go obsłużyć. Żądania naliczają się na poczet konta iCloud użytkownika, a żądanie przekraczające limit rzuca błąd1. Pokazanie tego surowego błędu w interfejsie to zły ruch, ponieważ taki błąd nie daje się na niczym oprzeć1.
Zamiast tego sprawdź stan przydziału na modelu i wyrenderuj własny element sterujący. Sesja sprawdza isLimitReached na quotaUsage modelu i, gdy limit zostaje przekroczony, pokazuje przycisk pozwalający użytkownikowi zarządzać limitem lub go podnieść1. Dwie zasady rządzą prezentacją. Nie używaj alertu, ponieważ stan limitu powinien być trwały, a nie odrzucany; zamiast tego zaktualizuj stan swojego interfejsu, na przykład wyłączając przycisk żądania i pokazując subtelną etykietę z akcją podniesienia limitu poniżej1. I wykrywaj też zbliżający się przypadek: model udostępnia stan belowLimit, dzięki czemu możesz ostrzec użytkownika, który jest blisko, pozwalając mu zdecydować, na które żądania warto wydać limit1.
// Sketch following the session's pattern.
let quota = PrivateCloudComputeLanguageModel.default.quotaUsage
if quota.isLimitReached {
// Persistent label + upgrade button. No alert.
showUpgradeAffordance()
} else if quota.belowLimit {
// Optional: warn the user they are nearing the daily limit.
showNearingLimitNotice()
}
Xcode pomaga zbudować to bez spalania prawdziwego przydziału. W opcjach debugowania schematu ustawienie „Simulate Apple Foundation Models Availability” oferuje „Quota Usage Limit Reached” oraz „Nearing Usage Limit”, dzięki czemu możesz przećwiczyć oba stany interfejsu w symulatorze1.
Przynieś własny LLM: protokół dostawcy
Głębsza zmiana w iOS 27 polega na tym, że Foundation Models przestał być frameworkiem jednego modelu. Apple przebudowało model systemowy na urządzeniu i dodało trzy kolejne własne opcje, a następnie otworzyło drzwi dla wszystkich pozostałych. PCC wprowadza model serwerowy z rozumowaniem i kontekstem 32K. Core AI wydajnie uruchamia modele lokalne na Apple Neural Engine. MLX odblokowuje tysiące modeli ze społeczności MLX na Hugging Face za pomocą identyfikatora modelu2. A ponieważ wszystko to opiera się na nowym publicznym protokole, czołowi dostawcy mogą dostarczać własne pakiety Swift; Apple wymieniło Anthropic i Google jako wprowadzających Claude’a i Gemini do deweloperów Swift za pośrednictwem tego samego frameworka2.
Christopher Webb w sesji 339: poza modelem systemowym framework dodaje PCC, Core AI i MLX, a publiczny protokół pozwala dostawcom takim jak Anthropic i Google rozszerzać go o własne pakiety Swift.
Protokół ma dwa elementy, a ten podział to cały zamysł projektu. LanguageModel opisuje model frameworkowi: deklaruje możliwości i zwraca konfigurację. LanguageModelExecutor to miejsce, w którym dzieje się praca, z inicjalizatorem przyjmującym tę konfigurację, prewarm służącym do ładowania wag lub otwierania połączeń z wyprzedzeniem przed pierwszym żądaniem oraz respond, który strumieniuje generowanie z powrotem do sesji2. Konfiguracja jest łącznikiem między nimi i to ona jest kluczem wyszukiwania. Każda sesja przechowuje magazyn executorów; gdy model wytwarza konfigurację, której magazyn nie widział, framework buduje executor i go buforuje, a sesja opisuje konfigurację jako Hashable, więc drugi model z tą samą konfiguracją rozwiązuje się do tego samego executora2. To buforowanie jest tym, co pozwala integracji stanowej trzymać cache KV lub trwałe połączenie między wywołaniami, zamiast ponownie wykonywać pracę2.
Dla dostawcy modelu zadaniem executora jest tłumaczenie. Framework przekazuje mu transkrypt, sekwencję wpisów z typami, a executor mapuje te wpisy na dowolne role, którymi posługuje się jego własny silnik wnioskowania2. Apple definiuje sześć typów wpisów: instrukcje, prompty, wywołania narzędzi, wyniki narzędzi, odpowiedzi i rozumowanie2. Model z jedynie rolami system, user i assistant mapuje wywołania narzędzi i rozumowanie na assistant; model z dedykowaną rolą narzędzia kieruje je tam2. Każde żądanie niesie też intencję dewelopera w dwóch workach właściwości: ContextOptions na to, co trafia do promptu, jak poziom rozumowania czy schemat odpowiedzi, oraz GenerationOptions na pętlę dekodera, jak próbkowanie, temperatura i długość2. Po stronie wyjścia executor strumieniuje zdarzenia na kanale, zaczynając od aktualizacji metadanych (identyfikatory modelu i żądania) oraz aktualizacji zużycia (liczby tokenów promptu) przed deltami tekstu, dzięki czemu deweloper poznaje koszt żądania bez czekania na cały strumień2.
Historia błędów ma znaczenie dla deweloperów aplikacji, nawet jeśli nigdy nie napiszą dostawcy. Foundation Models dostarcza LanguageModelError na przypadki, które trafiają się każdemu modelowi: przepełnienia okna kontekstowego, limity szybkości, odmowy i nie tylko2. Dostawca powinien rzucić jeden z nich, gdy pasuje, ponieważ każdy użytkownik frameworka już wie, jak go przechwycić, a niestandardowe typy błędów rezerwować na awarie produkowane wyłącznie przez jego własną usługę, jak poziom subskrypcji czy stan konta2. Dostawcy mają też przestrzeń, by się wyróżnić, dzięki niestandardowym metadanym odpowiedzi (tokeny na sekundę, czas do pierwszego tokenu) oraz niestandardowym typom segmentów, które rozszerzają protokół na nowe modalności, takie jak audio czy wideo, a wszystko to płynie przez tę samą sesję2. Dostawcy chmurowi dostają konkretne przypomnienie o poświadczeniach: nie przyjmuj klucza API jako zwykłego ciągu znaków; zaoferuj dostawcę tokenów lub przepływ logowania, przechowuj tokeny w Keychain i połącz to z atestacją urządzenia poprzez App Attest2.
Implikacje agentowe: kieruj modele wewnątrz jednej sesji
Protokół dostawcy i PCC opłacają się, gdy przestaniesz myśleć o jednym modelu na aplikację, a zaczniesz myśleć o jednym modelu na zadanie. To właśnie umożliwia DynamicProfile. Pozwala pojedynczej LanguageModelSession przełączać modele w trakcie rozmowy, wybierając najlepszą konfigurację dla zadania, które ma przed sobą3.
Erik i Oliver w sesji 242: aplikacja rękodzielnicza deklaruje profile działające jak agenci, prowadzące burzę mózgów na PCC z wysoką temperaturą, planujące z głębokim rozumowaniem i weryfikujące na modelu na urządzeniu, by zaoszczędzić wywołania serwerowe.
Przykład z sesji to aplikacja rękodzielnicza z trzema fazami. Burza mózgów wymaga szerokiej wiedzy i kreatywności, więc jej profil używa PrivateCloudComputeLanguageModel z temperaturą ustawioną na 13. Planowanie wymaga głębi, więc pozostaje na PCC i ustawia reasoningLevel na głęboki3. Weryfikacja to rutynowe wskazówki w trakcie pracy użytkownika, więc schodzi do SystemLanguageModel, by zaoszczędzić niepotrzebne wywołania serwerowe, co również zachowuje dzienny przydział PCC użytkownika na pracę, która go potrzebuje3. Ciało DynamicProfile ponownie ewaluuje się przy każdym prompcie, więc gdy aplikacja zmienia tryb, sesja zmienia osobowość: zmieniając kapelusze albo zmieniając agentów3.
Kierowanie między modelami o różnych rozmiarach kontekstu wymusza dyscyplinę, której framework wyłącznie na urządzeniu nigdy nie wymagał. Przejście z 32K w PCC do 4K na urządzeniu może wymagać przycięcia wpisów, by się zmieściły, a sesja wymienia też zastosowanie związane z prywatnością: redaguj prywatne informacje z istniejących wpisów przy przechodzeniu do mniej prywatnego modelu3. historyTransform z frameworka stosuje lokalną, nieniszczącą transformację przed wystawieniem promptu, więc przycinasz dla jednego modelu, nie tracąc kontekstu, którego następna tura może potrzebować3. Mutacja kosztuje: dopisywanie do transkryptu zachowuje cache KV i minimalizuje czas do pierwszego tokenu, podczas gdy przepisywanie historii (usuwanie wpisów, zmiana narzędzi, aktualizacja instrukcji) zwykle unieważnia cache i dodaje opóźnienie3. W zeszłym roku API sesji było wyłącznie dopisujące, by zagwarantować tę optymalizację; w tym roku Apple zdjęło boczne kółka, a jedynym sposobem, by poznać zachowanie buforowania modelu, jest pomiar za pomocą instrumentu Foundation Models w Xcode3.
Decyzja: na urządzeniu, PCC czy własny dostawca
Te trzy opcje nie są drabiną. Każda jest właściwa dla innego kształtu problemu.
Sięgnij najpierw po model systemowy na urządzeniu. Jest darmowy, działa offline, nie ma limitów żądań, a przebudowa w iOS 27 poprawiła go w podążaniu za instrukcjami i dodała wejście obrazowe2. Jego kontekst 4K to realny sufit1. Oceń, zanim założysz, że potrzebujesz więcej, ponieważ sesja ostrzega, że zaskoczy Cię to, jak dobrze sobie radzi1.
Sięgnij po Private Cloud Compute, gdy zadanie przekracza model na urządzeniu, a dane są wrażliwe. Długie dokumenty wymagające okna 32K, wieloetapowe rozumowanie lub wiele wywołań narzędzi z dużymi wynikami1. PCC to jedyna opcja chmurowa zachowująca podejście Apple do prywatności bez kluczy, bez konta i bez kosztu tokenów, opłacana dziennym limitem na użytkownika, wokół którego projektujesz1. Wybierz ją, gdy w przeciwnym razie postawiłbyś własny model serwerowy i obawiałbyś się przeglądu prywatności.
Sięgnij po własnego dostawcę, gdy potrzebujesz konkretnego modelu, którego platforma Ci nie daje. Core AI dla lokalnego modelu, który dołączasz i uruchamiasz na ANE, MLX dla modelu open source po identyfikatorze albo pakiet dostawcy (Claude, Gemini) dla modelu z najwyższej półki2. Bierzesz na siebie obsługę poświadczeń, atestację i ujawnienie prywatności, a w zamian otrzymujesz nazwany model za tą samą LanguageModelSession, którą Twoja aplikacja już się posługuje2. Sesja wprost mówi, że modele na urządzeniu i w chmurze mają bardzo różne cechy prywatności, a użytkownik zasługuje na to, by wiedzieć, który z nich odpowiada2.
Mieszaj je w jednej sesji, gdy fazy się różnią. To przypadek DynamicProfile: PCC na ciężkie tury kreatywne lub rozumowe, model na urządzeniu na rutynowe, przy czym każdy profil niesie własny model, temperaturę i poziom rozumowania3.
FAQ
Jak przełączyć się z modelu na urządzeniu na Private Cloud Compute?
Zmień model przekazywany do LanguageModelSession. Framework oferuje ujednolicone Swift API dla wielu modeli, więc przejście z modelu systemowego na urządzeniu na PrivateCloudComputeLanguageModel to zmiana jednej linii, a Twoje prompty, wyjście Generable i narzędzia działają tak samo1. PCC działa wyłącznie na urządzeniach obsługujących Apple Intelligence, więc zachowaj swoje sprawdzenie dostępności1.
Czy Private Cloud Compute jest tak prywatne jak model na urządzeniu?
Apple zaprojektowało PCC tak, aby dane użytkownika nigdy nie były przechowywane i były wykorzystywane wyłącznie na potrzeby żądania, a projekt został niezależnie zweryfikowany przez badaczy1. Jest zintegrowane z systemem operacyjnym obok iCloud, więc nie ma kluczy API, konfiguracji konta ani uwierzytelniania, którymi musiałbyś zarządzać1. Model na urządzeniu nadal wygrywa pod względem działania offline i nieograniczonych żądań; PCC wygrywa pod względem rozmiaru kontekstu i rozumowania1.
Ile kosztuje PCC i jaki jest dzienny limit?
Nie ma żadnych kosztów tokenów po Twojej stronie jako dewelopera1. Każdy użytkownik otrzymuje dzienny limit żądań naliczany na poczet jego konta iCloud, a użytkownicy mogą podnieść go poprzez iCloud+ do wyższego limitu1. Obsłuż limit w interfejsie, sprawdzając stan przydziału modelu (isLimitReached, belowLimit) i pokazując trwały, możliwy do podjęcia element sterujący podniesieniem limitu zamiast alertu1. Model jest dostępny dla aplikacji z mniej niż 2 mln pobrań, a wniosek składa się na stronie dla deweloperów1.
Co właściwie oznacza „przynieś własnego dostawcę LLM”?
Apple dodało publiczny protokół LanguageModel, dzięki czemu dowolny model może podłączyć się do frameworka Foundation Models i być wywoływany przez to samo API, co własny model Apple2. Poza modelem systemowym i PCC framework dodaje Core AI dla modeli lokalnych na ANE oraz MLX dla modeli społeczności Hugging Face, a Apple wymieniło Anthropic i Google jako dostarczających pakiety Swift dla Claude’a i Gemini2. Dostawca implementuje LanguageModel plus LanguageModelExecutor, który tłumaczy transkrypt frameworka na własny format i strumieniuje generowanie z powrotem2.
Czy jedna sesja może używać więcej niż jednego modelu?
Tak. DynamicProfile pozwala pojedynczej LanguageModelSession przełączać modele w trakcie rozmowy, wybierając najlepszą konfigurację na zadanie3. Profil niesie własny model, instrukcje, temperaturę i poziom rozumowania, a ciało profilu ponownie ewaluuje się przy każdym prompcie, więc sesja może prowadzić burzę mózgów na PCC i weryfikować na modelu na urządzeniu w tej samej rozmowie3. Uważaj na różnicę rozmiaru kontekstu między modelami oraz na koszt cache KV przy przepisywaniu historii, gdy to robisz3.
Pełny klaster Apple Ecosystem: omówienie frameworka Foundation Models; elementy sterujące wywoływaniem narzędzi w iOS 27; rozróżnienie przepływu agentowego; oraz LLM na urządzeniu. Centrum stanowi seria Apple Ecosystem. Po szerszy kontekst iOS z agentami AI sięgnij do przewodnika po rozwoju agentów iOS.
-
Apple, sesja WWDC 2026 nr 319, “Build with the new Apple Foundation Model on Private Cloud Compute”, prowadzona przez Louisa. Źródło dla: jednoliniowego przełączenia z modelu na urządzeniu na
PrivateCloudComputeLanguageModel; porównania kontekstu 4K wobec 32K; rozumowania na poziomach lekkim, umiarkowanym i głębokim ustawianym przy wywołaniurespond; właściwościcontextSizenaSystemLanguageModeliPrivateCloudComputeLanguageModel; projektu prywatności (dane nigdy nieprzechowywane, używane wyłącznie na potrzeby żądania, niezależnie zweryfikowane); braku kluczy API, braku konfiguracji konta, braku kosztu tokenów, dziennego limitu naliczanego w iCloud i podnoszonego przez iCloud+; dostępności dla aplikacji z mniej niż 2 mln pobrań i wniosku na stronie dla deweloperów; obsługiisLimitReached/belowLimitnaquotaUsageoraz wskazówki dotyczącej interfejsu bez alertu; a także opcji debugowania „Simulate Apple Foundation Models Availability” w Xcode. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Apple, sesja WWDC 2026 nr 339, “Bring an LLM provider to the Foundation Models framework”, prowadzona przez Christophera Webba. Źródło dla: publicznego protokołu
LanguageModeliLanguageModelExecutor; magazynu executorów z konfiguracją jako kluczem wyszukiwania i konfiguracjąHashable; dodatkowych opcji modeli (Core AI na ANE, MLX poprzez Hugging Face); przebudowanego modelu systemowego na urządzeniu z wejściem obrazowym; Anthropic i Google dostarczających pakiety Swift dla Claude’a i Gemini; sześciu typów wpisów transkryptu i mapowania ról;ContextOptionsiGenerationOptions; kolejności strumieniowania metadanych/zużycia/delt tekstu;prewarm;LanguageModelErrorwobec błędów niestandardowych; niestandardowych metadanych odpowiedzi i niestandardowych typów segmentów; wskazówek dotyczących poświadczeń i App Attest; oraz ujawniania cech prywatności między modelami na urządzeniu a chmurowymi. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Apple, sesja WWDC 2026 nr 242, “Build agentic app experiences with the Foundation Models framework”, prowadzona przez Erika i Olivera. Źródło dla:
DynamicProfileprzełączającego modele w obrębieLanguageModelSession; przykładu aplikacji rękodzielniczej (burza mózgów na PCC z temperaturą 1, planowanie z głębokimreasoningLevel, weryfikacja naSystemLanguageModel); ponownej ewaluacji ciała profilu przy każdym prompcie; przycinania i redagowania transkryptu przy przechodzeniu między modelami;historyTransformjako lokalnej, nieniszczącej transformacji; oraz implikacji cache KV przy dopisywaniu wobec przepisywania historii, mierzonych za pomocą instrumentu Foundation Models w Xcode. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Apple Developer, framework „Foundation Models” oraz protokół „Tool”.
LanguageModelSessionframeworka, generowanie sterowane poprzez@Generableoraz protokółTool, który model na urządzeniu wywołuje w trakcie generowania, przenoszą się bez zmian na model PCC i na modele dostawców spełniające nowy protokółLanguageModel. ↩ -
Apple, “Expanding Private Cloud Compute”, 8 czerwca 2026, napisane przez Apple Security Engineering and Architecture (SEAR), User Privacy, Core Operating Systems (Core OS), Services Engineering (ASE) oraz Machine Learning and AI (AIML). Źródło dla: rozszerzenia PCC na Google Cloud na GPU NVIDIA dla nowych obciążeń Apple Intelligence oraz ujęcia „centra danych podmiotów trzecich po raz pierwszy”; pięciu niezmienionych podstawowych wymagań; stosu implementacyjnego (NVIDIA Confidential Computing z GPU NVIDIA, CPU Intela z TDX, układ Titan firmy Google); tylko-dopisywanego rejestru sprzętu i atestacji z dwoma niezależnymi korzeniami zaufania; zachowanej przez Apple kontroli nad oprogramowaniem PCC i bramy zaufania po stronie urządzenia; etapowego wdrożenia w okresie podglądu letniego; oraz opublikowanych plików binarnych plus dostępu do węzłów w trybie badawczym poprzez program Apple Security Bounty. ↩↩↩↩↩↩↩
-
Apple, sesja WWDC 2026 nr 8009, “WWDC26 Privacy and Security Group Lab”. Sparafrazowane z lokalnie transkrybowanego nagrania laboratorium WWDC 2026 Privacy and Security Group Lab; Apple nie publikuje napisów do laboratoriów. Źródło dla: gwarancji PCC (obliczenia bezstanowe, niemożność celowania, ulotne przechowywanie) nierozciągających się na modele podmiotów trzecich, takie jak Gemini czy Claude, osiągane poprzez protokół modelu językowego frameworka, oraz tego, że deweloper odpowiada za warunki dostawcy i ujawnienie przepływu danych, w tym w etykietach prywatności App Store. ↩