Gemini API のコード実行機能を使用すると、モデルは Python コードを生成して実行し、最終的な出力に到達するまで結果から反復的に学習できます。このコード実行機能を使用すると、コードベースの推論を活用し、テキスト出力を生成するアプリケーションを構築できます。たとえば、方程式を解くアプリケーションやテキストを処理するアプリケーションでコード実行を使用できます。
コード実行は、AI Studio と Gemini API の両方で使用できます。AI Studio では、右側のパネルの [ツール] でコード実行を有効にできます。Gemini API は、関数呼び出しと同様に、コード実行をツールとして提供します。コード実行をツールとして追加すると、モデルがコード実行を使用するタイミングを決定します。
コード実行環境には、altair
、chess
、cv2
、matplotlib
、mpmath
、numpy
、pandas
、pdfminer
、reportlab
、seaborn
、sklearn
、statsmodels
、striprtf
、sympy
、tabulate
のライブラリが含まれています。独自のライブラリをインストールすることはできません。
始める前に
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 レスポンスには中間トークン数が含まれるため、最初のプロンプト以外に追加の入力トークンが返される理由を把握できます。
制限事項
- モデルはコードの生成と実行のみが可能です。メディア ファイルなど、他のアーティファクトを返すことはできません。
- コード実行を有効にすると、モデル出力の他の領域(ストーリーの作成など)で回帰が発生することがあります。
- コード実行を正常に使用できるモデルの能力には、若干のばらつきがあります。