排解程式碼執行問題

本文說明在隔離沙箱環境中執行程式碼時,常見的問題和解決方法。包括沙箱建立失敗、執行逾時和檔案 I/O 問題的說明。

沙箱建立問題

  • 權限錯誤:如果建立沙箱時發生錯誤,請確認 Google Cloud 專案具備代理平台使用者 (roles/aiplatform.user) Identity and Access Management (IAM) 角色。

  • 專案 ID 或位置無效:請確認程式碼中使用的 PROJECT_ID 和 LOCATION 變數正確且受支援。如需支援的區域清單,請參閱「支援的區域」。

  • 未建立代理引擎:建立沙箱前,請確認已成功建立代理平台執行個體。agent_engine.create() 方法必須順利完成,不得發生錯誤。

程式碼執行問題

  • 程式碼錯誤:查看 execute_code 回應的 stderr 輸出內容,找出程式碼中的語法錯誤、執行階段例外狀況或邏輯缺陷。

  • 檔案 I/O 問題:

    • 找不到檔案:請確認 input_data 的 files 陣列中指定的任何輸入檔案,在程式碼中都有正確參照。程式碼會在與檔案相同的資料夾中執行,無法存取其他資料夾。

    • 未生成輸出檔案:確認程式碼寫入預期的輸出檔案名稱,且沒有任何錯誤導致無法建立或寫入檔案。

    • 大小限制:檔案大小上限為 100 MB。

  • 狀態持續性:如果程式碼依賴先前的狀態,請確認後續呼叫使用相同的 sandbox_name。此外,請確認沙箱尚未過期。

  • 逾時:程式碼執行作業會在 300 秒後逾時。建議您最佳化程式碼效能,或將複雜工作拆解成較小、較容易管理的步驟。

沙箱管理和清除

  • 找不到要刪除的沙箱:如果無法刪除沙箱,請確認您使用的 sandbox_name 正確無誤,且沙箱仍存在。

  • 找不到要刪除的代理引擎:與沙箱類似,嘗試刪除代理平台執行個體時,請驗證 agent_engine_name。

  • 資源配額:如果您建立許多沙箱或頻繁 執行,可能會達到資源配額上限。請查看專案的 Agent Platform 服務配額,並視需要要求提高配額。如需 Agent Engine 配額清單,請參閱「配額」。