程式碼執行

Gemini API 程式碼執行功能可讓模型產生並執行 Python 程式碼,並從結果反覆學習,直到最終輸出內容為止。您可以使用此程式碼執行功能建構應用程式,讓應用程式受益於程式碼式推理及產生文字輸出。舉例來說,您可以在回答方程式或處理文字的應用程式中使用程式碼執行功能。

AI Studio 和 Gemini API 都能執行程式碼。在 AI Studio 的「Advanced settings」(進階設定) 下方,您可以啟用程式碼執行。Gemini API 會以工具的形式執行程式碼,與函式呼叫類似。當您將程式碼執行作業新增為工具後,模型就會決定何時使用。

開始執行程式碼

前往 ai.google.dev 查看 在 Google Colab 中執行 前往 GitHub 查看原始碼

本節假設您已安裝 Gemini SDK 並設定 API 金鑰,如quickstart所示。

程式碼執行與函式呼叫

程式碼執行與函式呼叫功能類似:

  • 程式碼執行可讓模型在固定的獨立環境中,在 API 後端執行程式碼。
  • 函式呼叫可讓您在您想要的任何環境中執行模型要求的函式。

一般來說,如果程式碼可以處理您的用途,建議您改用執行程式碼。程式碼執行更易於使用 (只要啟用),並透過單一 GenerateContent 要求進行解析 (這會產生一筆費用)。函式呼叫需要額外的 GenerateContent 要求,才能從每個函式呼叫傳回輸出內容 (因此會產生多次費用)。

在多數情況下,如果您需要在本機執行自己的函式,則應使用函式呼叫。如果您希望 API 為您編寫及執行 Python 程式碼,然後傳回結果,則應使用函式呼叫。

帳單

透過 Gemini API 執行程式碼不會產生額外費用。系統會按照輸入和輸出符記的現行費率向您收費。

以下是程式碼執行費用的其他注意事項:

  • 您只需為傳遞至模型的輸入權杖支付一次費用,系統只會針對模型傳回給您的最終輸出權杖向您收費。
  • 系統會將代表產生的代碼的權杖計為輸出權杖。
  • 程式碼執行結果也會計為輸出符記。

限制

  • 模型只能產生及執行程式碼。因此無法傳回媒體檔案等其他構件
  • 這項功能不支援檔案 I/O,或涉及非文字輸出的用途 (例如資料圖表)。
  • 程式碼在逾時前最多可執行 30 秒。
  • 在某些情況下,啟用程式碼執行功能可能會導致模型輸出的其他區域發生迴歸問題 (例如撰寫故事)。
  • 不同模型在能力上有些差異,無法成功執行程式碼。測試結果顯示 Gemini 1.5 Pro 是成效最佳的模型