Google’s Prompt API ships a 4GB Gemini Nano model to every Chrome user’s machine, and nobody was asked first. The AI hype cycle has settled on “just ship it” as reasonable advice, and Google took that at face value. I have spent 14 years shaving milliseconds off TTFB, so watching a browser vendor quietly push a 4GB binary is hard to read as anything but a step backwards.
Disk space is the smaller problem. The bigger one is what this does to the idea of a web standard. Mat Marquis compared the rollout to the U2 album marketing disaster: you did not ask for it, deleting it is awkward, and Chrome will fetch it again anyway. The web platform has been opt-in for decades, and this is not that.
The policy strings attached to Google’s Prompt API
Mozilla has objected on interoperability and neutrality grounds. Using Google’s Prompt API requires developers to “acknowledge” Google’s Generative AI Prohibited Uses Policy. That is a legal condition, not a technical one. An API that binds you to a single company’s content policy, over and above the law where you actually operate, has stopped being a neutral web standard.
Picture a Fetch API that only worked once you promised not to request “disrespectful” content. That is the shape of the precedent. When I wrote about the WordPress 7.0 Connectors API, the argument was that abstraction layers exist to keep this kind of vendor lock-in at arm’s length. This API runs the other way.
What the code looks like today
The current implementation, mostly behind flags or in early trials, looks simple enough. It also assumes everyone is on Chrome.
// Checking for Google's Prompt API availability
async function bbioon_check_ai_capabilities() {
if (!window.ai || !window.ai.languageModel) {
console.error(\"Your browser is too old or too 'free' for this API.\");
return;
}
const capabilities = await window.ai.languageModel.capabilities();
if (capabilities.available === 'readily') {
const session = await window.ai.languageModel.create();
const response = await session.prompt(\"Explain technical debt to a stakeholder.\");
console.log(response);
} else {
// This is where Chrome starts that 4GB background download
console.log(\"Model downloading... check back in a few hours.\");
}
}
The catch is that window.ai is a moving target, tied to particular Gemini Nano releases rather than to a stable spec. Build a WooCommerce dashboard feature on it and you have told your Firefox and Safari users to go elsewhere. IE6 taught the web this lesson once already.
I argued earlier that the Google Interactions API was meant to clean up the “everything prompt” mess. The Prompt API heads the other way, into a proprietary walled garden.
If Google’s Prompt API is eating your dev hours, hand it over. I have been dealing with WordPress and browser-specific quirks since the 4.x days, and I can build AI features that do not cost you performance or site integrity.
Where this leaves us
Google takes part in the web standards process the way a bear takes part in camping. The company is big enough to ignore the rules whenever ignoring them is convenient. On-device AI is a reasonable goal for privacy. Pushing 4GB of weights onto users who never agreed to it, then attaching a corporate content policy to the API, is not how you earn developer trust.
What is missing is user control. A Chrome user has no way to opt out of this today. Until it becomes a real, vendor-neutral Web API, it is Chrome-specific technical debt, and somebody will be refactoring it out in three years.