Gemini API でツールを使用する

ツールは Gemini モデルの機能を拡張し、モデルが世界でアクションを実行したり、リアルタイムの情報にアクセスしたり、複雑な計算タスクを実行したりできるようにします。モデルは、標準のリクエストとレスポンスのやり取りと、Live API を介したリアルタイム ストリーミング セッションの両方でツールを使用できます。

Gemini API は、Gemini モデル用に最適化されたフルマネージドの組み込みツール スイートを提供します。また、関数呼び出しを使用してカスタムツールを定義することもできます。

使用可能な組み込みツール

ツール 説明 ユースケース
Google 検索 ウェブ上の最新の出来事や事実に基づいて回答を生成し、ハルシネーションを減らします。 - 最近の出来事に関する質問に答える
- さまざまなソースで事実を確認する
Google マップ 場所の検索、ルートの取得、豊富なローカル コンテキストの提供が可能な位置認識アシスタントを構築します。 - 複数の立ち寄り先を含む旅行プランの作成
- ユーザーの条件に基づいてローカル ビジネスを検索する
コードの実行 モデルが Python コードを記述して実行し、数学の問題を解決したり、データを正確に処理したりできるようにします。 - 複雑な数式を解く
- テキストデータを正確に処理して分析する
URL コンテキスト 特定のウェブページやドキュメントのコンテンツを読み取って分析するようにモデルに指示します。 - 特定の URL またはドキュメントに基づいて質問に回答する
- さまざまなウェブページから情報を取得する
コンピュータの使用(プレビュー) Gemini が画面を表示し、ウェブブラウザの UI を操作するアクションを生成できるようにします(クライアントサイドの実行)。 - 繰り返し発生するウェブベースのワークフローの自動化
- ウェブ アプリケーションのユーザー インターフェースのテスト
ファイル検索 独自のドキュメントをインデックス登録して検索し、検索拡張生成(RAG)を有効にします。 - 技術マニュアルの検索
- 独自データに関する質問への回答

特定のツールに関連する費用の詳細については、料金ページをご覧ください。

ツールの実行の仕組み

ツールを使用すると、モデルは会話中にアクションをリクエストできます。フローは、ツールが組み込み(Google が管理)かカスタム(ユーザーが管理)かによって異なります。

組み込みツールのフロー

Google 検索やコード実行などの組み込みツールの場合、プロセス全体が 1 回の API 呼び出しで行われます。

  1. ユーザーが「GOOG の最新の株価の平方根は?」というプロンプトを送信します。
  2. Gemini は、ツールが必要であると判断し、Google のサーバーでツールを実行します(株価を検索してから、Python コードを実行して平方根を計算するなど)。
  3. Gemini は、ツールの結果に基づいて最終的な回答を返します。

カスタムツールフロー(関数呼び出し)

カスタムツールとコンピュータの使用の場合、アプリケーションが実行を処理します。

  1. ユーザーは、プロンプトと関数(ツール)の宣言を送信します。
  2. Gemini は、特定の関数({"name": "get_order_status", "args": {"order_id": "123"}} など)を呼び出すために、構造化された JSON を返送する場合があります。
  3. ユーザーがアプリケーションまたは環境で関数を実行します。
  4. ユーザーは、関数結果を Gemini に送り返します。
  5. Gemini は、結果を使用して最終レスポンスまたは別のツール呼び出しを生成します。

詳しくは、関数呼び出しガイドをご覧ください。

構造化出力と関数呼び出し

Gemini には、構造化された出力を生成する 2 つの方法があります。モデルが独自のツールやデータシステムに接続して中間ステップを実行する必要がある場合は、関数呼び出しを使用します。カスタム UI のレンダリングなど、モデルの最終的なレスポンスが特定のスキーマに厳密に準拠する必要がある場合は、構造化された出力を使用します。

エージェントの構築

エージェントは、モデルとツールを使用してマルチステップ タスクを完了するシステムです。Gemini は推論機能(「脳」)と不可欠なツール(「手」)を提供しますが、エージェントのメモリの管理、プランループの実行、複雑なツールチェーンの実行には、オーケストレーション フレームワークが必要になることがよくあります。

Gemini は、主要なオープンソース エージェント フレームワークと統合されています。

  • LangChain / LangGraph: グラフ構造を使用して、ステートフルで複雑なアプリケーション フローとマルチエージェント システムを構築します。
  • LlamaIndex: Gemini エージェントを非公開データに接続して、RAG 強化ワークフローを実現します。
  • CrewAI: 共同作業を行うロールプレイングの自律型 AI エージェントをオーケストレートします。
  • Vercel AI SDK: JavaScript/TypeScript で AI を活用したユーザー インターフェースとエージェントを構築します。
  • Google ADK: 相互運用可能な AI エージェントを構築してオーケストレートするためのオープンソース フレームワーク。