From ab15de9f3c4492dde31ce496bdfdd67a3ae04e72 Mon Sep 17 00:00:00 2001 From: Eric Gribkoff Date: Tue, 15 Oct 2024 13:41:26 -0700 Subject: [PATCH 1/2] feat(vector search): Add examples for streaming, endpoints, and deploy --- vertex_ai/index_endpoint/main.tf | 77 ++++++++++++++++++++++ vertex_ai/index_endpoint_deploy/main.tf | 88 +++++++++++++++++++++++++ vertex_ai/index_streaming/main.tf | 70 ++++++++++++++++++++ 3 files changed, 235 insertions(+) create mode 100644 vertex_ai/index_endpoint/main.tf create mode 100644 vertex_ai/index_endpoint_deploy/main.tf create mode 100644 vertex_ai/index_streaming/main.tf diff --git a/vertex_ai/index_endpoint/main.tf b/vertex_ai/index_endpoint/main.tf new file mode 100644 index 000000000..bc3c28462 --- /dev/null +++ b/vertex_ai/index_endpoint/main.tf @@ -0,0 +1,77 @@ +/** + * Copyright 2024 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +# [START aiplatform_create_index_endpoint_sample] +resource "google_vertex_ai_index_endpoint" "index_endpoint" { + display_name = "sample-endpoint" + description = "A sample index endpoint with a public endpoint" + region = "us-central1" + public_endpoint_enabled = true +} + +# Cloud Storage bucket name must be unique +resource "random_id" "bucket_name_suffix" { + byte_length = 8 +} + +# Create a Cloud Storage bucket +resource "google_storage_bucket" "bucket" { + name = "vertex-ai-index-bucket-${random_id.bucket_name_suffix.hex}" + location = "us-central1" + uniform_bucket_level_access = true +} + +# Create index content +resource "google_storage_bucket_object" "data" { + name = "contents/data.json" + bucket = google_storage_bucket.bucket.name + content = < Date: Tue, 22 Oct 2024 11:10:30 -0700 Subject: [PATCH 2/2] rename vars to default --- vertex_ai/index_endpoint/main.tf | 6 +++--- vertex_ai/index_endpoint_deploy/main.tf | 12 ++++++------ vertex_ai/index_streaming/main.tf | 4 ++-- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/vertex_ai/index_endpoint/main.tf b/vertex_ai/index_endpoint/main.tf index bc3c28462..b0b1eec82 100644 --- a/vertex_ai/index_endpoint/main.tf +++ b/vertex_ai/index_endpoint/main.tf @@ -16,7 +16,7 @@ # [START aiplatform_create_index_endpoint_sample] -resource "google_vertex_ai_index_endpoint" "index_endpoint" { +resource "google_vertex_ai_index_endpoint" "default" { display_name = "sample-endpoint" description = "A sample index endpoint with a public endpoint" region = "us-central1" @@ -24,13 +24,13 @@ resource "google_vertex_ai_index_endpoint" "index_endpoint" { } # Cloud Storage bucket name must be unique -resource "random_id" "bucket_name_suffix" { +resource "random_id" "default" { byte_length = 8 } # Create a Cloud Storage bucket resource "google_storage_bucket" "bucket" { - name = "vertex-ai-index-bucket-${random_id.bucket_name_suffix.hex}" + name = "vertex-ai-index-bucket-${random_id.default.hex}" location = "us-central1" uniform_bucket_level_access = true } diff --git a/vertex_ai/index_endpoint_deploy/main.tf b/vertex_ai/index_endpoint_deploy/main.tf index 604161084..392be4120 100644 --- a/vertex_ai/index_endpoint_deploy/main.tf +++ b/vertex_ai/index_endpoint_deploy/main.tf @@ -20,14 +20,14 @@ provider "google" { region = "us-central1" } -resource "google_vertex_ai_index_endpoint_deployed_index" "deployed_index" { - depends_on = [google_vertex_ai_index_endpoint.index_endpoint] - index_endpoint = google_vertex_ai_index_endpoint.index_endpoint.id +resource "google_vertex_ai_index_endpoint_deployed_index" "default" { + depends_on = [google_vertex_ai_index_endpoint.default] + index_endpoint = google_vertex_ai_index_endpoint.default.id index = google_vertex_ai_index.default.id deployed_index_id = "deployed_index_id" } -resource "google_vertex_ai_index_endpoint" "index_endpoint" { +resource "google_vertex_ai_index_endpoint" "default" { display_name = "sample-endpoint" description = "A sample index endpoint with a public endpoint" region = "us-central1" @@ -35,13 +35,13 @@ resource "google_vertex_ai_index_endpoint" "index_endpoint" { } # Cloud Storage bucket name must be unique -resource "random_id" "bucket_name_suffix" { +resource "random_id" "default" { byte_length = 8 } # Create a Cloud Storage bucket resource "google_storage_bucket" "bucket" { - name = "vertex-ai-index-bucket-${random_id.bucket_name_suffix.hex}" + name = "vertex-ai-index-bucket-${random_id.default.hex}" location = "us-central1" uniform_bucket_level_access = true } diff --git a/vertex_ai/index_streaming/main.tf b/vertex_ai/index_streaming/main.tf index 8b1803ece..29b689291 100644 --- a/vertex_ai/index_streaming/main.tf +++ b/vertex_ai/index_streaming/main.tf @@ -17,13 +17,13 @@ # [START aiplatform_create_streaming_index_sample] # Cloud Storage bucket name must be unique -resource "random_id" "bucket_name_suffix" { +resource "random_id" "default" { byte_length = 8 } # Create a Cloud Storage bucket resource "google_storage_bucket" "bucket" { - name = "vertex-ai-index-bucket-${random_id.bucket_name_suffix.hex}" + name = "vertex-ai-index-bucket-${random_id.default.hex}" location = "us-central1" uniform_bucket_level_access = true }