Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.8%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: shivajid
  • License: apache-2.0
  • Language: Jupyter Notebook
  • Default Branch: master
  • Size: 25 MB
Statistics
  • Stars: 2
  • Watchers: 1
  • Forks: 1
  • Open Issues: 1
  • Releases: 0
Created over 4 years ago · Last pushed almost 4 years ago
Metadata Files
Readme License Citation

README.md

                          

License

Release 0.1 Date 03/16/2022

About

This repo covers how to execute MLOps Pipelines with CI/CD. I have additionally added suplementary content - BigQuery ML - Vertex Training

Pipelines

Before we get started it is a good to understand the concepts of Kubleflow. The Kubeflow.md file covers the basics and understanding on Kubeflow. After finishing the Kubelflow.md, Vertex Pipeline User Guide provides a good introduction to Vertex AI Pipelines and how it is different from the Open Source Kubeflow pipelines.

About

I this workshop you will do the following * Setup your lab environment * Setup Source Control with Cloud Source Repository * Setup Build Trigger * Run a basic intro to kubeflow lab * Run a Kubelfow controls * Build a sample Machine Learning Pipeline * Trigger the machine learning pipeline using Cloud Functions * Run CI/CD with MLOps Pipelines

Qwiklabs Pipelines (Alternative to this workshop)

If you are interested in doing the Qwiklabs for Vertex Pipelines with Kubeflow, it has a good step by step process Qwiklabs Tutorials

Enviroment

Setup the environment with following pre steps

Code Organization

The code structure is defined in the following folders:

  • notebook: This contains the notebooks for KFP and CI/CD.

  • pipeline: This folder containers the trainer code pipeline that is for model training

  • artifacts: This is the docker file and other artifacts. This is optional and can be used if you want just have a training image that you would want to build out.

Following files in the root of the folder: - cloudbuild.yaml: This is the build file used by cloud build. This has two steps one for build and one for execution of the pipeline. - requirements.txt: Python packages needed to perform the build

Steps to execute for this

Complete the pre-steps if you have not * Step1 Complete 01pipelinesintrokfp

  • Step2 Complete 02controlflowkfp.ipynb

  • Step3:

  • Explore the pipeline code (IrisflowersAutoMLKubeflowPipeline.ipynb) We are going to work with the iris dataset to classiify flower images. This is fairly simple where you will use the dataset creation and AutoML to classify the images. At the end you will deploy the model.

  • Step4: Running Cloud Build Trigger and Pipeline:

  • Prepare the pipeline python code. Execute the notebook "IrisPipelineTemplate.ipynb". Change the needed variables in the code and generate the pipeline files. The pipeline files should be generated in the pipeline folder. There are two files. One is for the pipeline source and the other takes the compiled pipeline output and executes it.

  • Step5: Manual Build Execution:

  • Manually Execute the cloud build to test the pipeline

  • gcloud builds submit --config cloudbuild.yaml --timeout=1000

  • Step6: Update the Pipeline:

    • Change the pipeline parameters of the pipeline in the "IrisPipelineTemplate.ipynb" file. Execute the cells to generate the files.
  • Step7: Push the code to trugger cloud build and pipeline execution:

    • Add files to the git repository
    • git add .
    • git commit -m "some message"
    • git push

Now open the cloud build console UI. You should see a build kicked off. You can navigate to Vertex AI Pipelines, you will see a pipeline launched.

TFX

TFX Tutorial

Owner

  • Name: Shivaji Dutta
  • Login: shivajid
  • Kind: user
  • Location: San Francisco
  • Company: Aurius LLC

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Dutta"
  given-names: "Shivaji"
  orcid: "https://orcid.org/0000-0000-0000-0000"
title: ""
version: 0.1
doi: 10.5281/zenodo.1234
date-released: 2022-03-14
url: "https://github.com/shivajid/MLOpsCICD"

GitHub Events

Total
Last Year

Dependencies

go_examples/hello/go.mod go
  • example.com/greetings v0.0.0-00010101000000-000000000000
