Apple Foundation Models
175 points by MehrdadKhnzd 7 hours ago | 66 comments

harrouet 57 minutes ago
This is Apple commoditizing LLMs while keeping control of the UX.

They are a hardware company and will keep selling the best machine for AI use. Well done.

reply
tedggh 13 minutes ago
Benedict Evans may be right after all; frontier models look more and more like telecom companies in the 90s. Billions and billions of investment in infrastructure while others further up the stack captured all the value.
reply
klausa 46 minutes ago
How is this Apple keeping control of the UX?
reply
matwood 34 minutes ago
The betas of the next OS's include a Siri AI chatbot, and the AI features are built into various parts of the OS. A user has no idea what model is powering any of it - Apple controls the UX.
reply
klausa 30 minutes ago
I'm aware. How is this relevant to the posted article?
reply
embedding-shape 27 minutes ago
The article is about (from the eyes of a user) white-labeled usage of Claude models on Apple devices, this subthread is about white-labeled usage of LLMs on Apple devices, how is it not relevant?
reply
klausa 21 minutes ago
Because that's not what the article is about; this is about a unified API for the _app developers_ to access different kind of models.

That API has no user-facing components, and has no influence over UX of what the end-users are interacting with.

The users won't know if you used Foundation Models API or integrated with OpenAI/Anthropic/Gemini SDK directly.

reply
neuropacabra 4 minutes ago
Can someone explain me what it means in the context of Apple and ChatGPT/Claude/Mistral...?
reply
rock_artist 3 hours ago
While I'm happy with Apple introducing this abstraction. my main concern was with local models.

I'd love using Gemma4 as an example. but thinking of a user. if 10 Apps each uses same model and downloads it, the phone will be bloated.

I still didn't understand if Apple provided a way for multiple apps uses same on-device model (without tricky namespaces and permissions).

I didn't see anything suggesting that's the case.

reply
jtfrench 3 hours ago
That's a great opportunity for Apple to provide a universal unique model ID protocol and some shared storage space to allow devs to register models.
reply
alwillis 57 minutes ago
Check out “Bring an LLM provider to the Foundation Models framework” - https://developer.apple.com/videos/play/wwdc2026/339
reply
trvz 3 hours ago
Do you guys not have phones (with at least 1TB of storage)?
reply
rock_artist 2 hours ago
Who’s “you guys” a developer from Bay Area? A student with a MacBook Neo? Or John Appleseed who bought basic iPhone 17e?
reply
exitb 2 hours ago
I'm guessing it's a BlizzCon joke.
reply
mft_ 2 hours ago
I have a Mac with 4TB of storage but it’s still annoying when every new AI app I try installs its own virtual environment with a fresh copy of Python, PyTorch, other duplicate libraries, and then models on top of that.
reply
DrScientist 2 hours ago
As an occasional python user I'm always amazed and frustrated that it seems that the only way to be able to use/build anything is to create a whole separate environment.

And now given everybody now does this I guess the incentive to stop breaking stuff reduces even further.

Might as well have static binaries.

reply
simondotau 2 hours ago
The meme phrase “it’s fractally wrong” applies to the entire python ecosystem, IMHO. Virtual environments are just another layer of this fractal wrongness in the layer cake of ecosystem awfulness.

It’s a nice language though.

reply
whstl 29 minutes ago
I have a couple small apps that have a (non-LLM) model, and originally the models and code were in PyTorch, built by Python devs.

The original plan was to ship Python. However I found out I can migrate them to CoreML, and now it's a model file + Swift code. I got some massive performance improvements as well.

Of course, this doesn't work at all for non-Mac environments, but it was nice to be able to do it. (Also doesn't solve the duplicate large models problem)

reply
fragmede 31 minutes ago
No? iPhones don't come standard with that much storage.
reply
klausa 3 hours ago
The apps can use the system provided on-device model using the same framework and APIs; but there's no affordances to deduplicate custom models between apps.
reply
taneq 45 minutes ago
Sounds ripe for block-level deduplication. :D Or an API that lets you request a model and handles caching.
reply
daniel_iversen 4 hours ago
Is this Apple encouraging developers to go through their api abstraction layer to use LLMs so that when they launch their own (which I think we’ve heard they’ve been spending lots of money on training and might be somehow involved with Siri or current Apple AI?) that they can easily help devs make a seamless transition? Or is it just a developer nicety or something else?
reply
tarcon 3 hours ago
Apple has some clever mechanics to protect user data. I had to work with App tracking stuff lately and their approach to keeping user details private with anonymized cohorts (SKAN, Differential Privacy) before reporting tracking events to third party platforms was surprisingly well thought out. There is value in having them in your loop if you care about privacy.
reply
willis936 2 hours ago
It would be cool if they offered some kind of prompt sanitation option.
reply
klausa 3 hours ago
This is support for a new framework that ships with reality/mac/iPad/watch/tv/iOS 27 (and that they've promised to open-source later in the year, so presumably you'll also be able to lean on this if you ship Swift on your backend).

