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


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

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
    }
  }
});