GCP 运行 每天预测一个模型

GCP run a prediction of a model every day

我有一个 .py 文件,其中包含为某些数据生成预测的所有说明。 这些数据取自 BigQuery,预测应插入另一个 BigQuery table。 现在代码在 AIPlatform Notebook 上 运行ning,但我想安排它每天执行,有什么办法吗?

我运行进入了AIPlatform Jobs,但是我不明白我的代码应该做什么以及代码的结构应该是什么,是否有任何循序渐进的指南可以遵循?

您可以使用不同的选项安排笔记本执行:

  • nbconvert 同一技术的不同变体:

    • nbconvert:提供了一种方便的方法来执行 .ipynb 笔记本文件的输入单元格并将结果(输入和输出单元格)保存为 .ipynb 笔记本文件。 ipynb 文件。
    • papermill:是一个 Python 包,用于参数化和执行 Jupyter 笔记本。 (在后台使用 nbconvert --execute。)
    • notebook executor: This tool that can be used to schedule the execution of Jupyter notebooks from anywhere (local, GCE, GCP Notebooks) to the Cloud AI Deep Learning VM. You can read more about the usage of this tool here。 (在引擎盖下使用 gcloud sdk 和 papermill)
  • KubeFlow Fairing 是一个 Python 包,可以轻松地在 Kubeflow 上训练和部署 ML 模型。 Kubeflow Fairing 也可以扩展到在其他平台上训练或部署。目前,Kubeflow Fairing 已扩展到 Google AI 平台上进行训练。

  • AI Platform Notebook ExecutorScheduler扩展有两个核心功能: 能够在 AI Platform’s Machine Learning Engine 上将笔记本提交给 运行 作为带有自定义容器映像的训练作业。这使您可以在经济高效的单一 VM 环境中试验和编写训练代码,但可以扩展到 AI Platform 作业以利用高级资源(即 GPU、TPU 等)。 为定期 运行 计划笔记本遵循完全相同的步骤顺序,但需要 crontab 格式的计划选项。

  • Nova Plugin: 这是Notebook Scheduler项目的前身。允许您直接从 Jupyter UI.

    执行笔记本
  • Notebook training Python 软件包允许用户在 Google Cloud AI Platform Training Jobs 运行 Jupyter notebook。

  • GCP runner: 允许 运行 在 Google 云平台上使用任何 Jupyter 笔记本功能 与上面列出的所有其他解决方案不同,它允许 运行 对整个项目进行培训,而不是单个 Python 文件或 Jupyter 笔记本 允许 运行ning 任何带参数的函数,从本地执行转移到云端只是将函数包装在 gcp_runner.run_cloud(<function_name>, …) 调用中的问题。 该项目无需任何修改即可投入生产 支持在本地(用于测试目的)、AI 平台和 Kubernetes 环境中执行完整的端到端示例可以在这里找到: https://www.github.com/vlasenkoalexey/criteo_nbdev

  • tensorflow_cloud(GCP 的 Keras)提供的 API 可让您轻松地在本地调试和训练您的 Keras 和 TensorFlow 代码环境到云端的分布式训练。

2021 年 7 月更新:

GCP 中推荐的选项是 Notebook Executor,它已在 EAP 中可用。