Vertex AI: Serverless framework for MLOPs (ESP / ENG)

Overview

Vertex AI: Serverless framework for MLOPs (ESP / ENG)

Español

Qué es esto?

Este repo contiene un pipeline end to end diseñado usando el SDK de Kubeflow Pipelines (KFP). En el contexto del uso de Vertex AI como solución, la idea es construir una arquitectura de machine learning lo más automatizada posible, integrando algunos de los principales servicios de Google Cloud Platform (GCP) tales como BigQuery (data warehousing), Google Cloud Storage (almacenamiento de objetos) y Container Registry (repositorio de inágenes de Docker).

Cómo lo corro?

  • Primero, ejecutar la notebook pipeline_setup.ipynb. Contiene la configuración de la infraestructura que será utilizada: se crean datasets en BigQuery y buckets en GCS y se instalan librerías necesarias. Además se crean imágenes de Docker y se pushea a Container Registry para los jobs de tuneos de hiperparámetros.
  • Segundo, dentro de la carpeta components se encuentra la notebook components_definition.ipynb que deberá ejecutarse para generar los .yamls que serán invocados en la notebook principal de ejecución.
  • Por último, seguir los pasos indicados en pipeline_run.ipynb. Algunos parámetros como la cantidad de trials de hiperparámetros o los tipos de máquina deseadas para algunos pasos pueden ser fácilmente modificables.

TO-DO

agregar costo estimado permisos

English

What is this?

This repo contains an end to end pipeline designed using Kubelow Pipelines SDK (KFP). Using Vertex AI as a main solution, the idea is to build a machine learning architecture as automated as possible, integrating some of the main Google Cloud Platform (GCP) services, such as BigQuery (data warehousing), Google Cloud Storage (storage system) and Container Registry (Docker images repository).

How do I run it?

  • First, execute pipeline_setup.ipynb. It contains the infraestructure configuration to be used: BigQuery datasets and GCS buckets are created and installs the necessary libraries. It also creates Docker images and pushes them to Container Registry in order to perform hyperparameter tuning jobs.
  • Second, in the components folder there's a notebook called components_definition.ipynb which should be executed to generate the .yamls to be invoked in the main notebook execution.
  • Last, follow the steps in pipeline_run.ipynb. Some parameters, as hyperparameter trials or machine types for given steps of the process can be easily modified.

To-do

estimated cost roles

You might also like...
Karate Club: An API Oriented Open-source Python Framework for Unsupervised Learning on Graphs (CIKM 2020)
Karate Club: An API Oriented Open-source Python Framework for Unsupervised Learning on Graphs (CIKM 2020)

Karate Club is an unsupervised machine learning extension library for NetworkX. Please look at the Documentation, relevant Paper, Promo Video, and Ext

A flexible framework of neural networks for deep learning
A flexible framework of neural networks for deep learning

