Translator

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The Translator interface of the Translator and Language Detector APIs contains all the associated translation functionality, including checking AI model availability, creating a new Translator instance, using it to create a translation, and more.

Instance properties

inputQuota Read only

The input quota available to the browser for generating translations.

sourceLanguage Read only

The expected language of the input text to be translated.

targetLanguage Read only

The language that the input text will be translated into.

Static methods

availability()

Returns an enumerated value that indicates the availability of the AI model for the given Translator configuration.

create()

Creates a new Translator instance from which to generate translations.

Instance methods

destroy()

Releases the resources assigned to the Translator instance it is called on and stops any further activity on it.

measureInputUsage()

Reports how much input quota would be used by a translation operation for a given text input.

translate()

Returns a string containing a translation of the input string.

translateStreaming()

Generates a translation of the input string as a ReadableStream.

Examples

See Using the Translator and Language Detector APIs for a complete example.

Creating a Translator instance

js
const translator = await Translator.create({
  sourceLanguage: "en",
  targetLanguage: "ja",
});

Generating a translation

js
const translation = await translator.translate(myTextString);
console.log(translation);

Generating a translation stream

js
const stream = translator.translateStreaming(myTextString);
let translation = "";

for await (const chunk of stream) {
  translation += chunk;
}

console.log("Stream complete");
console.log(translation);

Specifications

Specification
Translator and Language Detector APIs
# translator

Browser compatibility

See also