Translator

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

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 Experimental

The input quota available to the browser for generating translations.

sourceLanguage Read only Experimental

The expected language of the input text to be translated.

targetLanguage Read only Experimental

The language that the input text will be translated into.

Static methods

availability() Experimental

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

create() Experimental

Creates a new Translator instance from which to generate translations.

Instance methods

destroy() Experimental

Destroys the Translator instance it is called on.

measureInputUsage() Experimental

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

translate() Experimental

Returns a string containing a translation of the input string.

translateStreaming() Experimental

Generates a translation of the input string as a ReadableStream.

Examples

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