A hands-on playground for the built-in AI APIs and Course from 0 to hero

50 views
Skip to first unread message

Daniel Ostrovsky

unread,
Aug 4, 2026, 4:59:26 AM (11 days ago) Aug 4
to Chrome Built-in AI Early Preview Program Discussions

I've been building with the built-in AI APIs for a while, and I put together a site to make them easier to explore: windowai.danduh.me

It covers the built-in AI surface in one place — Prompt / LanguageModel (including structured output and multimodal), Summarizer, Translator, Language Detector, Writer, Rewriter, Proofreader, on-device embeddings (embeddinggemma), and WebMCP. For each API you get:

  • a "does my browser support this?" availability check,
  • a runnable live demo,
  • and short docs.

One thing I added recently: the site is agent-friendly. You can point an AI coding agent (Cursor, Claude, Copilot) straight at it, or copy an LLM-ready Markdown version, so it can pick up the APIs without digging through docs.

A course: "Chrome's Built-in AI, from 0 to superhero":

https://danduh.me/courses/category/chromes-built-in-ai

It walks through the whole API family with runnable examples - Prompt API (sessions, streaming, temperature/topK, tokens), structured output + tools, multimodal, Summarizer, Translator + Language Detector, live voice translation, Writer/Rewriter, Proofreader, Embeddings, WebMCP, Generative UI, and an in-browser MCP client.

It also covers the parts that usually get skipped: availability() handling, observability/tracing (OpenTelemetry gen_ai.* spans), evaluation (golden sets + a stability rate), and a shipping/compatibility checklist mapping each API to its Chrome version, stability, and flag. 

I'd really value feedback from this group - anything inaccurate, out of date with the latest flags/versions, or missing. And if there's a topic you'd want covered, tell me and I'll add it.

Thanks!
Daniel

Thomas Steiner

unread,
Aug 4, 2026, 9:15:32 AM (11 days ago) Aug 4
to Daniel Ostrovsky, Chrome Built-in AI Early Preview Program Discussions
Hi Daniel,

Thanks for the playground, it's really cool and reminds me of Etienne's playground!

The course looks likewise quite nice, but spot-checking it, I found some outdated information like the following:

 const session = await LanguageModel.create({
    outputLanguage: 'en', // always. this is load-bearing.

This should be `expectedInputs` and the details have changed.

Since this was likely created with AI assistance, I recommend pointing your agent at Modern Web Guidance, which has skills regarding the built-in AI APIs that should catch such outdated information.

Cheers,
Tom

--
You received this message because you are subscribed to the Google Groups "Chrome Built-in AI Early Preview Program Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chrome-ai-dev-previe...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/chrome-ai-dev-preview-discuss/629882a3-923f-4bee-ac3a-e038ceff07a9n%40chromium.org.


--
Thomas Steiner, PhD—Developer Relations Engineer (blog.tomayac.comtoot.cafe/@tomayac)

Google Spain, S.L.U.
Torre Picasso, Pl. Pablo Ruiz Picasso, 1, Tetuán, 28020 Madrid, Spain

CIF: B63272603
Inscrita en el Registro Mercantil de Madrid, sección 8, Hoja M­-435397 Tomo 24227 Folio 25

----- BEGIN PGP SIGNATURE -----
Version: GnuPG v2.4.8 (GNU/Linux)

iFy0uwAntT0bE3xtRa5AfeCheCkthAtTh3reSabiGbl0ck
0fjumBl3DCharaCTersAttH3b0ttom.xKcd.cOm/1181.
----- END PGP SIGNATURE -----

Daniel Ostrovsky

unread,
Aug 5, 2026, 1:26:24 PM (10 days ago) Aug 5
to Chrome Built-in AI Early Preview Program Discussions, Thomas Steiner, Chrome Built-in AI Early Preview Program Discussions

Hi Thomas,

Thanks for taking the time to spot-check it, and for the pointer to Modern Web Guidance - I went through the APIs one by one and updated everything against the latest docs and that skill.
Appreciate the reference, it's a much better source of truth than what I had.

A couple of side notes, mostly for my own amusement: the demo site (windowai.danduh.me) went live in September 2025 - not ancient, but in web-AI years that's already a while.
And the first talk I gave on this topic was back in November 2024, which now feels genuinely long ago. Keeping up with API changes is hard - I've learned the hard way not to update Chrome Canary right before going on stage, since you never know which demo will break.

Also, thanks for the link to Etienne's playground - hadn't seen that one.

While I have you, I've got a pile of questions:

  • What's the best way to contribute: to development, to the community, or otherwise support the effort?
  • What's the best channel for technical questions? For example, chrome://on-device-internals/ shows multiple models (prompt_api_gemma4_12b, prompt_api_gemma4_4b, prompt_api_gemma4).
    How are these managed? Is there an API to select a model, or is that only user-controlled? And can users actually choose?
  • Writer and Rewriter are based on LoRA adapters (if i'm not mistaken), is there any way to supply a custom adapter?
    Letting each site load its own adapter to improve the experience for its use case would be great.

And I've got plenty more. I'll save them for future threads.

Thanks again,
Daniel

Thomas Steiner

unread,
Aug 6, 2026, 3:42:40 AM (9 days ago) Aug 6
to Daniel Ostrovsky, Chrome Built-in AI Early Preview Program Discussions, Thomas Steiner
Hi Daniel,

Let me respond inline below…

On Wed, Aug 5, 2026 at 7:26 PM Daniel Ostrovsky <dan...@gmail.com> wrote:

Hi Thomas,

Thanks for taking the time to spot-check it, and for the pointer to Modern Web Guidance - I went through the APIs one by one and updated everything against the latest docs and that skill.
Appreciate the reference, it's a much better source of truth than what I had.


That's great to hear, and glad the Modern Web Guidance skills were useful! 
 

A couple of side notes, mostly for my own amusement: the demo site (windowai.danduh.me) went live in September 2025 - not ancient, but in web-AI years that's already a while.
And the first talk I gave on this topic was back in November 2024, which now feels genuinely long ago. Keeping up with API changes is hard - I've learned the hard way not to update Chrome Canary right before going on stage, since you never know which demo will break.


Yeah, we've really come a long way! And yes, I've definitely been bitten by Canary updates. Imagine us at Google I/O ;-)
 

Also, thanks for the link to Etienne's playground - hadn't seen that one.


You're welcome! It's open source, so you can compare implementations.
 

While I have you, I've got a pile of questions:

  • What's the best way to contribute: to development, to the community, or otherwise support the effort?

I guess the biggest help right now is actually using the APIs in production apps and spreading the word about them. Also, we always appreciate pointers at outdated documentation or outdated demos.  
 
  • What's the best channel for technical questions? For example, chrome://on-device-internals/ shows multiple models (prompt_api_gemma4_12b, prompt_api_gemma4_4b, prompt_api_gemma4).

This very list :-) 
  • How are these managed? Is there an API to select a model, or is that only user-controlled? And can users actually choose?

So far these are selected through chrome://flags. For example, in Canary, on that special Chrome page, search for "gemma".
 
  • Writer and Rewriter are based on LoRA adapters (if i'm not mistaken), is there any way to supply a custom adapter?

See the expandable section How Chrome implements the task APIs.
 
  • Letting each site load its own adapter to improve the experience for its use case would be great.

I guess today your best bet to make this happen is to create your own system prompt and build upon the Prompt API. The newer models (Nano v3 and Gemma) are a loooot better at following these instructions now.
 

And I've got plenty more. I'll save them for future threads.


You're welcome to send them whenever you need an answer :-D

Cheers,
Tom
Reply all
Reply to author
Forward
0 new messages