Fitur eksekusi kode Gemini API memungkinkan model untuk membuat dan menjalankan kode Python, serta belajar dari hasil secara berulang hingga mencapai output akhir. Anda dapat menggunakan kemampuan eksekusi kode ini untuk membangun aplikasi yang memanfaatkan penalaran berbasis kode dan menghasilkan output teks. Misalnya, Anda dapat menggunakan eksekusi kode dalam aplikasi yang menyelesaikan persamaan atau memproses teks.
Gemini API menyediakan eksekusi kode sebagai alat, mirip dengan panggilan fungsi. Setelah Anda menambahkan eksekusi kode sebagai alat, model akan memutuskan kapan harus menggunakannya.
Model yang didukung
- Gemini 2.5 Flash-Lite
- Gemini 2.0 Flash dengan Live API
Pratinjau - Vertex AI Model Optimizer
Eksperimental - Gemini 2.5 Pro
- Gemini 2.5 Flash
- Gemini 2.0 Flash
Batasan
- Fitur ini tidak mendukung I/O file.
- Eksekusi kode dapat berjalan selama maksimal 30 detik sebelum waktu habis.
Contoh sintaksis
curl
PROJECT_ID = myproject REGION = us-central1 MODEL_ID = gemini-2.0-flash-001 https://${REGION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/publishers/google/models/${MODEL_ID}:generateContent \ -d '{ "contents": [{ ... }], "tools": [{ "code_execution": {} }] }'
Daftar parameter
Lihat contoh untuk mengetahui detail implementasi.
Python
Untuk mengaktifkan eksekusi kode, tentukan tool
eksekusi kode dalam permintaan Anda.
CodeExecution
Alat yang menjalankan kode yang dihasilkan oleh model, dan otomatis menampilkan hasilnya ke model. Lihat juga ExecutableCode dan CodeExecutionResult yang merupakan input dan output untuk alat ini.
Part
| Opsional:
Kode yang dihasilkan oleh model yang dimaksudkan untuk dieksekusi.
|
| Opsional:
Hasil eksekusi [ExecutableCode].
|
ExecutableCode
| Wajib:
Bahasa pemrograman yang didukung untuk Didukung:
|
| Wajib:
Kode yang akan dieksekusi.
|
CodeExecutionResult
| Wajib:
Hasil eksekusi kode. Kemungkinan hasil:
|
| Wajib:
Berisi |
Contoh
Berikut adalah ilustrasi cara mengirimkan kueri dan deklarasi fungsi ke model.
Kasus penggunaan dasar
curl
PROJECT_ID = myproject REGION = us-central1 MODEL_ID = gemini-2.0-flash-001 curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${REGION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/publishers/google/models/${MODEL_ID}:generateContent \ -d '{ "contents": [{ "role": "user", "parts": [{ "text": "Calculate 20th fibonacci number. Then find the nearest palindrome to it." }] }], "tools": [{'codeExecution': {}}], }'
Python
from google import genai from google.genai.types import Tool, ToolCodeExecution, GenerateContentConfig client = genai.Client() model_id = "gemini-2.0-flash-001" code_execution_tool = Tool( code_execution=ToolCodeExecution() ) response = client.models.generate_content( model=model_id, contents="Calculate 20th fibonacci number. Then find the nearest palindrome to it.", config=GenerateContentConfig( tools=[code_execution_tool], temperature=0, ), ) for part in response.candidates[0].content.parts: if part.executable_code: print(part.executable_code) if part.code_execution_result: print(part.code_execution_result) # Example response: # code='...' language='PYTHON' # outcome='OUTCOME_OK' output='The 20th Fibonacci number is: 6765\n' # code='...' language='PYTHON' # outcome='OUTCOME_OK' output='Lower Palindrome: 6666\nHigher Palindrome: 6776\nNearest Palindrome to 6765: 6776\n'
Mengaktifkan eksekusi kode pada model
Untuk mengaktifkan eksekusi kode dasar, lihat Eksekusi kode.
Langkah berikutnya
- Pelajari lebih lanjut Gemini API.
- Pelajari lebih lanjut pemanggilan Function.
- Pelajari lebih lanjut Membuat konten dengan Gemini.