Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

LanguageModel: contextUsage-Eigenschaft

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Die schreibgeschützte contextUsage-Eigenschaft der LanguageModel-Schnittstelle gibt die Anzahl der Kontextfenster-Token zurück, die momentan von der Sitzung verbraucht werden, die sie aufruft, einschließlich anfänglicher Eingabeaufforderungen und aller nachfolgenden Runden.

Dieser Wert erhöht sich jedes Mal, wenn Sie prompt(), promptStreaming() oder append() aufrufen.

Vergleichen Sie contextUsage mit LanguageModel.contextWindow, um zu bestimmen, wie viele Token noch verbleiben. Wenn contextUsage contextWindow überschreiten würde, werfen nachfolgende Methodenaufrufe einen QuotaExceededError und das contextoverflow-Ereignis wird ausgelöst.

Um abzuschätzen, wie viele Token eine neue Eingabeaufforderung verwenden würde, bevor sie gesendet wird, rufen Sie LanguageModel.measureContextUsage() auf.

Wert

Eine Zahl, die die aktuelle Nutzung des Kontextfensters in Token repräsentiert.

Beispiele

Überwachung der Kontextnutzung während eines Gesprächs

Dieses Beispiel schreibt die Kontextnutzung in die Konsole, nachdem eine Sitzungseingabeaufforderung abgeschlossen ist.

js
const session = await LanguageModel.create();

await session.prompt("Tell me about the history of the internet.");

console.log(
  `Context used: ${session.contextUsage} / ${session.contextWindow} tokens`,
);

Warnung, wenn der Kontext fast voll ist

Das folgende Beispiel verwendet eine Funktion, um zu überprüfen, ob Kontext verfügbar ist, bevor LanguageModel.prompt() aufgerufen wird. Es berechnet zuerst den verbleibenden Kontext und übergibt diesen Wert an measureContextUsage(). Wenn needed kleiner oder gleich remaining ist, gibt es true zurück und die Sitzung wird fortgesetzt.

js
const promptText = "Let me ask you an interesting question...";
const session = await LanguageModel.create();

async function contextAvailable(promptText) {
  const remaining = session.contextWindow - session.contextUsage;
  const needed = await session.measureContextUsage(promptText);

  return needed <= remaining;
}

if (await contextAvailable(promptText)) {
  const response = await session.prompt(promptText);
  console.log(response);
} else {
  console.warn("Prompt skipped: Not enough context window remaining.");
}

Spezifikationen

Spezifikation
Prompt API
# dom-languagemodel-contextusage

Browser-Kompatibilität

Siehe auch