Chainer: A deep learning framework Website | Docs | Install Guide | Tutorials (ja) | Examples (Official, External) | Concepts | ChainerX Forum (en, ja

An Open Source Machine Learning Framework for Everyone
An Open Source Machine Learning Framework for Everyone

Documentation TensorFlow is an end-to-end open source platform for machine learning. It has a comprehensive, flexible ecosystem of tools, libraries, a

Intel® Nervana™ reference deep learning framework committed to best performance on all hardware

DISCONTINUATION OF PROJECT. This project will no longer be maintained by Intel. Intel will not provide or guarantee development of or support for this

A modular active learning framework for Python
A modular active learning framework for Python

Modular Active Learning framework for Python3 Page contents Introduction Active learning from bird's-eye view modAL in action From zero to one in a fe

🔥 Cogitare - A Modern, Fast, and Modular Deep Learning and Machine Learning framework for Python
🔥 Cogitare - A Modern, Fast, and Modular Deep Learning and Machine Learning framework for Python

Cogitare is a Modern, Fast, and Modular Deep Learning and Machine Learning framework for Python. A friendly interface for beginners and a powerful too

A Sklearn-like Framework for Hyperparameter Tuning and AutoML in Deep Learning projects. Finally have the right abstractions and design patterns to properly do AutoML. Let your pipeline steps have hyperparameter spaces. Enable checkpoints to cut duplicate calculations. Go from research to production environment easily. A Comparative Framework for Multimodal Recommender Systems
A Comparative Framework for Multimodal Recommender Systems

Cornac Cornac is a comparative framework for multimodal recommender systems. It focuses on making it convenient to work with models leveraging auxilia

A unified framework for machine learning with time series

Welcome to sktime A unified framework for machine learning with time series We provide specialized time series algorithms and scikit-learn compatible

Comments
  • Quick XGB question

    Quick XGB question

    Hi, is there a reason that you seemed to go down the XGB route, but decided against it (I can see some XGB lines commented out).
    I was thinking you likely thought it was not needed to illustrate what you wanted? or was there another reason (like it didn't work)? thanks!

    opened by david-dirring 2
  • missing components_definition.ipynb ?

    missing components_definition.ipynb ?

    Great repo, thanks for the details on how you leveraged vertex in this example. I was not able to find components_definition.ipynb file? can you take a look. thanks!

    opened by david-dirring 2
Owner
Hernán Escudero
Lead Data Scientist & ML Engineer at @CoreBI R & Python // Shiny Developer
Hernán Escudero
Wafer Fault Detection using MlOps Integration

Wafer Fault Detection using MlOps Integration This is an end to end machine learning project with MlOps integration for predicting the quality of wafe

Sethu Sai Medamallela 0 Mar 11, 2022
MLOps will help you to understand how to build a Continuous Integration and Continuous Delivery pipeline for an ML/AI project.

page_type languages products description sample python azure azure-machine-learning-service azure-devops Code which demonstrates how to set up and ope

null 1 Nov 1, 2021
Serverless proxy for Spark cluster

Hydrosphere Mist Hydrosphere Mist is a serverless proxy for Spark cluster. Mist provides a new functional programming framework and deployment model f

hydrosphere.io 317 Dec 1, 2022
The deployment framework aims to provide a simple, lightweight, fast integrated, pipelined deployment framework that ensures reliability, high concurrency and scalability of services.

savior是一个能够进行快速集成算法模块并支持高性能部署的轻量开发框架。能够帮助将团队进行快速想法验证(PoC),避免重复的去github上找模型然后复现模型;能够帮助团队将功能进行流程拆解,很方便的提高分布式执行效率;能够有效减少代码冗余,减少不必要负担。

Tao Luo 125 Dec 22, 2022
FEDn is an open-source, modular and ML-framework agnostic framework for Federated Machine Learning

FEDn is an open-source, modular and ML-framework agnostic framework for Federated Machine Learning (FedML) developed and maintained by Scaleout Systems. FEDn enables highly scalable cross-silo and cross-device use-cases over FEDn networks.

Scaleout 75 Nov 9, 2022
Caffe: a fast open framework for deep learning.

Caffe Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by Berkeley AI Research (BAIR)/The Berke

Berkeley Vision and Learning Center 33k Dec 28, 2022
Game Agent Framework. Helping you create AIs / Bots that learn to play any game you own!

Serpent.AI - Game Agent Framework (Python) Update: Revival (May 2020) Development work has resumed on the framework with the aim of bringing it into 2

Serpent.AI 6.4k Jan 5, 2023
An Open Source Machine Learning Framework for Everyone

Documentation TensorFlow is an end-to-end open source platform for machine learning. It has a comprehensive, flexible ecosystem of tools, libraries, a

null 170.1k Jan 4, 2023
PyTorchCV: A PyTorch-Based Framework for Deep Learning in Computer Vision.

PyTorchCV: A PyTorch-Based Framework for Deep Learning in Computer Vision @misc{CV2018, author = {Donny You ([email protected])}, howpubl

Donny You 40 Sep 14, 2022