WebAI Studio The Classifier API (window.Classifier) evaluates input text against a caller-defined schema of structured questions (binary, categorical, and ordinal) on the user's device, returning a selected option label, confidence score, and probability distribution for each question.
#classifier-api in chrome://flags to use this API. Map a user's natural-language input or support request to a predefined set of application actions, departments, or UI filters.
Evaluate drafts or comments locally against boolean criteria (such as policy checks or tone checks) before submitting or escalating to a generative model.
Score items along an ordered scale (such as 1 to 5 severity or relevance) and read the expected value expectedScore.
A schema passed to Classifier.create() contains a questions array. Each question specifies an id, a prompt, and one of three type values:
| Type | Options Required | Output Fields |
|---|---|---|
| binary | No (implicit "true" / "false") | Returns label ("true" or "false"), probability, confidence, and probabilities. |
| categorical | Yes (2 or more { label, description } items) | Returns the top option label, confidence, and probabilities across all options. |
| ordinal | Yes (ordered levels, e.g., "1" through "5") | Returns label, expectedScore (weighted average across levels), standardError, confidence, and probabilities. |
Checks whether the browser supports creating a classifier session for the given options.
staticavailability(options?: ClassifierCreateOptions): Promise<Availability>; A promise that resolves to an Availability string: 'available', 'downloadable', 'downloading', or 'unavailable'.
Creates a new Classifier instance configured with the provided question schema.
staticcreate(options: ClassifierCreateOptions): Promise<Classifier>; Evaluates the input string against all questions defined in the session schema and returns a ClassifierResult.
classify(input: DOMString, options?: ClassifierClassifyOptions): Promise<ClassifierResult>; | Property | Type | Description |
|---|---|---|
| id | DOMString | The question identifier defined in the schema. |
| label | DOMString | The highest-probability option label ("true"/"false" for binary, or one of the supplied options). |
| confidence | double (0.0 – 1.0) | Confidence score for the decision. |
| probability | double? (0.0 – 1.0) | Present for binary questions: probability of "true". |
| expectedScore | double? | Present for ordinal questions: weighted average across the ordered option levels. |
| standardError | double? | Optional standard error around expectedScore. |
| probabilities | sequence<OptionProbability> | List of { label, probability } entries across all options for the question. |
Releases the resources associated with the classifier session when it is no longer needed.