本文說明在隔離沙箱環境中執行程式碼時,常見的問題和解決方法。包括沙箱建立失敗、執行逾時和檔案 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 配額清單,請參閱「配額」。