We need to talk about Google’s Prompt API. For some reason, the standard advice in the AI hype cycle has become “just ship it,” and Google is taking that literally by forcing a 4GB Gemini Nano model onto every Chrome user’s machine without asking. As a developer who has spent 14 years trying to shave milliseconds off TTFB, seeing a browser vendor silently push a 4GB binary is, frankly, a nightmare.
This isn’t just about disk space; it’s about how web standards are being treated. Mat Marquis recently compared this rollout to the infamous U2 album marketing disaster. You didn’t ask for it, you can’t easily delete it, and if you do, Chrome will just re-download it. This is a massive departure from the “opt-in” nature of the web platform we’ve spent decades building.
The Governance Trap in Google’s Prompt API
Mozilla has already raised a massive red flag regarding interoperability and neutrality. To even use the Google’s Prompt API, developers must “acknowledge” Google’s Generative AI Prohibited Uses Policy. This isn’t just a technical requirement; it’s a legal tether. If an API requires you to follow a specific corporation’s content policy—one that goes beyond local laws—it ceases to be a neutral web standard.
Imagine if the Fetch API only worked if you promised not to request “disrespectful” content. That’s the precedent we’re setting here. In my recent look at the WordPress 7.0 Connectors API, I argued that we need abstraction layers precisely to avoid this kind of vendor lock-in. Google’s Prompt API is the opposite of that abstraction.
Technical Implementation: The Naive Approach
If you’re curious about how this looks in the wild, the current implementation (mostly behind flags or in early trials) looks deceptively simple. But notice how it assumes a Chrome-centric universe.
// 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 “Gotcha” here is that window.ai is a moving target. Unlike standard Web APIs, this is tied to specific Gemini Nano releases. If you build a feature for your WooCommerce dashboard using this, you’re effectively telling Firefox and Safari users they don’t matter. We’ve seen this movie before with IE6; it doesn’t end well for the open web.
I’ve previously discussed how the Google Interactions API was supposed to solve some of these “everything prompt” issues, but the Prompt API feels like a step backward into a proprietary walled garden.
Look, if this Google’s Prompt API stuff is eating up your dev hours, let me handle it. I’ve been wrestling with WordPress and browser-specific quirks since the 4.x days, and I can help you build AI features that don’t compromise your site’s integrity or performance.
The Architect’s Verdict
Google participates in the web standards process the way a bear participates in the “camping” process. They are big enough to ignore the rules when it suits them. While on-device AI is a noble goal for privacy, forcing 4GB of weights onto users without consent—and then shackling the API to a corporate policy—is not the way to win developer trust.
Specifically, we need to demand better user controls. Currently, Chrome users can’t even opt out of this AI bloat. Until this becomes a true, neutral Web API, it’s just another piece of Chrome-specific technical debt that we’ll be refactoring in three years.