ウェブアプリのハイブリッド エクスペリエンスの構成オプション

このページでは、次の構成オプションについて説明します。

JSON や列挙型などの構造化出力を生成することもできます。

始める前に

ハイブリッド エクスペリエンスの構築の スタートガイドを完了していることを確認してください。

推論モードを設定する

スタートガイドの例では PREFER_ON_DEVICE モードを使用していますが、 これは使用可能な 4 つの 推論モードの 1 つにすぎません。

  • PREFER_ON_DEVICE: デバイス上のモデルが使用可能な場合は使用します。使用できない場合は、 クラウド ホスト型モデルにフォールバックします。

    const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_ON_DEVICE });
    
  • ONLY_ON_DEVICE: デバイス上のモデルが使用可能な場合は使用します。使用できない場合は、 例外をスローします。

    const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_ON_DEVICE });
    
  • PREFER_IN_CLOUD: クラウド ホスト型モデルが使用可能な場合は使用します。使用できない場合は、 デバイス上のモデルにフォールバックします。

    const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_IN_CLOUD });
    
  • ONLY_IN_CLOUD: クラウド ホスト型モデルが使用可能な場合は使用します。使用できない場合は、 例外をスローします。

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

デバイス上の推論とクラウド内の推論のどちらが使用されたかを判断する

PREFER_ON_DEVICE 推論モードまたは PREFER_IN_CLOUD 推論モードを使用する場合は、特定のリクエストにどちらのモードが使用されたかを知っておくと便利です。この情報は、各レスポンスの inferenceSource プロパティによって提供されます(JS SDK v12.5.0 以降で使用可能)。

このプロパティにアクセスすると、返される値は ON_DEVICE または IN_CLOUD になります。

// ...

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

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

デフォルトのフォールバック モデルをオーバーライドする

デフォルトのクラウド ホスト型モデルは gemini-2.5-flash-lite です(JS SDK v12.8.0 以降)。

このモデルは、PREFER_ON_DEVICE モードを使用する場合のフォールバック クラウド ホスト型モデルです。また、ONLY_IN_CLOUD モードまたは PREFER_IN_CLOUD モードを使用する場合のデフォルト モデルでもあります。

inCloudParams 構成オプションを使用して、代替のデフォルト クラウド ホスト型モデルを指定できます。

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

サポートされているすべての Gemini モデルのモデル名を確認する

モデル構成を使用してレスポンスを制御する

モデルに対するリクエストごとに、モデル構成を送信して、モデルがレスポンスを生成する方法を制御できます。クラウド ホスト型モデルとデバイス上のモデルでは、構成オプションが異なります。

構成はインスタンスの有効期間中維持されます。別の構成を使用する場合は、その構成で新しい GenerativeModel インスタンスを作成します。

クラウド ホスト型モデルを構成する

inCloudParams オプションを使用して、クラウド ホスト型 Gemini モデルを構成します。使用可能な パラメータについて学習する。

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

デバイス上のモデルを構成する

デバイス上のモデルを使用した推論では、 Chrome の Prompt API が使用されます。

onDeviceParams オプションを使用して、デバイス上のモデルを構成します。使用可能な パラメータについて学習する。

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