The framework's whole deal is that it lets you use the same API to target either the device built-in models, the Apple-hosted online models (Private Cloud Computer), or write your own shims to call out to arbitrarily hosted online models.

You can then dynamically route your calls to a different kind of model/provider, using system APIs, without having to write your own abstraction layer over "I want to use local model for this, but I want to use Claude for that", or having to integrate your own API integration with Anthropic/OpenAI APIs.

It abstracts things like tool calling in one place; and has a bunch of other niceties/oddities (it keeps the same "transcript" going, even if you dynamically switch providers/models during a session) and some other things.

reply
claud_ia 55 minutes ago
[dead]
reply
NorwegianDude 3 hours ago
A dark, but not totally unfair take: It makes it easier for Apple to take payment for the models others provide, and even allows Apple, if they want to, to use the data to build a dataset for training their own models based on how users use third party models. It's only on Apple devices this API is used, so they split up the market by not letting developers use the same system if they want things to work on iOS, locking users even more in.
reply
oefrha 3 hours ago
Call it Intelligence Store and charge… wait for it… 30%.
reply
pprotas 4 hours ago
The cynic (or realist?) in my thinks this abstraction layer is Apple's way of making sure that users give their own Apple Intelligence credit for the underlying LLM functionality, even if another company is actually providing the LLM.
reply
_the_inflator 4 hours ago
Assembled in Cupertino once more. ;)
reply
coldtea 2 hours ago
Yeah, Apple just designs and writes the SoC, CPU, graphics unit, neural unit, compiler (Swift), OS, graphics layer, 3D API, core libs from graphics to persistence, filesystem, broadband chip, and a few more things besides...
reply
saagarjha 2 hours ago
Notably good models are not on that list.
reply
geden 58 minutes ago
Neither are other capex heavy items like chip fabs.
reply
coldtea 15 minutes ago
Yeah, they also don't mine their own steel and copper. Such mere assemblers!
reply
coldtea 15 minutes ago
Yeah, that totally makes them merely assemblers then /s
reply
thombles 4 hours ago
There are already on-device models that you can use through this framework as a developer. Claude would just be an additional one.
reply
FinnKuhn 4 hours ago
Maybe they plan to have the providers pay for being the default model? So basically, what Google is doing right now for search engines. The difference however is that Google is making money with additional search requests while AIs are (as of now) losing money with additional requests. I don't see the business case for them yet though.
reply
mathisfun123 4 hours ago
> which I think we’ve heard they’ve been spending lots of money on training and might be somehow involved with Siri or current Apple AI

Lol bro this is literally it this is the model they've been training (was Apple Foundation model not a big enough hint?)

reply
mcintyre1994 41 minutes ago
I think this is just Apple planning for their on-device models getting better, which makes sense given they have access to Gemini now. If developers use this for all their code calling an external LLM, then as Apple's model becomes more capable and covers more use cases it'll be easy to switch to it at individual call sites. That'll give apps better UX and save developers money on a bill that Apple doesn't get a cut of.
reply
embedding-shape 25 minutes ago
> That'll give apps better UX and save developers money on a bill that Apple doesn't get a cut of.

With other words, it's unlikely to happen as there is no money in it. Better for Apple to create some new subscription "AI" and "AI-lite" plans people can subscribe to, and since Apple is a company and we all know what those care about, it's unlikely to become a utopia of local models running on your phone.

reply
VadimPR 2 hours ago
How can you practically use this in software if you're to deploy this to users? Asking a user to create and enter their own API key is a bar too high for good UX.
reply
klausa 44 minutes ago
The same way you did it before — by proxying the requests to your backend.
reply
Maxious 60 minutes ago
> For production, route requests through your own back end with .proxied

Apple is offering developers with less than 2 million downloads free AI models via their servers https://techcrunch.com/2026/06/08/apple-bets-cheaper-ai-will...

reply
adithyassekhar 3 hours ago
> Requests go directly from your app to the Claude API; Apple is not in the request path and does not see prompts or responses.

I know this is from a developer perspective. But as a consumer this is just funny.

