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 Startleitfaden für die Entwicklung hybrider Erlebnisse durchgearbeitet haben.

Inferenzmodus festlegen

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

  • PREFER_ON_DEVICE: Das On-Device-Modell wird verwendet, sofern verfügbar. Andernfalls wird auf das in der Cloud gehostete Modell zurückgegriffen.

    const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_ON_DEVICE });
    
  • ONLY_ON_DEVICE: Das On-Device-Modell wird verwendet, sofern verfügbar. Andernfalls wird eine Ausnahme ausgelöst.

    const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_ON_DEVICE });
    
  • PREFER_IN_CLOUD: Verwenden Sie das in der Cloud gehostete Modell, falls verfügbar. Andernfalls greifen Sie auf das On-Device-Modell zurück.

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

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

Ermitteln, 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 über das Attribut 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 standardmäßige cloudbasierte Modell ist gemini-2.5-flash-lite (ab JS SDK v12.8.0).

Dieses Modell ist das Fallback-Modell, das in der Cloud gehostet wird, 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 Konfigurationsoption inCloudParams können Sie ein alternatives standardmäßiges cloudbasiertes Modell angeben.

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

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

Antworten mit der Modellkonfiguration steuern

In jeder Anfrage an ein Modell können Sie eine Modellkonfiguration senden, um zu steuern, wie das Modell eine Antwort generiert. Cloudbasierte und geräteinterne Modelle bieten unterschiedliche Konfigurationsoptionen.

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

In der Cloud gehostetes Modell konfigurieren

Verwenden Sie die Option inCloudParams, um ein in der Cloud gehostetes Gemini-Modell zu konfigurieren. Verfügbare Parameter

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

On-Device-Modell konfigurieren

Für die Inferenz mit einem On-Device-Modell wird die Prompt API von Chrome verwendet.

Verwenden Sie die Option onDeviceParams, um ein On-Device-Modell zu konfigurieren. Verfügbare Parameter

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