go_examples/vertex_prediction/go.mod go
  • cloud.google.com/go v0.100.2
  • cloud.google.com/go/aiplatform v1.8.0
  • cloud.google.com/go/compute v1.5.0
  • github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e
  • github.com/golang/protobuf v1.5.2
  • github.com/google/go-cmp v0.5.7
  • github.com/googleapis/gax-go/v2 v2.2.0
  • github.com/jmcvetta/napping v3.2.0+incompatible
  • go.opencensus.io v0.23.0
  • golang.org/x/net v0.0.0-20220325170049-de3da57026de
  • golang.org/x/oauth2 v0.0.0-20220309155454-6242fa91716a
  • golang.org/x/sys v0.0.0-20220328115105-d36c6a25d886
  • golang.org/x/text v0.3.7
  • google.golang.org/api v0.74.0
  • google.golang.org/appengine v1.6.7
  • google.golang.org/genproto v0.0.0-20220328180837-c47567c462d1
  • google.golang.org/grpc v1.45.0
  • google.golang.org/protobuf v1.28.0
go_examples/vertex_prediction/go.sum go
  • 588 dependencies
go_examples/web-service-gin/go.mod go
  • github.com/gin-contrib/sse v0.1.0
  • github.com/gin-gonic/gin v1.7.7
  • github.com/go-playground/locales v0.13.0
  • github.com/go-playground/universal-translator v0.17.0
  • github.com/go-playground/validator/v10 v10.4.1
  • github.com/golang/protobuf v1.3.3
  • github.com/json-iterator/go v1.1.9
  • github.com/leodido/go-urn v1.2.0
  • github.com/mattn/go-isatty v0.0.12
  • github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421
  • github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742
  • github.com/ugorji/go/codec v1.1.7
  • golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9
  • golang.org/x/sys v0.0.0-20220412211240-33da011f77ad
  • gopkg.in/yaml.v2 v2.2.8
go_examples/web-service-gin/go.sum go
  • github.com/davecgh/go-spew v1.1.0
  • github.com/davecgh/go-spew v1.1.1
  • github.com/gin-contrib/sse v0.1.0
  • github.com/gin-gonic/gin v1.7.7
  • github.com/go-playground/assert/v2 v2.0.1
  • github.com/go-playground/locales v0.13.0
  • github.com/go-playground/universal-translator v0.17.0
  • github.com/go-playground/validator/v10 v10.4.1
  • github.com/golang/protobuf v1.3.3
  • github.com/google/gofuzz v1.0.0
  • github.com/json-iterator/go v1.1.9
  • github.com/leodido/go-urn v1.2.0
  • github.com/mattn/go-isatty v0.0.12
  • github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421
  • github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742
  • github.com/pmezard/go-difflib v1.0.0
  • github.com/stretchr/objx v0.1.0
  • github.com/stretchr/testify v1.3.0
  • github.com/stretchr/testify v1.4.0
  • github.com/ugorji/go v1.1.7
  • github.com/ugorji/go/codec v1.1.7
  • golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2
  • golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9
  • golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3
  • golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a
  • golang.org/x/sys v0.0.0-20190412213103-97732733099d
  • golang.org/x/sys v0.0.0-20200116001909-b77594299b42
  • golang.org/x/sys v0.0.0-20220412211240-33da011f77ad
  • golang.org/x/text v0.3.0
  • golang.org/x/text v0.3.2
  • golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e
  • gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405
  • gopkg.in/yaml.v2 v2.2.2
  • gopkg.in/yaml.v2 v2.2.8
dataflow/first-dataflow/pom.xml maven
  • com.google.api-client:google-api-client 1.30.9
  • com.google.apis:google-api-services-bigquery v2-rev20191211-1.30.9
  • com.google.apis:google-api-services-pubsub v1-rev20200312-1.30.9
  • com.google.http-client:google-http-client 1.34.0
  • joda-time:joda-time 2.10.5
  • junit:junit 4.13-beta-3
  • org.apache.beam:beam-sdks-java-core 2.22.0
  • org.apache.beam:beam-sdks-java-io-google-cloud-platform 2.22.0
  • org.hamcrest:hamcrest-core 2.1
  • org.hamcrest:hamcrest-library 2.1
  • org.slf4j:slf4j-api 1.7.25
  • org.slf4j:slf4j-jdk14 1.7.25
  • org.apache.beam:beam-runners-direct-java 2.22.0 test
  • org.mockito:mockito-core 3.0.0 test
requirements.txt pypi
  • google-cloud-aiplatform *
  • google-cloud-pipeline-components ==0.1.7
  • google-cloud-storage *
  • jupyterlab *
  • nbconvert *
artifacts/Dockerfile docker
  • us-docker.pkg.dev/vertex-ai/training/tf-gpu.2-6 latest build
matching_engine/CLIP/Dockerfile docker
  • nvcr.io/nvidia/pytorch 22.08-py3 build
go_examples/fuzz/go.mod go
go_examples/greetings/go.mod go