reply
saretup 2 hours ago
Why?
reply
pgt 46 minutes ago
I’m surprised to see the model names hardcoded as an enum (e.g. `.sonnet4_6`), instead of a string with model discovery so that the user can select their preferred model without having to get a new app version through the App Store to support newer models.
reply
klausa 43 minutes ago
>Model identifiers are values of ClaudeModel. Use a compiled-in constant, or construct one with explicit capabilities for an ID that isn't compiled in yet (see Capabilities):

Special emphasis on the "isn't compiled in yet" and "or construct one" bit.

reply
insumanth 47 minutes ago
This was expected. Apple will carefully choose what & how people can use AI in their ecosystem and will make sure of it. I hope "Apple Foundation Models" Eco-system grows with support from major model providers.
reply
zkmon 4 hours ago
Coding agent itself an imposed layer. Now they are adding one more layer? Many times I think of coding agent as the vendor supervisor from the body shops of the 90's who promise the customer everything under the sky and thrash the poor contractor to deliver. Coding agents consume 10x more tokens just like how body shops charged their customers vs how they paid the contractors. For a simple test, the same task that makes the model to go out of context length when used via a coding agent, runs fine when prompted directly.

Layers are luxury and remove control and transparency.

reply
klausa 3 hours ago
You wouldn't use this when building a coding agent.
reply
_pdp_ 3 hours ago
From app developer standpoint why would anyone ship claude keys like that ... or am I missing something? From consumer standpoint - I guess they can use their own keys but it is not something that is very user friendly as you can imagine.
reply
nl 3 hours ago
it says:

Proxy (production)

For production, route requests through your own back end with .proxied. The relay at baseURL adds the Claude API credential server-side, so the app ships no key. The headers you provide are sent on every request so your proxy can authorize the caller.

https://platform.claude.com/docs/en/cli-sdks-libraries/libra...

reply
londons_explore 48 minutes ago
> A key bundled into an app is extractable from the shipping binary, and anyone who extracts it can make requests billed to your account. Use .apiKey for development only, and switch to a proxy before release.

I don't like this model. Then all the user data is visible to the proxy.

Far better would be some kind of micro payment architecture where a wallet is on the users device and coins are attached to each request.

We just need to live in the alternate universe where micro payments succeeded.

reply
me551ah 3 hours ago
So where does the api key reside? You can’t ship it on the iOS client since anyone can read and abuse it
reply
yilugurlu 12 minutes ago
it says put into your API layer and proxy it.
reply
21-DOT-DEV 3 hours ago
> Usage is billed to your Anthropic account at standard API pricing.

While expected, it’s still a bummer.

reply
isoprophlex 47 minutes ago
The pricing squeezes will continue until token spend improves!
reply
HelloUsername 3 hours ago
Does "Apple Intelligence" need to be Turned On for this as well?
reply
gregman1 4 hours ago
So actually the most successful AI was OpenRouter Intelligence? Pronounced as OÏ.
reply
Traster 3 hours ago
This seems smart. Apple, despite not really leading in AI themselves, are right on the hot path of where developers are going to yolo slop into the ecosystem. Make a tonne of sense to define a nice clean API that places like Anthropic can build on top of and expose to developers.

It's also smart for them to make sure the billing is going direct from Anthropic to the developer. The initial thought is "That means Apple's not taking a cut", but from the other side of it, developers who use this API are going to have to expose that cost to customers somehow, and that translates to subscription/InAppPurchase etc. on top of which Apple will get it's 30%.

reply
jedisct1 2 hours ago
Misleading title. This is about Claude for Apple Foundation Models, not about Apple Foundation Models
reply
hit8run 3 hours ago
Why would I want a nerfed model?
reply
tonyoconnell 4 hours ago
What it is

Apple's Foundation Models framework (shipping in iOS 27 / macOS 27 this fall) is the standard Swift API for on-device AI — the same API Apple uses for their own small model. This package makes Claude plug into that same API as a drop-in swap.

  // Apple's on-device model
  let session = LanguageModelSession(model: SystemLanguageModel.default)

  // Claude — same API, just different model constructor
  let session = LanguageModelSession(model: ClaudeLanguageModel(name: .sonnet4_6, auth: auth))
One API, two tiers. You write your app once against the Foundation Models protocol. On-device model handles fast/free/private tasks; Claude handles heavy reasoning, long context, or capability gaps — you swap the model, not your code.

You don't call the Anthropic API directly. Apple's framework handles streaming, tool calling, and structured output (@Generable) — you just get Claude's capability through it.

reply
mlpicker 3 hours ago
[dead]
reply