Konfigurationsoptionen für hybride Funktionen in Web-Apps


Auf dieser Seite werden die folgenden Konfigurationsoptionen beschrieben:

Sie können auch strukturierte Ausgaben generieren, einschließlich JSON und Enums.

Hinweis

Achten Sie darauf, dass Sie den Leitfaden für die ersten Schritte zum Erstellen hybrider Erlebnisse durchgearbeitet haben.

Inferenzmodus festlegen

In den Beispielen im Leitfaden für die ersten Schritte wird der PREFER_ON_DEVICE Modus verwendet. Dies ist jedoch nur einer der vier verfügbaren Inferenzmodi.

  • PREFER_ON_DEVICE: Verwenden Sie das Modell auf dem Gerät, wenn es verfügbar ist. Andernfalls greifen Sie auf das Modell in der Cloud zurück.

    const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_ON_DEVICE });
    
  • ONLY_ON_DEVICE: Verwenden Sie das Modell auf dem Gerät, wenn es verfügbar ist. Andernfalls wird eine Ausnahme ausgelöst.

    const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_ON_DEVICE });
    
  • PREFER_IN_CLOUD: Verwenden Sie das Modell in der Cloud, wenn es verfügbar ist. Andernfalls greifen Sie auf das Modell auf dem Gerät zurück.

    const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_IN_CLOUD });
    
  • ONLY_IN_CLOUD: Verwenden Sie das Modell in der Cloud, wenn es verfügbar ist. Andernfalls wird eine Ausnahme ausgelöst.

    const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_IN_CLOUD });
    

Festlegen, ob die Inferenz auf dem Gerät oder in der Cloud verwendet wurde

Wenn Sie die Inferenzmodi PREFER_ON_DEVICE oder PREFER_IN_CLOUD verwenden, kann es hilfreich sein zu wissen, welcher Modus für bestimmte Anfragen verwendet wurde. Diese Informationen werden durch die Eigenschaft inferenceSource jeder Antwort bereitgestellt (verfügbar ab JS SDK v12.5.0).

Wenn Sie auf diese Eigenschaft zugreifen, ist der zurückgegebene Wert entweder ON_DEVICE oder IN_CLOUD.

// ...

console.log('You used: ' + result.response.inferenceSource);

console.log(result.response.text());

Standard-Fallbackmodell überschreiben

Das Standardmodell für die Cloud ist gemini-2.5-flash-lite (ab JS SDK v12.8.0).

Dieses Modell ist das Fallbackmodell für die Cloud, wenn Sie den Modus PREFER_ON_DEVICE verwenden. Es ist auch das Standardmodell, wenn Sie den Modus ONLY_IN_CLOUD oder PREFER_IN_CLOUD verwenden.

Mit der inCloudParams Konfigurationsoption können Sie ein alternatives Standardmodell für die Cloud angeben.

const model = getGenerativeModel(ai, {
  mode: InferenceMode.INFERENCE_MODE,
  inCloudParams: {
    model: "GEMINI_MODEL_NAME"
  }
});

Modellnamen für alle unterstützten Gemini-Modelle finden.

Modellkonfiguration verwenden, um Antworten zu steuern

In jeder Anfrage an ein Modell können Sie eine Modellkonfiguration senden, um zu steuern, wie das Modell eine Antwort generiert. Für Modelle in der Cloud und Modelle auf dem Gerät sind unterschiedliche Konfigurationsoptionen verfügbar.

Die Konfiguration bleibt für die Lebensdauer der Instanz erhalten. Wenn Sie eine andere Konfiguration verwenden möchten, erstellen Sie eine neue GenerativeModel-Instanz mit dieser Konfiguration.

Modell in der Cloud konfigurieren

Verwenden Sie die inCloudParams Option, um ein in der Cloud gehostetes Gemini Modell zu konfigurieren. Weitere Informationen zu verfügbaren Parametern.

const model = getGenerativeModel(ai, {
  mode: InferenceMode.INFERENCE_MODE,
  inCloudParams: {
    model: "GEMINI_MODEL_NAME"
    temperature: 0.8,
    topK: 10
  }
});

Modell auf dem Gerät konfigurieren

Bei der Inferenz mit einem Modell auf dem Gerät wird die Prompt API von Chrome verwendet.

Verwenden Sie die onDeviceParams Option, um ein Modell auf dem Gerät zu konfigurieren. Weitere Informationen zu verfügbaren Parametern.

const model = getGenerativeModel(ai, {
  mode: InferenceMode.INFERENCE_MODE,
  onDeviceParams: {
    createOptions: {
      temperature: 0.8,
      topK: 8
    }
  }
});