思考モデルは、レスポンスを返す前に内部の「思考」プロセスを生成します。この機能により、モデルは複雑なマルチステップの計画を実行し、数学の問題を解決して、正確なコードを生成できます。
このページでは、次の方法について説明します。
サポートされているモデル
思考がサポートされているのは、次のモデルです。
クリックしてサポートされているモデルを開く
- Gemini Omni Flash
- Gemini Omni 1.1 Flash
- Gemini Nano Banana 2.1
- Gemini 4 Argon Cyber Permissive
- Gemini 4 Argon
- Gemini 3.8 Flash Cyber
- Gemini 3.8 Flash
- Gemini 3.7 Flash
- Gemini 3.6 Flash
- Gemini 3.5 Flash-Lite
- Gemini 3.5 Flash
- Gemini 3.1 Pro
- Gemini 3.1 Flash-Lite Image(Nano Banana 2 Lite)
- Gemini 3.1 Flash-Lite
- Gemini 3.1 Flash Image
- Gemini 3 Pro Image
- Gemini 3 Flash
- Gemini 2.5 Pro
- Gemini 2.5 Flash-Lite
- Gemini 2.5 Flash
モデルの思考を制御する
思考は、サポートされている Gemini モデルでデフォルトで有効になっています。Agent Studio では、生成されたレスポンスとともに、思考プロセス全体を検査できます。
モデルの動作は非決定的であるため、すべてのリクエストで思考が保証されるわけではありません。思考が有効になっていて、思考レベル、思考予算、または include_thoughts を設定している場合でも、モデルは思考せずに一部のリクエストに応答し、思考部分を返さないことがあります。アプリケーションは、思考部分を含まないレスポンスを処理する必要があります。
思考の構成方法は、モデルのバージョンによって異なります。
Gemini 3 以降のモデル
Gemini 3 モデルは thinking_level パラメータを使用します。このパラメータは、レイテンシと推論の深さの間で最適化できるように、個別の推論階層を設定します。
コンソール
-
[Agent Studio] に移動し、[新規] > [チャット] を選択して、モデルパネルを開きます。
- [モデル設定] パネルで、[モデル] メニューからサポートされているモデルを選択します。
- [思考レベル] プルダウン メニューから値を選択します。
Python
from google import genai
from google.genai import types
client = genai.Client()
response = client.models.generate_content(
model="gemini-3.5-flash",
contents="How does AI work?",
config=types.GenerateContentConfig(
thinking_config=types.ThinkingConfig(
# Options: MINIMAL, LOW, MEDIUM, HIGH
thinking_level=types.ThinkingLevel.THINKING_LEVEL_VALUE
)
),
)
print(response.text)思考レベルの値
thinking_level は次のいずれかの値に設定できます。
MINIMAL: 思考に使用するトークン数を最小限に抑えます。拡張推論を必要としない単純なタスクに最適です。MINIMALでは、マルチターン会話で思考シグネチャが必要です。省略すると、モデルは400: INVALID_ARGUMENTエラーを返します。Gemini 4 モデルではサポートされていません。LOW: 思考トークンの使用量を減らして、より迅速に回答します。タスクの複雑さが低く、高スループットのアプリケーションに最適です。MEDIUM: 推論の品質とレイテンシのバランスが取れています。中間推論ステップのメリットがある、中程度の複雑さのタスクに適しています。HIGH: 最大の思考能力を使用します。深い推論、マルチステップの問題解決、正式なコード検証、マルチターン ツール実行を必要とする複雑なプロンプトに最適です。
モデルごとにサポートされている思考レベル
次の表に、サポートされている thinking_level 値とモデル別のデフォルト構成を示します。
| モデル | サポートされる thinking_level 値 |
デフォルト |
|---|---|---|
| Gemini Nano Banana 2.1 | MINIMAL、MEDIUM、HIGH |
MEDIUM |
| Gemini 4 Argon Cyber Permissive | LOW、MEDIUM、HIGH |
HIGH |
| Gemini 4 Argon | LOW、MEDIUM、HIGH |
MEDIUM |
| Gemini 3.8 Flash Cyber | LOW、MEDIUM、HIGH |
MEDIUM |
| Gemini 3.8 Flash | LOW、MEDIUM、HIGH |
MEDIUM |
| Gemini 3.7 Flash | LOW、MEDIUM、HIGH |
MEDIUM |
| Gemini 3.6 Flash | MINIMAL、LOW、MEDIUM、HIGH |
MEDIUM |
| Gemini 3.5 Flash-Lite | MINIMAL、LOW、MEDIUM、HIGH |
MINIMAL |
| Gemini 3.5 Flash | MINIMAL、LOW、MEDIUM、HIGH |
MEDIUM |
| Gemini 3.1 Pro | LOW、MEDIUM、HIGH |
HIGH |
| Gemini 3.1 Flash-Lite Image(Nano Banana 2 Lite) | MINIMAL、HIGH |
MINIMAL |
| Gemini 3.1 Flash-Lite | MINIMAL、LOW、MEDIUM、HIGH |
MINIMAL |
| Gemini 3.1 Flash Image | MINIMAL、HIGH |
MINIMAL |
| Gemini 3 Pro Image | HIGH |
HIGH |
| Gemini 3 Flash | MINIMAL、LOW、MEDIUM、HIGH |
HIGH |
Gemini 2.5 以前のモデル
Gemini 2.5 以前のモデルでは、thinking_budget パラメータを使用して思考を構成します。このパラメータは、モデルが内部推論中に使用できるトークン数のソフトリミットを設定します。
コンソール
-
[Agent Studio] に移動し、[新規] > [チャット] を選択します。
- [モデル設定] パネルで、[モデル] メニューからサポートされているモデルを選択します。
- [思考予算] セレクタで [手動] を選択し、スライダーを使用してトークンの上限を調整します。
Python
インストール
pip install --upgrade google-genai
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Node.js
インストール
npm install @google/genai
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Go
Go をインストールまたは更新する方法について学びます。
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Java
Java をインストールまたは更新する方法について学びます。
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
予算を指定しない場合、モデルはトークン予算を最大 8,192 トークンまで動的に設定します。API で動的予算を明示的に有効にするには、thinking_budget を -1 に設定します。
モデルごとにサポートされている思考予算
次の表に、各モデルの最小、最大、デフォルトのトークン上限を示します。
| モデル | 最小トークン数 | 最大トークン数 | デフォルト |
|---|---|---|---|
| Gemini 2.5 Flash | 1 | 24,576 | 自動モード(最大 8,192 トークン) |
| Gemini 2.5 Pro | 128 | 32,768 | 自動モード(最大 8,192 トークン) |
| Gemini 2.5 Flash-Lite | 512 | 24,576 | 自動モード(最大 8,192 トークン) |
思考をオフにする
Gemini 2.5 Flash と Gemini 2.5 Flash-Lite の思考を無効にするには、thinking_budget を 0 に設定します。思考コンテンツはレスポンスで返されませんが、生成されたテキストには推論スタイルの出力が表示されることがあります。
Gemini 2.5 Pro では思考を無効にできません。
思考の要約を表示する
思考の要約には、モデルの最終的な回答とともに、中間の推論ステップが表示されます。思考の要約は、Gemini 2.5 以降のモデルでサポートされています。
コンソール
思考の要約は、Agent Studio でデフォルトで有効になっています。要約された推論ステップを表示するには、[思考プロセス] パネルを開きます。
Python
インストール
pip install --upgrade google-genai
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Node.js
インストール
npm install @google/genai
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Go
Go をインストールまたは更新する方法について学びます。
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
Java
Java をインストールまたは更新する方法について学びます。
詳しくは、SDK リファレンス ドキュメントをご覧ください。
Vertex AI で Google Gen AI SDK を使用するための環境変数を設定します。
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_ENTERPRISE=True
次の場合、レスポンスは思考サマリー テキストなしで思考シグネチャを返すことがあります。
- 複雑さの低いリクエスト: リクエストに必要な推論ステップが最小限である。
- 無効な要約: 思考の要約がリクエストされていないか、オフになっています。
- テキスト以外のモダリティ: 特定のモダリティ(画像分析など)に対する推論では、テキストの要約が生成されない場合があります。
アプリケーションは、空の思考サマリー フィールドや欠落している思考サマリー フィールドを適切に処理し、付随する思考シグネチャを保持する必要があります。
思考シグネチャ
思考シグネチャは、モデルの内部推論状態を暗号化したものです。特に関数呼び出しを使用する場合に、マルチターンの会話でコンテキストを維持します。
マルチターンのやり取りで推論コンテキストを保持するには、設定された思考レベルに関係なく、以前のレスポンスで返された思考シグネチャを後続のリクエストに渡します。
公式の Google Gen AI SDK(Python、Node.js、Go、Java)を使用している場合、標準チャット セッションを使用しているとき、または完全なレスポンス オブジェクトをメッセージの履歴に追加しているときに、思考シグネチャが自動的に管理されます。
実装パターン、要件、例については、思考シグネチャをご覧ください。
料金
思考プロセス中に生成されたトークンに対して課金されます。Gemini 3 Pro や Gemini 2.5 Pro など、思考がデフォルトで有効になっているモデルでは、これらの思考トークンが課金対象の使用量に含まれます。
料金の詳細については、料金をご覧ください。