Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Intent to Extend Experiment: Summarizer API

192 views
Skip to first unread message

Ayu Ishii

unread,
Apr 15, 2025, 1:31:03 PMApr 15
to blink-dev
Contact emails

dom...@chromium.org, fer...@chromium.org, kenji...@chromium.org, m...@chromium.org, btr...@chromium.org, ds...@chromium.org, ay...@chromium.org


Explainer

https://github.com/explainers-by-googlers/writing-assistance-apis/blob/main/README.md


Specification

https://webmachinelearning.github.io/writing-assistance-apis/#summarizer-api 


Summary

A JavaScript API for producing summaries of input text, backed by an AI language model.



Blink component

Blink>AI>Summarization


TAG review

https://github.com/w3ctag/design-reviews/issues/991


TAG review status

Pending


Origin Trial Name

Summarization API


Chromium Trial Name

AISummarizationAPI


Origin Trial documentation link

https://developer.chrome.com/docs/ai/summarizer-api 


WebFeature UseCounter name

kSummarizer_Summarize


Risks

Interoperability and Compatibility

This feature has definite interoperability and compatibility risks, due to the likelihood that different implementations will use different language models, prompts, and fine-tunings, and even within a single implementation such as Chrome, these pieces will likely change over time. Additionally, not all browsers and operating systems will have a built-in language model to expose, and not all devices will be powerful enough to run one effectively.


We are taking a variety of steps to attempt to mitigate these risks. For example, the specification is designed to allow the API to be backed by a cloud-based language model. This approach could extend the functionality to a wider range of devices and users. The API is designed to abstract away the specifics of the underlying language model, including prompts and fine-tuning. This prevents developers from relying on specific outputs, ensuring they receive a generalized summary rather than structured data that might vary across implementations. Finally, the API surface is designed with many clear points of failure, that encourage the developer to probe for capabilities ahead of time and fall back to other techniques if a capability is not available.


Nevertheless, interoperability and compatibility risk remains high for these sorts of APIs, and we'll be closely monitoring it during the experimentation period.



Gecko: Defer (https://github.com/mozilla/standards-positions/issues/1067)


WebKit: No signal (https://github.com/WebKit/standards-positions/issues/393)


Web developers: Mixed signals (https://github.com/WICG/proposals/issues/163) Prototyping with partners behind a flag revealed enthusiasm and many prototypes built, from which we drew the discussion of potential use cases [1]. Feedback on the WICG thread was more mixed. Some themes we saw include: asking for more capabilities (e.g. full prompting of a language model instead of higher-level APIs (our response at [2]); multi-modal support); desire to make sure the API actually works robustly in many real-world use cases; removal of any safety/ethical safeguards; and confusion about client-side vs. cloud APIs. [1]: https://github.com/WICG/writing-assistance-apis/blob/main/README.md#summarizer-api [2]: https://github.com/WICG/writing-assistance-apis/blob/main/README.md#directly-exposing-a-prompt-api


Other signals:


Activation

This feature would definitely benefit from having polyfills, backed by any of: cloud services, lazily-loaded client-side models using WebGPU, or the web developer's own server. We anticipate seeing an ecosystem of such polyfills grow as more developers experiment with this API.



WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

None



Goals for experimentation
We're most interested in feedback on whether the summarization quality we can provide is useful to sites, and whether the options we've defined for controlling the summarization are useful. Additionally, we want to learn about the impact of the current API's limitations, e.g. maximum input length, to determine where we should spend our best effort lifting those limits.

The origin trial will be limited to English-language input to start. We are hoping to add support for more languages over time. Learning how much of a limitation this is, and which languages ought to be prioritized, will also be helpful.
Finally, we're also interested in feedback about the API shape and ease of use.

Reason this experiment is being extended

Since the start of Origin Trial we've incorporated developer feedback and have iterated on API shape, making several breaking changes. We would like to continue experimenting and collect feedback on the new shape before launch.

Progress since the original intent includes:

  • Spec: Spec is now complete

  • TAG review: Still pending

  • Signals requests: Firefox has updated to defer

  • Outreach for feedback from spec community: This API has been discussed at Web ML Community Group meetings.

  • WPT tests: We’ve added some basic WPT tests

API interface updates made since original intent:


Ongoing technical constraints

None.



Debuggability

It is possible that giving DevTools more insight into the nondeterministic states of the model, e.g. random seeds, could help with debugging. See related discussion at https://github.com/explainers-by-googlers/prompt-api/issues/9.



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

No

Not all platforms will come with a language model. In particular, in the initial stages we are focusing on Windows, Mac, and Linux.



Is this feature fully tested by web-platform-tests?

No

We have added some web platform test coverage for this feature (https://wpt.fyi/results/ai/summarizer?label=experimental&label=master&aligned), and plan to expand coverage of the API surface over the course of the Origin Trial. How much we are able to test beyond the surface API is unclear, given the nondeterministic nature of the output. The explainer discusses this in https://github.com/WICG/writing-assistance-apis/blob/main/README.md#specifications-and-tests.



Flag name on about://flags

summarization-api-for-gemini-nano


Finch feature name

EnableAISummarizationAPI


Requires code in //chrome?

True


Tracking bug

https://issues.chromium.org/issues/351744634


Estimated milestones

Origin trial desktop first


131


Origin trial desktop last


136


Origin trial extension 1 end milestone


139


DevTrial on desktop


129



Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5193953788559360


Links to previous Intent discussions

Intent to Prototype: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra8iMt24s_jP9Ng9_RKU3cH4wFywAt00kitJCeMJ3CaUAw%40mail.gmail.com

Intent to Experiment: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra8d6bZo%2B9-8Rum0N%3D4oFpwVfquqAzRC7mu1GTyVeDWw5A%40mail.gmail.com


Alex Russell

unread,
Apr 16, 2025, 11:08:03 AMApr 16
to blink-dev, Ayu Ishii
hey Ayu,

Thanks for including the changes since the original intent. Great to see things evolve while in OT.

Has there been feedback on this so far? Anything y'all can share?

Best,

Alex

Ayu Ishii

unread,
Apr 16, 2025, 6:35:43 PMApr 16
to blink-dev, Alex Russell, Ayu Ishii
Hi Alex!

Yes, here is some positive quantitative feedback we've gathered via surveys as of February 2025 (similar to Translator API).
We've also publicly shared a more recent snapshot of feedback at BlinkOn: bit.ly/blinkon-2025-builtin-ai  (slide 34).
Origin Trial signups have been 5x higher than what we see from typical Origin Trials which suggest a lot of interest.
We also have third-party partners excited to launch with this API.

Best,
Ayu

Mike Taylor

unread,
Apr 17, 2025, 12:19:30 PMApr 17
to Ayu Ishii, blink-dev, Alex Russell

LGTM to extend from 137 to M139 inclusive.

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/b88218e2-f260-4eaa-9bb2-c394dcf26f76n%40chromium.org.
Reply all
Reply to author
Forward
0 new messages