コード実行により、Gemini モデルが Python サンドボックスにアクセスし、コードを実行して結果から学べるようになります。コード実行を有効にすると、Gemini モデルが計算したり、複雑なデータセットを分析したり、視覚表現を即座に作成したりできるので、ユーザーのクエリに対する最終的な回答が向上します。現在、この機能は、Google AI Studio と Gemini API の両方で、Gemini 2.0 モデルを通して一般提供されています。
コード実行は、Google AI Studio の [Tools] パネルで切り替えて、または Gemini API の tools 変数から有効にすることができます(下を参照)。
from google import genai
from google.genai import types
client = genai.Client(api_key="GEMINI_API_KEY")
response = client.models.generate_content(
model='gemini-2.0-flash',
contents="""
What is the sum of the first 50 prime numbers?
Generate and run code for the calculation.
""",
config=types.GenerateContentConfig(
tools=[types.Tool(
code_execution=types.ToolCodeExecution
)]
)
)
ツールにコード実行を追加すると、モデルがコード実行サンドボックスにアクセスし、最長 30 秒、最大 5 回のコードを再プロンプトなしで実行できます。コード実行環境には、Numpy、Pandas、Matplotlib(グラフのレンダリング用)などのライブラリが含まれます。利用できるすべてのライブラリのリストは、API ドキュメントに記載されています。近日中に、サポートするライブラリを増やす予定です。
Gemini 2.0 では、コード実行ツールが更新され、コード実行サンドボックスへのファイル入力と、Matplotlib によるグラフと図の出力が可能になりました。この更新により、コード実行のユースケースが広がり、次のようなことを実現できます。
ここで、コード実行の実例を 2 つ紹介しましょう。
このデモでは、Multimodal Live API とコード実行を組み合わせ、Gemini モデルとのライブ会話を通して、音声入力とコード実行の両方を利用してみます。Gemini モデルに依頼し、Tom Cruise の映画のリストを上映時間順に並べてから、Matplotlib で棒グラフを作成し、データを視覚化してもらいます。Gemini モデルは、タスクを実行する Python コードを生成したあと、追加リクエスト(バーの色の変更)を受けてチャートを更新します。
このデモでは、Gemini 2.0 Flash Thinking Experimental モデルとコード実行を利用して、古典的な最適化問題を解きます。セールスマンがスペインの 5 つの都市を訪れて、出発点の都市に戻る場合の最短ルートを見つけるよう Gemini に依頼します。Gemini は Python コードを生成し、反復的にデバッグ(初期ライブラリ エラーを修正)したうえで、距離を計算し、最終的に最適なルートを Matplotlib グラフで視覚化します。
自分で試してみたい方は、GitHub をチェックし、コード実行を行ってみましょう。その他の例やデモは、Gemini API ドキュメントで確認できます。使われているコード実行のシナリオなども調べることができます。
Gemini API デベロッパー フォーラムに参加し、ユースケースやコード実行の改善につながるフィードバックを共有してください。近日中に、ライブラリのサポートを拡大して、PDF などの他の入力モードをサポートし、マルチツールにも対応したいと考えています。楽しい開発を!