From 20f37c5064ef4a81821d45907fd6e3e68baea7f7 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Wed, 8 May 2024 06:00:04 +0000 Subject: [PATCH 01/15] feat: Elastic Text-Embedding Model demo. (override 003 to 004) --- aiplatform/snippets/embeddings.go | 15 ++++++++++++--- aiplatform/snippets/embeddings_test.go | 9 +++++---- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index be3f0816db..c3add32f92 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -28,7 +28,8 @@ import ( ) func embedTexts( - apiEndpoint, project, model string, texts []string, task string) ([][]float32, error) { + apiEndpoint, project, model string, texts []string, + task string, customOutputDimensionality *int) ([][]float32, error) { ctx := context.Background() client, err := aiplatform.NewPredictionClient(ctx, option.WithEndpoint(apiEndpoint)) @@ -52,10 +53,18 @@ func embedTexts( }, }) } + outputDimensionality := structpb.NewNullValue() + if customOutputDimensionality != nil { + outputDimensionality = structpb.NewNumberValue(float64(*customOutputDimensionality)) + } + params := structpb.NewStructValue(&structpb.Struct{ + Fields: map[string]*structpb.Value{"outputDimensionality": outputDimensionality}, + }) req := &aiplatformpb.PredictRequest{ - Endpoint: endpoint, - Instances: instances, + Endpoint: endpoint, + Instances: instances, + Parameters: params, } resp, err := client.Predict(ctx, req) if err != nil { diff --git a/aiplatform/snippets/embeddings_test.go b/aiplatform/snippets/embeddings_test.go index e5ebf7f776..bd0c70ee72 100644 --- a/aiplatform/snippets/embeddings_test.go +++ b/aiplatform/snippets/embeddings_test.go @@ -23,14 +23,15 @@ import ( func TestGenerateEmbeddings(t *testing.T) { tc := testutil.SystemTest(t) apiEndpoint := "us-central1-aiplatform.googleapis.com:443" - model := "textembedding-gecko@003" + model := "text-embedding-004" texts := []string{"banana muffins? ", "banana bread? banana muffins?"} - embeddings, err := embedTexts(apiEndpoint, tc.ProjectID, model, texts, "RETRIEVAL_DOCUMENT") + dimensionality := 5 + embeddings, err := embedTextsPreview(apiEndpoint, tc.ProjectID, model, texts, "QUESTION_ANSWERING", &dimensionality) if err != nil { t.Fatal(err) } - if len(embeddings) != len(texts) || len(embeddings[0]) != 768 { - t.Errorf("len(embeddings), len(embeddings[0]) = %d, %d, want %d, 768", len(embeddings), len(embeddings[0]), len(texts)) + if len(embeddings) != len(texts) || len(embeddings[0]) != dimensionality { + t.Errorf("len(embeddings), len(embeddings[0]) = %d, %d, want %d, %d", len(embeddings), len(embeddings[0]), len(texts), dimensionality) } } From d9199d117a167933d3ff5b0ceb875077517aba23 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 00:21:30 +0000 Subject: [PATCH 02/15] fix the readability comments --- aiplatform/snippets/embeddings.go | 8 +- aiplatform/snippets/embeddings_test.go | 14 ++-- aiplatform/text-embeddings/embeddings.go | 73 ------------------- aiplatform/text-embeddings/embeddings_test.go | 43 ----------- 4 files changed, 14 insertions(+), 124 deletions(-) delete mode 100644 aiplatform/text-embeddings/embeddings.go delete mode 100644 aiplatform/text-embeddings/embeddings_test.go diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index c3add32f92..c44d8f504f 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -28,10 +28,14 @@ import ( ) func embedTexts( - apiEndpoint, project, model string, texts []string, - task string, customOutputDimensionality *int) ([][]float32, error) { + project, texts []string) ([][]float32, error) { ctx := context.Background() + apiEndpoint := "us-central1-aiplatform.googleapis.com" + model := "text-embedding-004" + task := "classification" + customOutputDimensionality := 256 + client, err := aiplatform.NewPredictionClient(ctx, option.WithEndpoint(apiEndpoint)) if err != nil { return nil, err diff --git a/aiplatform/snippets/embeddings_test.go b/aiplatform/snippets/embeddings_test.go index bd0c70ee72..96fdeb9cdd 100644 --- a/aiplatform/snippets/embeddings_test.go +++ b/aiplatform/snippets/embeddings_test.go @@ -22,16 +22,18 @@ import ( func TestGenerateEmbeddings(t *testing.T) { tc := testutil.SystemTest(t) - apiEndpoint := "us-central1-aiplatform.googleapis.com:443" - model := "text-embedding-004" texts := []string{"banana muffins? ", "banana bread? banana muffins?"} - dimensionality := 5 - embeddings, err := embedTextsPreview(apiEndpoint, tc.ProjectID, model, texts, "QUESTION_ANSWERING", &dimensionality) + embeddings, err := embedTextsPreview(tc.ProjectID, texts, &dimensionality) if err != nil { t.Fatal(err) } - if len(embeddings) != len(texts) || len(embeddings[0]) != dimensionality { - t.Errorf("len(embeddings), len(embeddings[0]) = %d, %d, want %d, %d", len(embeddings), len(embeddings[0]), len(texts), dimensionality) + + embeddingsLen := len(embeddings) + textsLen := len(texts) + embeddingDimensionality := len(embeddings[0]) + + if embeddingsLen != textsLen || embeddingDimensionality != dimensionality { + t.Errorf("embeddingsLen, embeddingDimensionality = %d, %d, want %d, %d", embeddingsLen, embeddingDimensionality, textsLen, dimensionality) } } diff --git a/aiplatform/text-embeddings/embeddings.go b/aiplatform/text-embeddings/embeddings.go deleted file mode 100644 index 320813e5e4..0000000000 --- a/aiplatform/text-embeddings/embeddings.go +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2023 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. - -package snippets - -// [START aiplatform_text_embeddings] -import ( - "context" - "fmt" - "io" - - aiplatform "cloud.google.com/go/aiplatform/apiv1beta1" - "cloud.google.com/go/aiplatform/apiv1beta1/aiplatformpb" - "google.golang.org/api/option" - "google.golang.org/protobuf/types/known/structpb" -) - -// generateEmbeddings creates embeddings from text provided. -func generateEmbeddings(w io.Writer, prompt, project, location, publisher, model string) error { - ctx := context.Background() - - apiEndpoint := fmt.Sprintf("%s-aiplatform.googleapis.com:443", location) - - client, err := aiplatform.NewPredictionClient(ctx, option.WithEndpoint(apiEndpoint)) - if err != nil { - fmt.Fprintf(w, "unable to create prediction client: %v", err) - return err - } - defer client.Close() - - // PredictRequest requires an endpoint, instances, and parameters - // Endpoint - base := fmt.Sprintf("projects/%s/locations/%s/publishers/%s/models", project, location, publisher) - url := fmt.Sprintf("%s/%s", base, model) - - // Instances: the prompt - promptValue, err := structpb.NewValue(map[string]interface{}{ - "content": prompt, - }) - if err != nil { - fmt.Fprintf(w, "unable to convert prompt to Value: %v", err) - return err - } - - // PredictRequest: create the model prediction request - req := &aiplatformpb.PredictRequest{ - Endpoint: url, - Instances: []*structpb.Value{promptValue}, - } - - // PredictResponse: receive the response from the model - resp, err := client.Predict(ctx, req) - if err != nil { - fmt.Fprintf(w, "error in prediction: %v", err) - return err - } - - fmt.Fprintf(w, "embeddings generated: %v", resp.Predictions[0]) - return nil -} - -// [END aiplatform_text_embeddings] diff --git a/aiplatform/text-embeddings/embeddings_test.go b/aiplatform/text-embeddings/embeddings_test.go deleted file mode 100644 index 21bf6c64f5..0000000000 --- a/aiplatform/text-embeddings/embeddings_test.go +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2023 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. - -package snippets - -import ( - "bytes" - "strings" - "testing" - - "github.com/GoogleCloudPlatform/golang-samples/internal/testutil" -) - -func TestGenerateEmbeddings(t *testing.T) { - tc := testutil.SystemTest(t) - - prompt := "hello, say something nice." - projectID := tc.ProjectID - location := "us-central1" - publisher := "google" - model := "textembedding-gecko" - - var buf bytes.Buffer - if err := generateEmbeddings(&buf, prompt, projectID, location, publisher, model); err != nil { - t.Fatal(err) - } - - if got := buf.String(); !strings.Contains(got, "embeddings generated:") { - t.Error("generated embeddings content not found in response") - } - -} From 7d08d95e38216bfda35d85567c7615c33560dc23 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 00:31:34 +0000 Subject: [PATCH 03/15] fix the integer issue --- aiplatform/snippets/BUILD | 24 ++++++++++++++++++++++++ aiplatform/snippets/embeddings.go | 6 ++---- 2 files changed, 26 insertions(+), 4 deletions(-) create mode 100644 aiplatform/snippets/BUILD diff --git a/aiplatform/snippets/BUILD b/aiplatform/snippets/BUILD new file mode 100644 index 0000000000..032db5b55f --- /dev/null +++ b/aiplatform/snippets/BUILD @@ -0,0 +1,24 @@ +go_library( + name = "snippets", + srcs = [ + "create_dataset.go", + "delete_dataset.go", + "embeddings.go", + "embeddings_preview.go", + "import_data_image_classification.go", + "list_models.go", + "test.go", + ], +) + +go_test( + name = "snippets_test", + srcs = [ + "create_dataset_test.go", + "delete_dataset_test.go", + "embeddings_test.go", + "import_data_image_classification_test.go", + "list_models_test.go", + ], + library = ":snippets", +) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index c44d8f504f..963f1ec534 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -57,10 +57,8 @@ func embedTexts( }, }) } - outputDimensionality := structpb.NewNullValue() - if customOutputDimensionality != nil { - outputDimensionality = structpb.NewNumberValue(float64(*customOutputDimensionality)) - } + outputDimensionality = structpb.NewNumberValue(float64(*customOutputDimensionality)) + params := structpb.NewStructValue(&structpb.Struct{ Fields: map[string]*structpb.Value{"outputDimensionality": outputDimensionality}, }) From 0430c7e42f5f317b9805ddf1fd5ff06f94e22bcd Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 00:34:42 +0000 Subject: [PATCH 04/15] remove BUILD file --- aiplatform/snippets/BUILD | 24 ------------------------ 1 file changed, 24 deletions(-) delete mode 100644 aiplatform/snippets/BUILD diff --git a/aiplatform/snippets/BUILD b/aiplatform/snippets/BUILD deleted file mode 100644 index 032db5b55f..0000000000 --- a/aiplatform/snippets/BUILD +++ /dev/null @@ -1,24 +0,0 @@ -go_library( - name = "snippets", - srcs = [ - "create_dataset.go", - "delete_dataset.go", - "embeddings.go", - "embeddings_preview.go", - "import_data_image_classification.go", - "list_models.go", - "test.go", - ], -) - -go_test( - name = "snippets_test", - srcs = [ - "create_dataset_test.go", - "delete_dataset_test.go", - "embeddings_test.go", - "import_data_image_classification_test.go", - "list_models_test.go", - ], - library = ":snippets", -) From 14c0a2340cfa8c593d9968951a3788eb8e289469 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 00:39:53 +0000 Subject: [PATCH 05/15] fix the tests error --- aiplatform/snippets/embeddings.go | 2 +- aiplatform/snippets/embeddings_test.go | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index 963f1ec534..d7d0b2ce55 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -34,7 +34,7 @@ func embedTexts( apiEndpoint := "us-central1-aiplatform.googleapis.com" model := "text-embedding-004" task := "classification" - customOutputDimensionality := 256 + customOutputDimensionality := 5 client, err := aiplatform.NewPredictionClient(ctx, option.WithEndpoint(apiEndpoint)) if err != nil { diff --git a/aiplatform/snippets/embeddings_test.go b/aiplatform/snippets/embeddings_test.go index 96fdeb9cdd..e85ae6ba13 100644 --- a/aiplatform/snippets/embeddings_test.go +++ b/aiplatform/snippets/embeddings_test.go @@ -23,7 +23,8 @@ import ( func TestGenerateEmbeddings(t *testing.T) { tc := testutil.SystemTest(t) texts := []string{"banana muffins? ", "banana bread? banana muffins?"} - embeddings, err := embedTextsPreview(tc.ProjectID, texts, &dimensionality) + dimensionality := 5 + embeddings, err := embedTextsPreview(tc.ProjectID, texts) if err != nil { t.Fatal(err) } @@ -39,7 +40,6 @@ func TestGenerateEmbeddings(t *testing.T) { func TestGenerateEmbeddingsPreview(t *testing.T) { tc := testutil.SystemTest(t) - apiEndpoint := "us-central1-aiplatform.googleapis.com:443" model := "text-embedding-preview-0409" texts := []string{"banana muffins? ", "banana bread? banana muffins?"} dimensionality := 5 From 64c25e5d7703bf18982536a08ddbc1d0a2da74a4 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 00:48:54 +0000 Subject: [PATCH 06/15] change output_dimentionality as integer --- aiplatform/snippets/embeddings.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index d7d0b2ce55..298fa4f3be 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -57,7 +57,7 @@ func embedTexts( }, }) } - outputDimensionality = structpb.NewNumberValue(float64(*customOutputDimensionality)) + outputDimensionality = structpb.NewNumberValue(float64(customOutputDimensionality)) params := structpb.NewStructValue(&structpb.Struct{ Fields: map[string]*structpb.Value{"outputDimensionality": outputDimensionality}, From 099de4f7edc6c89096de8a0b5da7d65bbaeef1aa Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 00:57:52 +0000 Subject: [PATCH 07/15] change output_dimentionality as integer --- aiplatform/snippets/embeddings.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index 298fa4f3be..1fe96472a3 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -57,8 +57,10 @@ func embedTexts( }, }) } - outputDimensionality = structpb.NewNumberValue(float64(customOutputDimensionality)) - + outputDimensionality := structpb.NewNullValue() + if customOutputDimensionality != nil { + outputDimensionality = structpb.NewNumberValue(float64(*customOutputDimensionality)) + } params := structpb.NewStructValue(&structpb.Struct{ Fields: map[string]*structpb.Value{"outputDimensionality": outputDimensionality}, }) From 15e135107dac36eb39df874a840ef35afcef2a64 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 18:20:16 +0000 Subject: [PATCH 08/15] fix bug --- aiplatform/snippets/embeddings.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index 1fe96472a3..b32df7542d 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -58,9 +58,8 @@ func embedTexts( }) } outputDimensionality := structpb.NewNullValue() - if customOutputDimensionality != nil { - outputDimensionality = structpb.NewNumberValue(float64(*customOutputDimensionality)) - } + outputDimensionality = structpb.NewNumberValue(float64(customOutputDimensionality)) + params := structpb.NewStructValue(&structpb.Struct{ Fields: map[string]*structpb.Value{"outputDimensionality": outputDimensionality}, }) From dd957d60e37682af0d49616e71a51d84195367da Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 18:31:27 +0000 Subject: [PATCH 09/15] fix test bug --- aiplatform/snippets/embeddings_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aiplatform/snippets/embeddings_test.go b/aiplatform/snippets/embeddings_test.go index e85ae6ba13..1e1f0ab9b1 100644 --- a/aiplatform/snippets/embeddings_test.go +++ b/aiplatform/snippets/embeddings_test.go @@ -24,7 +24,7 @@ func TestGenerateEmbeddings(t *testing.T) { tc := testutil.SystemTest(t) texts := []string{"banana muffins? ", "banana bread? banana muffins?"} dimensionality := 5 - embeddings, err := embedTextsPreview(tc.ProjectID, texts) + embeddings, err := embedTexts(tc.ProjectID, texts) if err != nil { t.Fatal(err) } From 9b7e51b02c98d969a2fa703f7b8f858df63eaa97 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 19:58:29 +0000 Subject: [PATCH 10/15] fix error --- aiplatform/snippets/embeddings.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index b32df7542d..239e571eb4 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -28,7 +28,7 @@ import ( ) func embedTexts( - project, texts []string) ([][]float32, error) { + project string, texts []string) ([][]float32, error) { ctx := context.Background() apiEndpoint := "us-central1-aiplatform.googleapis.com" From 0cac77b44d8269ee0eb349af5d9f1660076fde7c Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 20:24:08 +0000 Subject: [PATCH 11/15] fix error --- aiplatform/snippets/embeddings_test.go | 1 + 1 file changed, 1 insertion(+) diff --git a/aiplatform/snippets/embeddings_test.go b/aiplatform/snippets/embeddings_test.go index 1e1f0ab9b1..ed9f70744c 100644 --- a/aiplatform/snippets/embeddings_test.go +++ b/aiplatform/snippets/embeddings_test.go @@ -40,6 +40,7 @@ func TestGenerateEmbeddings(t *testing.T) { func TestGenerateEmbeddingsPreview(t *testing.T) { tc := testutil.SystemTest(t) + apiEndpoint := "us-central1-aiplatform.googleapis.com:443" model := "text-embedding-preview-0409" texts := []string{"banana muffins? ", "banana bread? banana muffins?"} dimensionality := 5 From d07f25844aea43a1958d4b702ac565c2273f441c Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 21:44:55 +0000 Subject: [PATCH 12/15] add endpoint port number --- aiplatform/snippets/embeddings.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index 239e571eb4..5657bda9b3 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -31,7 +31,7 @@ func embedTexts( project string, texts []string) ([][]float32, error) { ctx := context.Background() - apiEndpoint := "us-central1-aiplatform.googleapis.com" + apiEndpoint := "us-central1-aiplatform.googleapis.com:443" model := "text-embedding-004" task := "classification" customOutputDimensionality := 5 From 22a32dc43da1e92d527358826b0c2396eae7272b Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 14 May 2024 22:19:29 +0000 Subject: [PATCH 13/15] fix the task error --- aiplatform/snippets/embeddings.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index 5657bda9b3..f3c24c0864 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -33,7 +33,7 @@ func embedTexts( apiEndpoint := "us-central1-aiplatform.googleapis.com:443" model := "text-embedding-004" - task := "classification" + task := "QUESTION_ANSWERING" customOutputDimensionality := 5 client, err := aiplatform.NewPredictionClient(ctx, option.WithEndpoint(apiEndpoint)) From bafdaf9631b3cb0ce3f93ca83fa620da05d3a7f7 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 28 May 2024 21:15:43 +0000 Subject: [PATCH 14/15] explicitly set the location for apiEndpoint --- aiplatform/snippets/embeddings.go | 4 ++-- aiplatform/snippets/embeddings_test.go | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index f3c24c0864..2772f26a89 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -28,10 +28,10 @@ import ( ) func embedTexts( - project string, texts []string) ([][]float32, error) { + project, location string, texts []string) ([][]float32, error) { ctx := context.Background() - apiEndpoint := "us-central1-aiplatform.googleapis.com:443" + apiEndpoint := fmt.Sprintf("%s-aiplatform.googleapis.com:443", location) model := "text-embedding-004" task := "QUESTION_ANSWERING" customOutputDimensionality := 5 diff --git a/aiplatform/snippets/embeddings_test.go b/aiplatform/snippets/embeddings_test.go index ed9f70744c..a286947e98 100644 --- a/aiplatform/snippets/embeddings_test.go +++ b/aiplatform/snippets/embeddings_test.go @@ -24,7 +24,8 @@ func TestGenerateEmbeddings(t *testing.T) { tc := testutil.SystemTest(t) texts := []string{"banana muffins? ", "banana bread? banana muffins?"} dimensionality := 5 - embeddings, err := embedTexts(tc.ProjectID, texts) + location := "us-central1" + embeddings, err := embedTexts(tc.ProjectID, location, texts) if err != nil { t.Fatal(err) } From 4b67193ff291d7588ec73185e8257d82015b4267 Mon Sep 17 00:00:00 2001 From: Kewen Tang Date: Tue, 28 May 2024 21:28:07 +0000 Subject: [PATCH 15/15] fix duplicate error --- aiplatform/snippets/embeddings.go | 1 - 1 file changed, 1 deletion(-) diff --git a/aiplatform/snippets/embeddings.go b/aiplatform/snippets/embeddings.go index 2772f26a89..0209e0bda6 100644 --- a/aiplatform/snippets/embeddings.go +++ b/aiplatform/snippets/embeddings.go @@ -43,7 +43,6 @@ func embedTexts( defer client.Close() match := regexp.MustCompile(`^(\w+-\w+)`).FindStringSubmatch(apiEndpoint) - location := "us-central1" if match != nil { location = match[1] }