Summarizer: summarizeStreaming() method
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The summarizeStreaming()
method of the Summarizer
interface generates a new summary as a ReadableStream
.
Syntax
summarizeStreaming(input)
summarizeStreaming(input, options)
Parameters
input
-
A string representing the text to be summarized.
options
Optional-
An object specifying configuration options for the
summarizeStreaming()
operation. Possible values include:context
-
A string describing the context the input text is being used in, which helps the
Summarizer
generate a more suitable summary. signal
-
An
AbortSignal
object instance, which allows thesummarizeStreaming()
operation to be aborted via the associatedAbortController
.
Return value
A ReadableStream
containing the generated summary.
Exceptions
InvalidStateError
DOMException
-
Thrown if the current
Document
is not active. NotAllowedError
DOMException
-
Thrown if usage of the Summarizer API is blocked by a
summarizer
Permissions-Policy
. NotReadableError
DOMException
-
Thrown if the output summary was filtered by the user agent, for example because it was detected to be harmful, inaccurate, or nonsensical.
NotSupportedError
DOMException
-
Thrown if the provided
context
is not in language theSummarizer
supports. QuotaExceededError
DOMException
-
Thrown if the summarize operation exceeds the available
inputQuota
. UnknownError
DOMException
-
Thrown if the
summarizeStreaming()
call failed for any other reason, or a reason the user agent did not wish to disclose.
Examples
Basic summarizeStreaming()
usage
const summarizer = await Summarizer.create({
sharedContext:
"A general summary to help a user decide if the text is worth reading",
type: "tl;dr",
length: "short",
});
const stream = summarizer.summarizeStreaming(myTextString);
let summary = "";
for await (const chunk of stream) {
summary += chunk;
}
console.log("Stream complete");
summaryOutput.textContent = summary;
Specifications
Specification |
---|
Writing Assistance APIs # dom-summarizer-summarizestreaming |
Browser compatibility
See also
- Using the Summarizer API
- Web AI demos on chrome.dev