Firefox Tomorrow

web api instance method

Summarizer: summarizeStreaming() method

View on MDN ↗

Limited availabilitySecure context

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 the summarizeStreaming() operation to be aborted via the associated AbortController.

Return value

A ReadableStream containing the generated summary.

Exceptions

  • AbortError DOMException
    • : Thrown if the Summarizer was previously destroyed (had destroy() called on it, or was aborted via its abort signal after creation).
  • InvalidStateError DOMException
    • : Thrown if the current Document is not active.
  • NotAllowedError DOMException
  • 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 the Summarizer supports.
  • QuotaExceededError
    • : 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: "tldr",
  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

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.

See also