輪詢長時間執行的作業
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
如要輪詢作業,請重複呼叫 get_long_running_operation() 方法,直到作業完成為止。請在每次輪詢要求之間使用輪詢,例如每 10 秒就進行輪詢。
深入探索
如需包含這個程式碼範例的詳細說明文件,請參閱下列內容:
程式碼範例
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],[],[[["\u003cp\u003eRepeatedly call the \u003ccode\u003eget_long_running_operation()\u003c/code\u003e method to monitor the status of an ongoing operation until it is complete.\u003c/p\u003e\n"],["\u003cp\u003eIt is recommended to implement a backoff period, such as a 10-second delay, between each polling request to avoid overloading the system.\u003c/p\u003e\n"],["\u003cp\u003eThe provided Python code demonstrates how to poll an operation using the \u003ccode\u003ediscoveryengine.DocumentServiceClient()\u003c/code\u003e and the \u003ccode\u003eoperations_pb2.GetOperationRequest()\u003c/code\u003e method, with a \u003ccode\u003esleep(10)\u003c/code\u003e function call to implement a backoff period.\u003c/p\u003e\n"],["\u003cp\u003eTo use the service, you must authenticate to Vertex AI Agent Builder using Application Default Credentials, as detailed in the setup guide.\u003c/p\u003e\n"]]],[],null,["# Poll a long running operation\n\nTo poll an operation, repeatedly call the get_long_running_operation() method until the operation finishes. Use a backoff between each poll request, such as 10 seconds.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Monitor long-running operations](/agentspace/docs/long-running-operations)\n- [Monitor long-running operations](/generative-ai-app-builder/docs/long-running-operations)\n\nCode sample\n-----------\n\n### Python\n\n\nFor more information, see the\n[AI Applications Python API\nreference documentation](/python/docs/reference/discoveryengine/latest).\n\n\nTo authenticate to AI Applications, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n from time import sleep\n\n from google.cloud import discoveryengine\n from google.longrunning import operations_pb2\n\n # TODO(developer): Uncomment these variables before running the sample.\n # Example: `projects/{project}/locations/{location}/collections/{default_collection}/dataStores/{search_engine_id}/branches/{0}/operations/{operation_id}`\n # operation_name = \"YOUR_OPERATION_NAME\"\n\n\n def poll_operation_sample(\n operation_name: str, limit: int = 10\n ) -\u003e operations_pb2.Operation:\n # Create a client\n client = discoveryengine.https://cloud.google.com/python/docs/reference/discoveryengine/latest/google.cloud.discoveryengine_v1.services.document_service.DocumentServiceClient.html()\n\n # Make GetOperation request\n request = operations_pb2.GetOperationRequest(name=operation_name)\n\n for _ in range(limit):\n operation = client.https://cloud.google.com/python/docs/reference/discoveryengine/latest/google.cloud.discoveryengine_v1.services.document_service.DocumentServiceClient.html#google_cloud_discoveryengine_v1_services_document_service_DocumentServiceClient_get_operation(request=request)\n # Print the Operation Information\n print(operation)\n\n # Stop polling when Operation is no longer running\n if operation.done:\n break\n\n # Wait 10 seconds before polling again\n sleep(10)\n\n return operation\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=genappbuilder)."]]