Summarizer:availability() 静态方法
Summarizer
接口的 availability()
静态方法返回一个枚举值,指示浏览器 AI 模型是否支持(或将支持)给定的 Summarizer
配置。
语法
Summarizer.availability()
Summarizer.availability(options)
参数
options
可选-
指定
Summarizer
可能配置的选项对象。可能的值包括expectedInputLanguages
-
一个字符串数组,等于 BCP 47 语言标签,指定输入文本的预期语言。默认为
["en"]
。 expectedContextLanguages
-
一个字符串数组,等于 BCP 47 语言标签,指定提供的任何上下文字符串(传递给
Summarizer
的sharedContext
,或在summarize()
或summarizeStreaming()
调用期间指定的context
)的预期语言。默认为["en"]
。 格式(format)
-
一个枚举值,指定您希望摘要返回的文本
format
。默认为markdown
。 length
-
一个枚举值,指定生成的摘要的相对
length
。默认为short
。 outputLanguage
-
一个字符串,等于 BCP 47 语言标签,指定
Summarizer
生成的摘要的预期语言。默认为en
。 type
-
一个枚举值,指定您希望此
Summarizer
生成的摘要的type
。默认为key-points
。
返回值
一个 Promise
,该 Promise fulfilled 时会返回一个枚举值,指示给定 Summarizer
配置的支持是否可用(或将可用),如果无法确定支持,则返回 null
。
可能的值包括:
available
-
浏览器支持给定的配置,并可立即使用。
downloadable
-
浏览器支持给定的配置,但需要先下载 AI 模型或模型的某些微调数据。
downloading
-
浏览器支持给定的配置,但需要完成正在进行的下载才能继续。
-
浏览器不支持给定的配置。
异常
NotAllowedError
DOMException
-
如果 Summarizer API 的使用被
summarizer
Permissions-Policy
阻止,则会抛出此错误。 NotSupportedError
DOMException
-
如果提供的
context
的语言不是Summarizer
支持的语言,则抛出此异常。 UnknownError
DOMException
-
如果
measureInputUsage()
调用因任何其他原因失败,或用户代理不希望披露的原因而失败,则抛出此异常。
示例
基本的 availability()
用法
async function getSummarizer() {
const options = {
sharedContext: "This is a scientific article",
type: "key-points",
format: "markdown",
length: "medium",
};
const availability = await Summarizer.availability(options);
if (availability === "unavailable") {
// The Summarizer API isn't usable
return undefined;
} else if (availability === "available") {
// The Summarizer API can be used immediately
return Summarizer.create(options);
}
// The Summarizer API can be used after the model is downloaded
const summarizer = await Summarizer.create(options);
summarizer.addEventListener("downloadprogress", (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
return summarizer;
}
检测语言支持
async function langSupport(lang) {
const availability = await Summarizer.availability({
expectedInputLanguages: [lang],
});
return availability;
}
langSupport("en-US");
langSupport("fr");
langSupport("zh-CN");
规范
规范 |
---|
写作辅助 API # dom-summarizer-availability |
浏览器兼容性
加载中…