コードの実行

Gemini API のコード実行機能を使用すると、モデルは Python コードを生成して実行し、最終的な出力に到達するまで結果から反復的に学習できます。このコード実行機能を使用すると、コードベースの推論を活用し、テキスト出力を生成するアプリケーションを構築できます。たとえば、方程式を解くアプリケーションやテキストを処理するアプリケーションでコード実行を使用できます。

コード実行は、AI Studio と Gemini API の両方で使用できます。AI Studio では、右側のパネルの [ツール] でコード実行を有効にできます。Gemini API は、関数呼び出しと同様に、コード実行をツールとして提供します。コード実行をツールとして追加すると、モデルがコード実行を使用するタイミングを決定します。

コード実行環境には、altairchesscv2matplotlibmpmathnumpypandaspdfminerreportlabseabornsklearnstatsmodelsstriprtfsympytabulate のライブラリが含まれています。独自のライブラリをインストールすることはできません。

始める前に

Gemini API を呼び出す前に、任意の SDK がインストールされ、Gemini API キーが構成され、使用可能であることを確認してください。

コード実行の開始

入出力(I/O)

Gemini 2.0 Flash 以降、コード実行はファイル入力とグラフ出力をサポートしています。これらの新しい入出力機能を使用すると、CSV ファイルとテキスト ファイルをアップロードし、ファイルに関する質問をしたり、レスポンスの一部として Matplotlib グラフを生成したりできます。

I/O の料金

コード実行 I/O を使用すると、入力トークンと出力トークンが課金されます。

入力トークン:

  • ユーザーによるプロンプト

出力トークン:

  • モデルによって生成されたコード
  • コード環境でのコード実行の出力
  • モデルによって生成された概要

I/O の詳細

コード実行 I/O を扱う場合は、次の技術的な詳細に注意してください。

  • コード環境の最大ランタイムは 30 秒です。
  • コード環境でエラーが発生した場合、モデルはコード出力を再生成することを決定する場合があります。この操作は最大 5 回行えます。
  • ファイル入力の最大サイズは、モデルトークン ウィンドウによって制限されます。AI Studio で Gemini Flash 2.0 を使用する場合、入力ファイルの最大サイズは 100 万トークンです(サポートされている入力タイプのテキスト ファイルの場合は約 2 MB)。サイズが大きすぎるファイルをアップロードすると、AI Studio では送信できません。
シングルターン 双方向(Multimodal Live API)
サポートされているモデル Gemini 2.0 のすべてのモデル Flash の試験運用版モデルのみ
サポートされているファイル入力タイプ .png、.jpeg、.csv、.xml、.cpp、.java、.py、.js、.ts .png、.jpeg、.csv、.xml、.cpp、.java、.py、.js、.ts
サポートされているプロット ライブラリ Matplotlib Matplotlib
複数のツールの使用 いいえ はい

課金

Gemini API からのコード実行を有効にしても、追加料金は発生しません。使用している Gemini モデルに基づいて、入力トークンと出力トークンの現在のレートで課金されます。

コード実行の課金に関するその他の注意事項は次のとおりです。

  • モデルに渡す入力トークンに対しては、一度だけ課金されます。モデルから返された最終出力トークンに対して課金されます。
  • 生成されたコードを表すトークンは、出力トークンとしてカウントされます。生成されたコードには、テキストとマルチモーダル出力(画像など)を含めることができます。
  • コード実行結果も出力トークンとしてカウントされます。

課金モデルを次の図に示します。

コード実行の課金モデル

  • 使用している Gemini モデルに基づいて、入力トークンと出力トークンの現在のレートで課金されます。
  • Gemini がレスポンスの生成時にコード実行を使用する場合、元のプロンプト、生成されたコード、実行されたコードの結果には中間トークンというラベルが付けられ、入力トークンとして課金されます。
  • Gemini は次に要約を生成し、生成されたコード、実行されたコードの結果、最終的な要約を返します。これらは出力トークンとして課金されます。
  • Gemini API の API レスポンスには中間トークン数が含まれるため、最初のプロンプト以外に追加の入力トークンが返される理由を把握できます。

制限事項

  • モデルはコードの生成と実行のみが可能です。メディア ファイルなど、他のアーティファクトを返すことはできません。
  • コード実行を有効にすると、モデル出力の他の領域(ストーリーの作成など)で回帰が発生することがあります。
  • コード実行を正常に使用できるモデルの能力には、若干のばらつきがあります。