GCP Vertex AI - For Me

#ArtificialIntelligence   #VertexAI   #GCP  
Vertex AI Training

Looking the Vertex AI GCP service through non experienced Machine Learning user

Background

Hi everyone, just to note that Machine Learning is not my expertise at all and I did not have any particular professional experience on ML. The real reason why I am interested in exploring Vertex AI is that through my Mentoring session with the Bangkit 2021 team one of the most frequently asked questions is around managing Machine Learning and how to deploy it especially for the student (they are still pursuing their academic degree).

Bangkit 2021

Now when I heard about Vertex AI and showcased it on Google I/O makes me really wonder how we can utilize the platform to ease the entry barrier of people to actually adopt ML. I have not yet thoroughly explored the entire parameter nor have the expertise to review it, but from the standpoint of a newcomer in Machine Learning, this is superb.

In a nutshell, I can see that there are a lot of things that we can actually do with Vertex AI but the thing that is important for me right now is actually to manage my dataset, train my models, and actually deploy it to be consumed.

Notes: For ML expert out there apology for my inexperience around ML).

Now to see it in action we can actually go to the website and find the quickstart documentation: Vertex AI

Within this post, I am using the Hello custom training (which I think Bangkit 2021 require the team to create their own custom training) to test the concept of the service and if you want to seek information please go to the official docs here: Hello Custom Training

Steps:

[One] Follow the guidance to set the environment by setting up GCS Bucket and download the sample code.

GCS copy

Copy sources and set Google Cloud Storage

[Two] Upload the training app to GCS (ensure that it is gzipped)

Train the model by creating a custom pipeline

Train the model by creating a custom pipeline

[Three] Train the model by creating a custom pipeline

Vertex training

Go to Vertex AI console (ensure that we enable the api) and go to training

Vertex training

Using the pre-built container we ensure the framework, bucket location, and several other config

Vertex training

Select your region (please take note that I am testing the asia-southeast1 instead of the us-central1) + machine type

Vertex training

Its done !

[Four] Now let's create the endpoint for our models

Deploy endpoint

go to endpoint and create a new endpoint (ensure we also have the preferred machine type)

Deploy endpoint

Deploy

[Five] Set Cloud Function as our intermediary for consuming the ML

Cloud Function

deploy CF (however as I am using a custom location I need to change the code a bit) + take the Endpoint ID from the console

Cloud Function

just ensure that the ‘api_endpoint’ & aip_endpoint_name is pointing to the right location

One thing that I forgot is to ensure that the CF is using the right Service Account which have permission to for accessing Vertex AI. Just ensure that you did that and deploy a new version if you have not config in the first place

Cloud Function

Done

[Six] Upload the page that will be our main UI to test the ML to GCS

upload static page

Ensure that the permission of that particular folder can be public for direct access (for this test assume that it is a public page)

[Seven] Test it out, call the URL, and test

Test it

Test it

Well, that is something for me as I can use the platform and actually focus on the application itself. Looking forward to further exploration and if anyone has any input, I really looking forward to hearing them.

Start blogging about your favorite technologies and get more readers

Join other developers and claim your FAUN account now!

Avatar

Johanes Glenn

Customer Engineer Infra/App Mod, Google

@alevz
Hi my name is Glenn and love to discuss around Cloud tech, k8s and serverless. My posts are of my own.
15

Authority

781

Total Hits

Discussed tools
Google Cloud PlatformGoogle Cloud StorageGoogle Cloud Functions