このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Translator: inputQuota プロパティ

利用可能性は限定的

この機能はベースラインではありません。最も広く使用されているブラウザーの一部で動作しません。

Want more browser support for this feature? Tell us why.

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

inputQuotaTranslator インターフェイスの読み取り専用プロパティで、翻訳を生成するためにブラウザーが利用できる入力クォータ(容量)を返します。

利用できる入力クォータを示す数値。

この数値は実装に依存します。例えば、ユーザーのメモリーや JavaScript 文字列の最大長を超える制限がない場合は Infinity となることもありますし、トークン/クレジット方式を採用している AI モデルの場合、トークンの数となることもあります。

唯一保証されるのは、テキストを対応させるのに十分なクォータがある場合、inputQuota - measureInputUsage() が負ではない値になるということです。

十分なクォータが確保されているか調べる

次のコード例では、create() を使用して新しい Translator インスタンスを生成し、inputQuota を通じて総入力クォータを返し、measureInputUsage() を通じて具体的なテキスト文字列に対応させるための入力クォータの使用量を返します。

次に、その文字列に対する個別の使用量が、利用できる割り当て総量を超えているかどうかを検査します。超えている場合は、適切なエラーを発生させます。超えていない場合は、translate() を使用して文字列の翻訳を開始します。

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

const totalInputQuota = translator.inputQuota;
const inputUsage = await translator.measureInputUsage(myTextString);

if (inputUsage > totalInputQuota) {
  throw new Error("翻訳に十分なクォータがありません。");
} else {
  console.log("翻訳に利用可能なクォータがあります。");
  const translation = await translator.translate(myTextString);
  // ...
}

仕様書

仕様書
Translator and Language Detector APIs
# dom-translator-inputquota

ブラウザーの互換性

関連情報