← jwatte.com

Browser AI Readiness Probe

Can this browser run AI on the visitor's own device, with no API bill and nothing uploaded? This tool checks your browser right now for the Chrome Prompt API (the Gemini Nano LLM), the stable Summarizer / Translator / Language Detector APIs, and WebGPU for bring-your-own models — then hands you a copy-paste feature-detect-and-fallback snippet. Everything runs locally in your tab. Background reading: the free LLM in Chrome and running real AI in the browser.

Your browser's on-device AI report

The scan runs automatically the moment this page loads, entirely in your browser. It only asks each API whether it is available — it does not download any model. Nothing about your device is sent anywhere.

Drop this into your code

Copied ✓

A safe pattern: use the on-device model when the visitor can run it, and fall back to your normal path when they can't. The two guards at the top are what keep it from breaking for everyone else.

// Use Chrome's on-device LLM when available, fall back otherwise.
async function askOnDevice(promptText, cloudFallback) {
  // 1. Is the built-in model even present? (Chrome / Edge desktop only.)
  if (!('LanguageModel' in self)) return cloudFallback(promptText);

  // 2. Can THIS device actually run it?
  const status = await LanguageModel.availability();
  // 'unavailable' | 'downloadable' | 'downloading' | 'available'
  if (status === 'unavailable') return cloudFallback(promptText);

  // 3. Open a session. If the model must download, it happens here.
  const session = await LanguageModel.create({
    monitor(m) {
      m.addEventListener('downloadprogress', (e) => {
        console.log('Downloading model: ' + Math.round(e.loaded * 100) + '%');
      });
    },
  });

  // 4. Prompt it. This runs on the visitor's own chip. No network, no bill.
  try {
    return await session.prompt(promptText);
  } finally {
    session.destroy();
  }
}

On the open web the Prompt API currently rides an origin trial, so register a token for production use; in a Chrome extension it is stable. The Summarizer, Translator, and Language Detector APIs are already stable for the web. See the write-up for the details and the fine print.

Why this tool exists

On-device AI is real, but "the browser can run a free LLM now" quietly excludes a lot of people: it is Chrome and Edge desktop only, hardware-gated, and half of it is still an origin trial. If you wire an on-device feature in without checking, it silently fails for every mobile, Firefox, and Safari visitor. This probe shows you exactly what your browser can do and gives you the guard code to make the feature a graceful enhancement instead of a broken button. It runs entirely client-side — the same privacy-by-architecture idea the tools here are built on.