Google Vision API for Image Recognition Services
PythonGoogle Vision API is a tool from Google Cloud that allows you to derive insights from your images in the cloud or at the edge using AutoML or pre-trained Vision API models. With the Vision API, you can detect objects and faces, read printed and handwritten text, and build valuable metadata into your image catalog.
In this guide, I'll show you how to set up a basic instance of the Google Vision API using Pulumi, which allows you to programmatically define, deploy, and manage cloud infrastructure.
We will create a
Product
andProductSet
resource which are foundational elements of the Google Vision API for image recognition. AProduct
in Vision API represents a single item that a user searches for in aProductSet
. TheProductSet
is a collection ofProduct
resources and serves as a container used to group similar products for searching.First, we'll start by installing the necessary Pulumi packages to interact with Google Cloud:
pip install pulumi_google_native
Next, we'll write our Pulumi program in Python. Here's a breakdown of what we'll do in our code:
- We'll import the necessary packages.
- We'll define our Google Cloud Vision resources.
- We'll export important information, such as the product name and product set name.
Below is the Python program that accomplishes this:
import pulumi import pulumi_google_native as google_native # Replace these variables with your own values project = 'my-gcp-project' # Your Google Cloud project ID location = 'us-west1' # The location for the Vision API resources # Create a reference to a Google Cloud Vision Product product = google_native.vision.v1.Product("my-product", project=project, location=location, displayName="MyVisionAPIProduct", description="Sample product for vision API", productCategory="homegoods") # Create a reference to a Google Cloud Vision ProductSet product_set = google_native.vision.v1.ProductSet("my-product-set", project=project, location=location, displayName="MyVisionAPIProductSet") # Export the name (resource ID) of the product and product set pulumi.export("product_name", product.name) pulumi.export("product_set_name", product_set.name)
In the above code, we first define two resources:
Product
andProductSet
. We provide adisplayName
,description
, andproductCategory
for theProduct
. For theProductSet
, we only need to provide adisplayName
.Note that the
project
andlocation
should be replaced with your actual GCP project ID and the location where you want to deploy these resources. After deployment, Pulumi exports the generatedname
attribute of both resources to easily locate them in the Google Cloud Console or when using the API.To execute this Pulumi program, save the code to a file named
main.py
, and run the following commands in your terminal:# Log in to the Google Cloud gcloud auth login # Set up your Google Cloud project gcloud config set project your-project-id # Run Pulumi to deploy your infrastructure pulumi up
Please make sure you have
gcloud
installed and Pulumi CLI set up on your machine. You will be prompted to choose an option during thepulumi up
command execution which will initiate the deployment process.After successful deployment, the URL links to the Google Cloud console for each resource will be output to the terminal, and you can visit those to manage or inspect your Vision API resources.