返回

Google Workflows 如何调度 Vertex AI 笔记本?如何通过 Cloud Functions 实现自动化?

python

在 Google Workflows 中调度 Vertex AI 笔记本:通过 Cloud Functions 实现自动化

概述

在 Google Workflows 中调度 Vertex AI Colab 笔记本和 Workbench 笔记本对于自动化工作流至关重要。尽管目前没有直接的方法,但我们可以使用 Cloud Functions 作为中介来触发笔记本执行。

通过 Cloud Functions 间接调用

1. 创建 Cloud Function

编写一个 Cloud Function,其作用是触发笔记本执行。例如:

import functions_framework

@functions_framework.http
def execute_notebook(request):
    notebook_info = request.get_json()
    client = functions_v2.FunctionServiceClient()
    cloud_function_name = client.function_path("PROJECT_ID", "LOCATION", "FUNCTION_NAME")
    execution_request = {"execution": {"config": {"notebook": notebook_info}}}
    client.call_function(cloud_function_name, execution_request)
    return "Notebook execution triggered successfully."

2. 部署 Cloud Function

gcloud functions deploy execute_notebook --entry-point execute_notebook

3. 在 Google Workflows 中使用 Cloud Function

添加一个触发器来调用 Cloud Function,将触发器的 HTTP 目标设置为 Cloud Function 的 URL。

优点

使用 Cloud Functions 方法的优点包括:

  • 实现自动化工作流。
  • 为实现更复杂的工作流提供灵活性。
  • 提高效率。

常见问题解答

1. 为什么无法直接在 Google Workflows 中调用 Vertex AI 笔记本?

目前,Google 文档中未提及任何直接调用的 API 或方法。

2. 除了 Cloud Functions 外,还有其他方法吗?

目前还没有其他公开的方法。

3. Cloud Function 的执行时间限制是多少?

Cloud Functions 具有 6 分钟的默认执行时间限制,但可以延长至 540 分钟。

4. 我可以同时执行多个笔记本吗?

可以,通过调用多个 Cloud Functions 或使用 Cloud Scheduler 安排定期触发器。

5. 如何监控 Cloud Function 的执行情况?

使用 Google Cloud Monitoring 或 Cloud Logging 监控 Cloud Function 的执行情况。

结论

通过使用 Cloud Functions 作为中介,我们在 Google Workflows 中实现了 Vertex AI 笔记本的自动化执行。这为实现复杂的工作流和提高效率提供了灵活性。不断探索新的方法和技术,以增强您的工作流自动化策略。