gcp.vertex.AiIndex
Explore with Pulumi AI
A representation of a collection of database items organized in a way that allows for approximate nearest neighbor (a.k.a ANN) algorithms search.
To get more information about Index, see:
Example Usage
Vertex Ai Index
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var bucket = new Gcp.Storage.Bucket("bucket", new()
{
Location = "us-central1",
UniformBucketLevelAccess = true,
});
// The sample data comes from the following link:
// https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#specify-namespaces-tokens
var data = new Gcp.Storage.BucketObject("data", new()
{
Bucket = bucket.Name,
Content = @"{""id"": ""42"", ""embedding"": [0.5, 1.0], ""restricts"": [{""namespace"": ""class"", ""allow"": [""cat"", ""pet""]},{""namespace"": ""category"", ""allow"": [""feline""]}]}
{""id"": ""43"", ""embedding"": [0.6, 1.0], ""restricts"": [{""namespace"": ""class"", ""allow"": [""dog"", ""pet""]},{""namespace"": ""category"", ""allow"": [""canine""]}]}
",
});
var index = new Gcp.Vertex.AiIndex("index", new()
{
Labels =
{
{ "foo", "bar" },
},
Region = "us-central1",
DisplayName = "test-index",
Description = "index for test",
Metadata = new Gcp.Vertex.Inputs.AiIndexMetadataArgs
{
ContentsDeltaUri = bucket.Name.Apply(name => $"gs://{name}/contents"),
Config = new Gcp.Vertex.Inputs.AiIndexMetadataConfigArgs
{
Dimensions = 2,
ApproximateNeighborsCount = 150,
ShardSize = "SHARD_SIZE_SMALL",
DistanceMeasureType = "DOT_PRODUCT_DISTANCE",
AlgorithmConfig = new Gcp.Vertex.Inputs.AiIndexMetadataConfigAlgorithmConfigArgs
{
TreeAhConfig = new Gcp.Vertex.Inputs.AiIndexMetadataConfigAlgorithmConfigTreeAhConfigArgs
{
LeafNodeEmbeddingCount = 500,
LeafNodesToSearchPercent = 7,
},
},
},
},
IndexUpdateMethod = "BATCH_UPDATE",
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/storage"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/vertex"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
bucket, err := storage.NewBucket(ctx, "bucket", &storage.BucketArgs{
Location: pulumi.String("us-central1"),
UniformBucketLevelAccess: pulumi.Bool(true),
})
if err != nil {
return err
}
_, err = storage.NewBucketObject(ctx, "data", &storage.BucketObjectArgs{
Bucket: bucket.Name,
Content: pulumi.String("{\"id\": \"42\", \"embedding\": [0.5, 1.0], \"restricts\": [{\"namespace\": \"class\", \"allow\": [\"cat\", \"pet\"]},{\"namespace\": \"category\", \"allow\": [\"feline\"]}]}\n{\"id\": \"43\", \"embedding\": [0.6, 1.0], \"restricts\": [{\"namespace\": \"class\", \"allow\": [\"dog\", \"pet\"]},{\"namespace\": \"category\", \"allow\": [\"canine\"]}]}\n"),
})
if err != nil {
return err
}
_, err = vertex.NewAiIndex(ctx, "index", &vertex.AiIndexArgs{
Labels: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
Region: pulumi.String("us-central1"),
DisplayName: pulumi.String("test-index"),
Description: pulumi.String("index for test"),
Metadata: &vertex.AiIndexMetadataArgs{
ContentsDeltaUri: bucket.Name.ApplyT(func(name string) (string, error) {
return fmt.Sprintf("gs://%v/contents", name), nil
}).(pulumi.StringOutput),
Config: &vertex.AiIndexMetadataConfigArgs{
Dimensions: pulumi.Int(2),
ApproximateNeighborsCount: pulumi.Int(150),
ShardSize: pulumi.String("SHARD_SIZE_SMALL"),
DistanceMeasureType: pulumi.String("DOT_PRODUCT_DISTANCE"),
AlgorithmConfig: &vertex.AiIndexMetadataConfigAlgorithmConfigArgs{
TreeAhConfig: &vertex.AiIndexMetadataConfigAlgorithmConfigTreeAhConfigArgs{
LeafNodeEmbeddingCount: pulumi.Int(500),
LeafNodesToSearchPercent: pulumi.Int(7),
},
},
},
},
IndexUpdateMethod: pulumi.String("BATCH_UPDATE"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.storage.Bucket;
import com.pulumi.gcp.storage.BucketArgs;
import com.pulumi.gcp.storage.BucketObject;
import com.pulumi.gcp.storage.BucketObjectArgs;
import com.pulumi.gcp.vertex.AiIndex;
import com.pulumi.gcp.vertex.AiIndexArgs;
import com.pulumi.gcp.vertex.inputs.AiIndexMetadataArgs;
import com.pulumi.gcp.vertex.inputs.AiIndexMetadataConfigArgs;
import com.pulumi.gcp.vertex.inputs.AiIndexMetadataConfigAlgorithmConfigArgs;
import com.pulumi.gcp.vertex.inputs.AiIndexMetadataConfigAlgorithmConfigTreeAhConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var bucket = new Bucket("bucket", BucketArgs.builder()
.location("us-central1")
.uniformBucketLevelAccess(true)
.build());
var data = new BucketObject("data", BucketObjectArgs.builder()
.bucket(bucket.name())
.content("""
{"id": "42", "embedding": [0.5, 1.0], "restricts": [{"namespace": "class", "allow": ["cat", "pet"]},{"namespace": "category", "allow": ["feline"]}]}
{"id": "43", "embedding": [0.6, 1.0], "restricts": [{"namespace": "class", "allow": ["dog", "pet"]},{"namespace": "category", "allow": ["canine"]}]}
""")
.build());
var index = new AiIndex("index", AiIndexArgs.builder()
.labels(Map.of("foo", "bar"))
.region("us-central1")
.displayName("test-index")
.description("index for test")
.metadata(AiIndexMetadataArgs.builder()
.contentsDeltaUri(bucket.name().applyValue(name -> String.format("gs://%s/contents", name)))
.config(AiIndexMetadataConfigArgs.builder()
.dimensions(2)
.approximateNeighborsCount(150)
.shardSize("SHARD_SIZE_SMALL")
.distanceMeasureType("DOT_PRODUCT_DISTANCE")
.algorithmConfig(AiIndexMetadataConfigAlgorithmConfigArgs.builder()
.treeAhConfig(AiIndexMetadataConfigAlgorithmConfigTreeAhConfigArgs.builder()
.leafNodeEmbeddingCount(500)
.leafNodesToSearchPercent(7)
.build())
.build())
.build())
.build())
.indexUpdateMethod("BATCH_UPDATE")
.build());
}
}
import pulumi
import pulumi_gcp as gcp
bucket = gcp.storage.Bucket("bucket",
location="us-central1",
uniform_bucket_level_access=True)
# The sample data comes from the following link:
# https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#specify-namespaces-tokens
data = gcp.storage.BucketObject("data",
bucket=bucket.name,
content="""{"id": "42", "embedding": [0.5, 1.0], "restricts": [{"namespace": "class", "allow": ["cat", "pet"]},{"namespace": "category", "allow": ["feline"]}]}
{"id": "43", "embedding": [0.6, 1.0], "restricts": [{"namespace": "class", "allow": ["dog", "pet"]},{"namespace": "category", "allow": ["canine"]}]}
""")
index = gcp.vertex.AiIndex("index",
labels={
"foo": "bar",
},
region="us-central1",
display_name="test-index",
description="index for test",
metadata=gcp.vertex.AiIndexMetadataArgs(
contents_delta_uri=bucket.name.apply(lambda name: f"gs://{name}/contents"),
config=gcp.vertex.AiIndexMetadataConfigArgs(
dimensions=2,
approximate_neighbors_count=150,
shard_size="SHARD_SIZE_SMALL",
distance_measure_type="DOT_PRODUCT_DISTANCE",
algorithm_config=gcp.vertex.AiIndexMetadataConfigAlgorithmConfigArgs(
tree_ah_config=gcp.vertex.AiIndexMetadataConfigAlgorithmConfigTreeAhConfigArgs(
leaf_node_embedding_count=500,
leaf_nodes_to_search_percent=7,
),
),
),
),
index_update_method="BATCH_UPDATE")
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const bucket = new gcp.storage.Bucket("bucket", {
location: "us-central1",
uniformBucketLevelAccess: true,
});
// The sample data comes from the following link:
// https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#specify-namespaces-tokens
const data = new gcp.storage.BucketObject("data", {
bucket: bucket.name,
content: `{"id": "42", "embedding": [0.5, 1.0], "restricts": [{"namespace": "class", "allow": ["cat", "pet"]},{"namespace": "category", "allow": ["feline"]}]}
{"id": "43", "embedding": [0.6, 1.0], "restricts": [{"namespace": "class", "allow": ["dog", "pet"]},{"namespace": "category", "allow": ["canine"]}]}
`,
});
const index = new gcp.vertex.AiIndex("index", {
labels: {
foo: "bar",
},
region: "us-central1",
displayName: "test-index",
description: "index for test",
metadata: {
contentsDeltaUri: pulumi.interpolate`gs://${bucket.name}/contents`,
config: {
dimensions: 2,
approximateNeighborsCount: 150,
shardSize: "SHARD_SIZE_SMALL",
distanceMeasureType: "DOT_PRODUCT_DISTANCE",
algorithmConfig: {
treeAhConfig: {
leafNodeEmbeddingCount: 500,
leafNodesToSearchPercent: 7,
},
},
},
},
indexUpdateMethod: "BATCH_UPDATE",
});
resources:
bucket:
type: gcp:storage:Bucket
properties:
location: us-central1
uniformBucketLevelAccess: true
# The sample data comes from the following link:
# https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#specify-namespaces-tokens
data:
type: gcp:storage:BucketObject
properties:
bucket: ${bucket.name}
content: |
{"id": "42", "embedding": [0.5, 1.0], "restricts": [{"namespace": "class", "allow": ["cat", "pet"]},{"namespace": "category", "allow": ["feline"]}]}
{"id": "43", "embedding": [0.6, 1.0], "restricts": [{"namespace": "class", "allow": ["dog", "pet"]},{"namespace": "category", "allow": ["canine"]}]}
index:
type: gcp:vertex:AiIndex
properties:
labels:
foo: bar
region: us-central1
displayName: test-index
description: index for test
metadata:
contentsDeltaUri: gs://${bucket.name}/contents
config:
dimensions: 2
approximateNeighborsCount: 150
shardSize: SHARD_SIZE_SMALL
distanceMeasureType: DOT_PRODUCT_DISTANCE
algorithmConfig:
treeAhConfig:
leafNodeEmbeddingCount: 500
leafNodesToSearchPercent: 7
indexUpdateMethod: BATCH_UPDATE
Vertex Ai Index Streaming
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var bucket = new Gcp.Storage.Bucket("bucket", new()
{
Location = "us-central1",
UniformBucketLevelAccess = true,
});
// The sample data comes from the following link:
// https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#specify-namespaces-tokens
var data = new Gcp.Storage.BucketObject("data", new()
{
Bucket = bucket.Name,
Content = @"{""id"": ""42"", ""embedding"": [0.5, 1.0], ""restricts"": [{""namespace"": ""class"", ""allow"": [""cat"", ""pet""]},{""namespace"": ""category"", ""allow"": [""feline""]}]}
{""id"": ""43"", ""embedding"": [0.6, 1.0], ""restricts"": [{""namespace"": ""class"", ""allow"": [""dog"", ""pet""]},{""namespace"": ""category"", ""allow"": [""canine""]}]}
",
});
var index = new Gcp.Vertex.AiIndex("index", new()
{
Labels =
{
{ "foo", "bar" },
},
Region = "us-central1",
DisplayName = "test-index",
Description = "index for test",
Metadata = new Gcp.Vertex.Inputs.AiIndexMetadataArgs
{
ContentsDeltaUri = bucket.Name.Apply(name => $"gs://{name}/contents"),
Config = new Gcp.Vertex.Inputs.AiIndexMetadataConfigArgs
{
Dimensions = 2,
ShardSize = "SHARD_SIZE_LARGE",
DistanceMeasureType = "COSINE_DISTANCE",
FeatureNormType = "UNIT_L2_NORM",
AlgorithmConfig = new Gcp.Vertex.Inputs.AiIndexMetadataConfigAlgorithmConfigArgs
{
BruteForceConfig = null,
},
},
},
IndexUpdateMethod = "STREAM_UPDATE",
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/storage"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/vertex"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
bucket, err := storage.NewBucket(ctx, "bucket", &storage.BucketArgs{
Location: pulumi.String("us-central1"),
UniformBucketLevelAccess: pulumi.Bool(true),
})
if err != nil {
return err
}
_, err = storage.NewBucketObject(ctx, "data", &storage.BucketObjectArgs{
Bucket: bucket.Name,
Content: pulumi.String("{\"id\": \"42\", \"embedding\": [0.5, 1.0], \"restricts\": [{\"namespace\": \"class\", \"allow\": [\"cat\", \"pet\"]},{\"namespace\": \"category\", \"allow\": [\"feline\"]}]}\n{\"id\": \"43\", \"embedding\": [0.6, 1.0], \"restricts\": [{\"namespace\": \"class\", \"allow\": [\"dog\", \"pet\"]},{\"namespace\": \"category\", \"allow\": [\"canine\"]}]}\n"),
})
if err != nil {
return err
}
_, err = vertex.NewAiIndex(ctx, "index", &vertex.AiIndexArgs{
Labels: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
Region: pulumi.String("us-central1"),
DisplayName: pulumi.String("test-index"),
Description: pulumi.String("index for test"),
Metadata: &vertex.AiIndexMetadataArgs{
ContentsDeltaUri: bucket.Name.ApplyT(func(name string) (string, error) {
return fmt.Sprintf("gs://%v/contents", name), nil
}).(pulumi.StringOutput),
Config: &vertex.AiIndexMetadataConfigArgs{
Dimensions: pulumi.Int(2),
ShardSize: pulumi.String("SHARD_SIZE_LARGE"),
DistanceMeasureType: pulumi.String("COSINE_DISTANCE"),
FeatureNormType: pulumi.String("UNIT_L2_NORM"),
AlgorithmConfig: &vertex.AiIndexMetadataConfigAlgorithmConfigArgs{
BruteForceConfig: nil,
},
},
},
IndexUpdateMethod: pulumi.String("STREAM_UPDATE"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.storage.Bucket;
import com.pulumi.gcp.storage.BucketArgs;
import com.pulumi.gcp.storage.BucketObject;
import com.pulumi.gcp.storage.BucketObjectArgs;
import com.pulumi.gcp.vertex.AiIndex;
import com.pulumi.gcp.vertex.AiIndexArgs;
import com.pulumi.gcp.vertex.inputs.AiIndexMetadataArgs;
import com.pulumi.gcp.vertex.inputs.AiIndexMetadataConfigArgs;
import com.pulumi.gcp.vertex.inputs.AiIndexMetadataConfigAlgorithmConfigArgs;
import com.pulumi.gcp.vertex.inputs.AiIndexMetadataConfigAlgorithmConfigBruteForceConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var bucket = new Bucket("bucket", BucketArgs.builder()
.location("us-central1")
.uniformBucketLevelAccess(true)
.build());
var data = new BucketObject("data", BucketObjectArgs.builder()
.bucket(bucket.name())
.content("""
{"id": "42", "embedding": [0.5, 1.0], "restricts": [{"namespace": "class", "allow": ["cat", "pet"]},{"namespace": "category", "allow": ["feline"]}]}
{"id": "43", "embedding": [0.6, 1.0], "restricts": [{"namespace": "class", "allow": ["dog", "pet"]},{"namespace": "category", "allow": ["canine"]}]}
""")
.build());
var index = new AiIndex("index", AiIndexArgs.builder()
.labels(Map.of("foo", "bar"))
.region("us-central1")
.displayName("test-index")
.description("index for test")
.metadata(AiIndexMetadataArgs.builder()
.contentsDeltaUri(bucket.name().applyValue(name -> String.format("gs://%s/contents", name)))
.config(AiIndexMetadataConfigArgs.builder()
.dimensions(2)
.shardSize("SHARD_SIZE_LARGE")
.distanceMeasureType("COSINE_DISTANCE")
.featureNormType("UNIT_L2_NORM")
.algorithmConfig(AiIndexMetadataConfigAlgorithmConfigArgs.builder()
.bruteForceConfig()
.build())
.build())
.build())
.indexUpdateMethod("STREAM_UPDATE")
.build());
}
}
import pulumi
import pulumi_gcp as gcp
bucket = gcp.storage.Bucket("bucket",
location="us-central1",
uniform_bucket_level_access=True)
# The sample data comes from the following link:
# https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#specify-namespaces-tokens
data = gcp.storage.BucketObject("data",
bucket=bucket.name,
content="""{"id": "42", "embedding": [0.5, 1.0], "restricts": [{"namespace": "class", "allow": ["cat", "pet"]},{"namespace": "category", "allow": ["feline"]}]}
{"id": "43", "embedding": [0.6, 1.0], "restricts": [{"namespace": "class", "allow": ["dog", "pet"]},{"namespace": "category", "allow": ["canine"]}]}
""")
index = gcp.vertex.AiIndex("index",
labels={
"foo": "bar",
},
region="us-central1",
display_name="test-index",
description="index for test",
metadata=gcp.vertex.AiIndexMetadataArgs(
contents_delta_uri=bucket.name.apply(lambda name: f"gs://{name}/contents"),
config=gcp.vertex.AiIndexMetadataConfigArgs(
dimensions=2,
shard_size="SHARD_SIZE_LARGE",
distance_measure_type="COSINE_DISTANCE",
feature_norm_type="UNIT_L2_NORM",
algorithm_config=gcp.vertex.AiIndexMetadataConfigAlgorithmConfigArgs(
brute_force_config=gcp.vertex.AiIndexMetadataConfigAlgorithmConfigBruteForceConfigArgs(),
),
),
),
index_update_method="STREAM_UPDATE")
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const bucket = new gcp.storage.Bucket("bucket", {
location: "us-central1",
uniformBucketLevelAccess: true,
});
// The sample data comes from the following link:
// https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#specify-namespaces-tokens
const data = new gcp.storage.BucketObject("data", {
bucket: bucket.name,
content: `{"id": "42", "embedding": [0.5, 1.0], "restricts": [{"namespace": "class", "allow": ["cat", "pet"]},{"namespace": "category", "allow": ["feline"]}]}
{"id": "43", "embedding": [0.6, 1.0], "restricts": [{"namespace": "class", "allow": ["dog", "pet"]},{"namespace": "category", "allow": ["canine"]}]}
`,
});
const index = new gcp.vertex.AiIndex("index", {
labels: {
foo: "bar",
},
region: "us-central1",
displayName: "test-index",
description: "index for test",
metadata: {
contentsDeltaUri: pulumi.interpolate`gs://${bucket.name}/contents`,
config: {
dimensions: 2,
shardSize: "SHARD_SIZE_LARGE",
distanceMeasureType: "COSINE_DISTANCE",
featureNormType: "UNIT_L2_NORM",
algorithmConfig: {
bruteForceConfig: {},
},
},
},
indexUpdateMethod: "STREAM_UPDATE",
});
resources:
bucket:
type: gcp:storage:Bucket
properties:
location: us-central1
uniformBucketLevelAccess: true
# The sample data comes from the following link:
# https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#specify-namespaces-tokens
data:
type: gcp:storage:BucketObject
properties:
bucket: ${bucket.name}
content: |
{"id": "42", "embedding": [0.5, 1.0], "restricts": [{"namespace": "class", "allow": ["cat", "pet"]},{"namespace": "category", "allow": ["feline"]}]}
{"id": "43", "embedding": [0.6, 1.0], "restricts": [{"namespace": "class", "allow": ["dog", "pet"]},{"namespace": "category", "allow": ["canine"]}]}
index:
type: gcp:vertex:AiIndex
properties:
labels:
foo: bar
region: us-central1
displayName: test-index
description: index for test
metadata:
contentsDeltaUri: gs://${bucket.name}/contents
config:
dimensions: 2
shardSize: SHARD_SIZE_LARGE
distanceMeasureType: COSINE_DISTANCE
featureNormType: UNIT_L2_NORM
algorithmConfig:
bruteForceConfig: {}
indexUpdateMethod: STREAM_UPDATE
Create AiIndex Resource
new AiIndex(name: string, args: AiIndexArgs, opts?: CustomResourceOptions);
@overload
def AiIndex(resource_name: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
display_name: Optional[str] = None,
index_update_method: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
metadata: Optional[AiIndexMetadataArgs] = None,
project: Optional[str] = None,
region: Optional[str] = None)
@overload
def AiIndex(resource_name: str,
args: AiIndexArgs,
opts: Optional[ResourceOptions] = None)
func NewAiIndex(ctx *Context, name string, args AiIndexArgs, opts ...ResourceOption) (*AiIndex, error)
public AiIndex(string name, AiIndexArgs args, CustomResourceOptions? opts = null)
public AiIndex(String name, AiIndexArgs args)
public AiIndex(String name, AiIndexArgs args, CustomResourceOptions options)
type: gcp:vertex:AiIndex
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args AiIndexArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args AiIndexArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args AiIndexArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args AiIndexArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args AiIndexArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
AiIndex Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The AiIndex resource accepts the following input properties:
- Display
Name string The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- Description string
The description of the Index.
- Index
Update stringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- Labels Dictionary<string, string>
The labels with user-defined metadata to organize your Indexes.
- Metadata
Ai
Index Metadata An additional information about the Index Structure is documented below.
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Region string
The region of the index. eg us-central1
- Display
Name string The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- Description string
The description of the Index.
- Index
Update stringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- Labels map[string]string
The labels with user-defined metadata to organize your Indexes.
- Metadata
Ai
Index Metadata Args An additional information about the Index Structure is documented below.
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Region string
The region of the index. eg us-central1
- display
Name String The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- description String
The description of the Index.
- index
Update StringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- labels Map<String,String>
The labels with user-defined metadata to organize your Indexes.
- metadata
Ai
Index Metadata An additional information about the Index Structure is documented below.
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region String
The region of the index. eg us-central1
- display
Name string The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- description string
The description of the Index.
- index
Update stringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- labels {[key: string]: string}
The labels with user-defined metadata to organize your Indexes.
- metadata
Ai
Index Metadata An additional information about the Index Structure is documented below.
- project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region string
The region of the index. eg us-central1
- display_
name str The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- description str
The description of the Index.
- index_
update_ strmethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- labels Mapping[str, str]
The labels with user-defined metadata to organize your Indexes.
- metadata
Ai
Index Metadata Args An additional information about the Index Structure is documented below.
- project str
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region str
The region of the index. eg us-central1
- display
Name String The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- description String
The description of the Index.
- index
Update StringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- labels Map<String>
The labels with user-defined metadata to organize your Indexes.
- metadata Property Map
An additional information about the Index Structure is documented below.
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region String
The region of the index. eg us-central1
Outputs
All input properties are implicitly available as output properties. Additionally, the AiIndex resource produces the following output properties:
- Create
Time string The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- Deployed
Indexes List<AiIndex Deployed Index> The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- Etag string
Used to perform consistent read-modify-write updates.
- Id string
The provider-assigned unique ID for this managed resource.
- Index
Stats List<AiIndex Index Stat> Stats of the index resource. Structure is documented below.
- Metadata
Schema stringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- Name string
The resource name of the Index.
- Update
Time string The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- Create
Time string The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- Deployed
Indexes []AiIndex Deployed Index The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- Etag string
Used to perform consistent read-modify-write updates.
- Id string
The provider-assigned unique ID for this managed resource.
- Index
Stats []AiIndex Index Stat Stats of the index resource. Structure is documented below.
- Metadata
Schema stringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- Name string
The resource name of the Index.
- Update
Time string The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- create
Time String The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- deployed
Indexes List<AiIndex Deployed Index> The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- etag String
Used to perform consistent read-modify-write updates.
- id String
The provider-assigned unique ID for this managed resource.
- index
Stats List<AiIndex Index Stat> Stats of the index resource. Structure is documented below.
- metadata
Schema StringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- name String
The resource name of the Index.
- update
Time String The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- create
Time string The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- deployed
Indexes AiIndex Deployed Index[] The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- etag string
Used to perform consistent read-modify-write updates.
- id string
The provider-assigned unique ID for this managed resource.
- index
Stats AiIndex Index Stat[] Stats of the index resource. Structure is documented below.
- metadata
Schema stringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- name string
The resource name of the Index.
- update
Time string The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- create_
time str The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- deployed_
indexes Sequence[AiIndex Deployed Index] The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- etag str
Used to perform consistent read-modify-write updates.
- id str
The provider-assigned unique ID for this managed resource.
- index_
stats Sequence[AiIndex Index Stat] Stats of the index resource. Structure is documented below.
- metadata_
schema_ struri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- name str
The resource name of the Index.
- update_
time str The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- create
Time String The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- deployed
Indexes List<Property Map> The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- etag String
Used to perform consistent read-modify-write updates.
- id String
The provider-assigned unique ID for this managed resource.
- index
Stats List<Property Map> Stats of the index resource. Structure is documented below.
- metadata
Schema StringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- name String
The resource name of the Index.
- update
Time String The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
Look up Existing AiIndex Resource
Get an existing AiIndex resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: AiIndexState, opts?: CustomResourceOptions): AiIndex
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
create_time: Optional[str] = None,
deployed_indexes: Optional[Sequence[AiIndexDeployedIndexArgs]] = None,
description: Optional[str] = None,
display_name: Optional[str] = None,
etag: Optional[str] = None,
index_stats: Optional[Sequence[AiIndexIndexStatArgs]] = None,
index_update_method: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
metadata: Optional[AiIndexMetadataArgs] = None,
metadata_schema_uri: Optional[str] = None,
name: Optional[str] = None,
project: Optional[str] = None,
region: Optional[str] = None,
update_time: Optional[str] = None) -> AiIndex
func GetAiIndex(ctx *Context, name string, id IDInput, state *AiIndexState, opts ...ResourceOption) (*AiIndex, error)
public static AiIndex Get(string name, Input<string> id, AiIndexState? state, CustomResourceOptions? opts = null)
public static AiIndex get(String name, Output<String> id, AiIndexState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Create
Time string The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- Deployed
Indexes List<AiIndex Deployed Index> The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- Description string
The description of the Index.
- Display
Name string The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- Etag string
Used to perform consistent read-modify-write updates.
- Index
Stats List<AiIndex Index Stat> Stats of the index resource. Structure is documented below.
- Index
Update stringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- Labels Dictionary<string, string>
The labels with user-defined metadata to organize your Indexes.
- Metadata
Ai
Index Metadata An additional information about the Index Structure is documented below.
- Metadata
Schema stringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- Name string
The resource name of the Index.
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Region string
The region of the index. eg us-central1
- Update
Time string The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- Create
Time string The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- Deployed
Indexes []AiIndex Deployed Index Args The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- Description string
The description of the Index.
- Display
Name string The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- Etag string
Used to perform consistent read-modify-write updates.
- Index
Stats []AiIndex Index Stat Args Stats of the index resource. Structure is documented below.
- Index
Update stringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- Labels map[string]string
The labels with user-defined metadata to organize your Indexes.
- Metadata
Ai
Index Metadata Args An additional information about the Index Structure is documented below.
- Metadata
Schema stringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- Name string
The resource name of the Index.
- Project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Region string
The region of the index. eg us-central1
- Update
Time string The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- create
Time String The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- deployed
Indexes List<AiIndex Deployed Index> The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- description String
The description of the Index.
- display
Name String The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- etag String
Used to perform consistent read-modify-write updates.
- index
Stats List<AiIndex Index Stat> Stats of the index resource. Structure is documented below.
- index
Update StringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- labels Map<String,String>
The labels with user-defined metadata to organize your Indexes.
- metadata
Ai
Index Metadata An additional information about the Index Structure is documented below.
- metadata
Schema StringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- name String
The resource name of the Index.
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region String
The region of the index. eg us-central1
- update
Time String The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- create
Time string The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- deployed
Indexes AiIndex Deployed Index[] The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- description string
The description of the Index.
- display
Name string The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- etag string
Used to perform consistent read-modify-write updates.
- index
Stats AiIndex Index Stat[] Stats of the index resource. Structure is documented below.
- index
Update stringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- labels {[key: string]: string}
The labels with user-defined metadata to organize your Indexes.
- metadata
Ai
Index Metadata An additional information about the Index Structure is documented below.
- metadata
Schema stringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- name string
The resource name of the Index.
- project string
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region string
The region of the index. eg us-central1
- update
Time string The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- create_
time str The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- deployed_
indexes Sequence[AiIndex Deployed Index Args] The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- description str
The description of the Index.
- display_
name str The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- etag str
Used to perform consistent read-modify-write updates.
- index_
stats Sequence[AiIndex Index Stat Args] Stats of the index resource. Structure is documented below.
- index_
update_ strmethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- labels Mapping[str, str]
The labels with user-defined metadata to organize your Indexes.
- metadata
Ai
Index Metadata Args An additional information about the Index Structure is documented below.
- metadata_
schema_ struri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- name str
The resource name of the Index.
- project str
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region str
The region of the index. eg us-central1
- update_
time str The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- create
Time String The timestamp of when the Index was created in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
- deployed
Indexes List<Property Map> The pointers to DeployedIndexes created from this Index. An Index can be only deleted if all its DeployedIndexes had been undeployed first. Structure is documented below.
- description String
The description of the Index.
- display
Name String The display name of the Index. The name can be up to 128 characters long and can consist of any UTF-8 characters.
- etag String
Used to perform consistent read-modify-write updates.
- index
Stats List<Property Map> Stats of the index resource. Structure is documented below.
- index
Update StringMethod The update method to use with this Index. The value must be the followings. If not set, BATCH_UPDATE will be used by default.
- BATCH_UPDATE: user can call indexes.patch with files on Cloud Storage of datapoints to update.
- STREAM_UPDATE: user can call indexes.upsertDatapoints/DeleteDatapoints to update the Index and the updates will be applied in corresponding DeployedIndexes in nearly real-time.
- labels Map<String>
The labels with user-defined metadata to organize your Indexes.
- metadata Property Map
An additional information about the Index Structure is documented below.
- metadata
Schema StringUri Points to a YAML file stored on Google Cloud Storage describing additional information about the Index, that is specific to it. Unset if the Index does not have any additional information.
- name String
The resource name of the Index.
- project String
The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- region String
The region of the index. eg us-central1
- update
Time String The timestamp of when the Index was last updated in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits.
Supporting Types
AiIndexDeployedIndex, AiIndexDeployedIndexArgs
- Deployed
Index stringId (Output) The ID of the DeployedIndex in the above IndexEndpoint.
- Index
Endpoint string (Output) A resource name of the IndexEndpoint.
- Deployed
Index stringId (Output) The ID of the DeployedIndex in the above IndexEndpoint.
- Index
Endpoint string (Output) A resource name of the IndexEndpoint.
- deployed
Index StringId (Output) The ID of the DeployedIndex in the above IndexEndpoint.
- index
Endpoint String (Output) A resource name of the IndexEndpoint.
- deployed
Index stringId (Output) The ID of the DeployedIndex in the above IndexEndpoint.
- index
Endpoint string (Output) A resource name of the IndexEndpoint.
- deployed_
index_ strid (Output) The ID of the DeployedIndex in the above IndexEndpoint.
- index_
endpoint str (Output) A resource name of the IndexEndpoint.
- deployed
Index StringId (Output) The ID of the DeployedIndex in the above IndexEndpoint.
- index
Endpoint String (Output) A resource name of the IndexEndpoint.
AiIndexIndexStat, AiIndexIndexStatArgs
- int
(Output) The number of shards in the Index.
- Vectors
Count string (Output) The number of vectors in the Index.
- int
(Output) The number of shards in the Index.
- Vectors
Count string (Output) The number of vectors in the Index.
- Integer
(Output) The number of shards in the Index.
- vectors
Count String (Output) The number of vectors in the Index.
- number
(Output) The number of shards in the Index.
- vectors
Count string (Output) The number of vectors in the Index.
- int
(Output) The number of shards in the Index.
- vectors_
count str (Output) The number of vectors in the Index.
- Number
(Output) The number of shards in the Index.
- vectors
Count String (Output) The number of vectors in the Index.
AiIndexMetadata, AiIndexMetadataArgs
- Config
Ai
Index Metadata Config The configuration of the Matching Engine Index. Structure is documented below.
- Contents
Delta stringUri Allows inserting, updating or deleting the contents of the Matching Engine Index. The string must be a valid Cloud Storage directory path. If this field is set when calling IndexService.UpdateIndex, then no other Index field can be also updated as part of the same call. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/matching-engine/using-matching-engine#input-data-format
- Is
Complete boolOverwrite If this field is set together with contentsDeltaUri when calling IndexService.UpdateIndex, then existing content of the Index will be replaced by the data from the contentsDeltaUri.
- Config
Ai
Index Metadata Config The configuration of the Matching Engine Index. Structure is documented below.
- Contents
Delta stringUri Allows inserting, updating or deleting the contents of the Matching Engine Index. The string must be a valid Cloud Storage directory path. If this field is set when calling IndexService.UpdateIndex, then no other Index field can be also updated as part of the same call. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/matching-engine/using-matching-engine#input-data-format
- Is
Complete boolOverwrite If this field is set together with contentsDeltaUri when calling IndexService.UpdateIndex, then existing content of the Index will be replaced by the data from the contentsDeltaUri.
- config
Ai
Index Metadata Config The configuration of the Matching Engine Index. Structure is documented below.
- contents
Delta StringUri Allows inserting, updating or deleting the contents of the Matching Engine Index. The string must be a valid Cloud Storage directory path. If this field is set when calling IndexService.UpdateIndex, then no other Index field can be also updated as part of the same call. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/matching-engine/using-matching-engine#input-data-format
- is
Complete BooleanOverwrite If this field is set together with contentsDeltaUri when calling IndexService.UpdateIndex, then existing content of the Index will be replaced by the data from the contentsDeltaUri.
- config
Ai
Index Metadata Config The configuration of the Matching Engine Index. Structure is documented below.
- contents
Delta stringUri Allows inserting, updating or deleting the contents of the Matching Engine Index. The string must be a valid Cloud Storage directory path. If this field is set when calling IndexService.UpdateIndex, then no other Index field can be also updated as part of the same call. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/matching-engine/using-matching-engine#input-data-format
- is
Complete booleanOverwrite If this field is set together with contentsDeltaUri when calling IndexService.UpdateIndex, then existing content of the Index will be replaced by the data from the contentsDeltaUri.
- config
Ai
Index Metadata Config The configuration of the Matching Engine Index. Structure is documented below.
- contents_
delta_ struri Allows inserting, updating or deleting the contents of the Matching Engine Index. The string must be a valid Cloud Storage directory path. If this field is set when calling IndexService.UpdateIndex, then no other Index field can be also updated as part of the same call. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/matching-engine/using-matching-engine#input-data-format
- is_
complete_ booloverwrite If this field is set together with contentsDeltaUri when calling IndexService.UpdateIndex, then existing content of the Index will be replaced by the data from the contentsDeltaUri.
- config Property Map
The configuration of the Matching Engine Index. Structure is documented below.
- contents
Delta StringUri Allows inserting, updating or deleting the contents of the Matching Engine Index. The string must be a valid Cloud Storage directory path. If this field is set when calling IndexService.UpdateIndex, then no other Index field can be also updated as part of the same call. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/matching-engine/using-matching-engine#input-data-format
- is
Complete BooleanOverwrite If this field is set together with contentsDeltaUri when calling IndexService.UpdateIndex, then existing content of the Index will be replaced by the data from the contentsDeltaUri.
AiIndexMetadataConfig, AiIndexMetadataConfigArgs
- Dimensions int
The number of dimensions of the input vectors.
- Algorithm
Config AiIndex Metadata Config Algorithm Config The configuration with regard to the algorithms used for efficient search. Structure is documented below.
- Approximate
Neighbors intCount The default number of neighbors to find via approximate search before exact reordering is performed. Exact reordering is a procedure where results returned by an approximate search algorithm are reordered via a more expensive distance computation. Required if tree-AH algorithm is used.
- Distance
Measure stringType The distance measure used in nearest neighbor search. The value must be one of the followings:
- SQUARED_L2_DISTANCE: Euclidean (L_2) Distance
- L1_DISTANCE: Manhattan (L_1) Distance
- COSINE_DISTANCE: Cosine Distance. Defined as 1 - cosine similarity.
- DOT_PRODUCT_DISTANCE: Dot Product Distance. Defined as a negative of the dot product
- Feature
Norm stringType Type of normalization to be carried out on each vector. The value must be one of the followings:
- UNIT_L2_NORM: Unit L2 normalization type
- NONE: No normalization type is specified.
- string
Index data is split into equal parts to be processed. These are called "shards". The shard size must be specified when creating an index. The value must be one of the followings:
- SHARD_SIZE_SMALL: Small (2GB)
- SHARD_SIZE_MEDIUM: Medium (20GB)
- SHARD_SIZE_LARGE: Large (50GB)
- Dimensions int
The number of dimensions of the input vectors.
- Algorithm
Config AiIndex Metadata Config Algorithm Config The configuration with regard to the algorithms used for efficient search. Structure is documented below.
- Approximate
Neighbors intCount The default number of neighbors to find via approximate search before exact reordering is performed. Exact reordering is a procedure where results returned by an approximate search algorithm are reordered via a more expensive distance computation. Required if tree-AH algorithm is used.
- Distance
Measure stringType The distance measure used in nearest neighbor search. The value must be one of the followings:
- SQUARED_L2_DISTANCE: Euclidean (L_2) Distance
- L1_DISTANCE: Manhattan (L_1) Distance
- COSINE_DISTANCE: Cosine Distance. Defined as 1 - cosine similarity.
- DOT_PRODUCT_DISTANCE: Dot Product Distance. Defined as a negative of the dot product
- Feature
Norm stringType Type of normalization to be carried out on each vector. The value must be one of the followings:
- UNIT_L2_NORM: Unit L2 normalization type
- NONE: No normalization type is specified.
- string
Index data is split into equal parts to be processed. These are called "shards". The shard size must be specified when creating an index. The value must be one of the followings:
- SHARD_SIZE_SMALL: Small (2GB)
- SHARD_SIZE_MEDIUM: Medium (20GB)
- SHARD_SIZE_LARGE: Large (50GB)
- dimensions Integer
The number of dimensions of the input vectors.
- algorithm
Config AiIndex Metadata Config Algorithm Config The configuration with regard to the algorithms used for efficient search. Structure is documented below.
- approximate
Neighbors IntegerCount The default number of neighbors to find via approximate search before exact reordering is performed. Exact reordering is a procedure where results returned by an approximate search algorithm are reordered via a more expensive distance computation. Required if tree-AH algorithm is used.
- distance
Measure StringType The distance measure used in nearest neighbor search. The value must be one of the followings:
- SQUARED_L2_DISTANCE: Euclidean (L_2) Distance
- L1_DISTANCE: Manhattan (L_1) Distance
- COSINE_DISTANCE: Cosine Distance. Defined as 1 - cosine similarity.
- DOT_PRODUCT_DISTANCE: Dot Product Distance. Defined as a negative of the dot product
- feature
Norm StringType Type of normalization to be carried out on each vector. The value must be one of the followings:
- UNIT_L2_NORM: Unit L2 normalization type
- NONE: No normalization type is specified.
- String
Index data is split into equal parts to be processed. These are called "shards". The shard size must be specified when creating an index. The value must be one of the followings:
- SHARD_SIZE_SMALL: Small (2GB)
- SHARD_SIZE_MEDIUM: Medium (20GB)
- SHARD_SIZE_LARGE: Large (50GB)
- dimensions number
The number of dimensions of the input vectors.
- algorithm
Config AiIndex Metadata Config Algorithm Config The configuration with regard to the algorithms used for efficient search. Structure is documented below.
- approximate
Neighbors numberCount The default number of neighbors to find via approximate search before exact reordering is performed. Exact reordering is a procedure where results returned by an approximate search algorithm are reordered via a more expensive distance computation. Required if tree-AH algorithm is used.
- distance
Measure stringType The distance measure used in nearest neighbor search. The value must be one of the followings:
- SQUARED_L2_DISTANCE: Euclidean (L_2) Distance
- L1_DISTANCE: Manhattan (L_1) Distance
- COSINE_DISTANCE: Cosine Distance. Defined as 1 - cosine similarity.
- DOT_PRODUCT_DISTANCE: Dot Product Distance. Defined as a negative of the dot product
- feature
Norm stringType Type of normalization to be carried out on each vector. The value must be one of the followings:
- UNIT_L2_NORM: Unit L2 normalization type
- NONE: No normalization type is specified.
- string
Index data is split into equal parts to be processed. These are called "shards". The shard size must be specified when creating an index. The value must be one of the followings:
- SHARD_SIZE_SMALL: Small (2GB)
- SHARD_SIZE_MEDIUM: Medium (20GB)
- SHARD_SIZE_LARGE: Large (50GB)
- dimensions int
The number of dimensions of the input vectors.
- algorithm_
config AiIndex Metadata Config Algorithm Config The configuration with regard to the algorithms used for efficient search. Structure is documented below.
- approximate_
neighbors_ intcount The default number of neighbors to find via approximate search before exact reordering is performed. Exact reordering is a procedure where results returned by an approximate search algorithm are reordered via a more expensive distance computation. Required if tree-AH algorithm is used.
- distance_
measure_ strtype The distance measure used in nearest neighbor search. The value must be one of the followings:
- SQUARED_L2_DISTANCE: Euclidean (L_2) Distance
- L1_DISTANCE: Manhattan (L_1) Distance
- COSINE_DISTANCE: Cosine Distance. Defined as 1 - cosine similarity.
- DOT_PRODUCT_DISTANCE: Dot Product Distance. Defined as a negative of the dot product
- feature_
norm_ strtype Type of normalization to be carried out on each vector. The value must be one of the followings:
- UNIT_L2_NORM: Unit L2 normalization type
- NONE: No normalization type is specified.
- str
Index data is split into equal parts to be processed. These are called "shards". The shard size must be specified when creating an index. The value must be one of the followings:
- SHARD_SIZE_SMALL: Small (2GB)
- SHARD_SIZE_MEDIUM: Medium (20GB)
- SHARD_SIZE_LARGE: Large (50GB)
- dimensions Number
The number of dimensions of the input vectors.
- algorithm
Config Property Map The configuration with regard to the algorithms used for efficient search. Structure is documented below.
- approximate
Neighbors NumberCount The default number of neighbors to find via approximate search before exact reordering is performed. Exact reordering is a procedure where results returned by an approximate search algorithm are reordered via a more expensive distance computation. Required if tree-AH algorithm is used.
- distance
Measure StringType The distance measure used in nearest neighbor search. The value must be one of the followings:
- SQUARED_L2_DISTANCE: Euclidean (L_2) Distance
- L1_DISTANCE: Manhattan (L_1) Distance
- COSINE_DISTANCE: Cosine Distance. Defined as 1 - cosine similarity.
- DOT_PRODUCT_DISTANCE: Dot Product Distance. Defined as a negative of the dot product
- feature
Norm StringType Type of normalization to be carried out on each vector. The value must be one of the followings:
- UNIT_L2_NORM: Unit L2 normalization type
- NONE: No normalization type is specified.
- String
Index data is split into equal parts to be processed. These are called "shards". The shard size must be specified when creating an index. The value must be one of the followings:
- SHARD_SIZE_SMALL: Small (2GB)
- SHARD_SIZE_MEDIUM: Medium (20GB)
- SHARD_SIZE_LARGE: Large (50GB)
AiIndexMetadataConfigAlgorithmConfig, AiIndexMetadataConfigAlgorithmConfigArgs
- Brute
Force AiConfig Index Metadata Config Algorithm Config Brute Force Config Configuration options for using brute force search, which simply implements the standard linear search in the database for each query.
- Tree
Ah AiConfig Index Metadata Config Algorithm Config Tree Ah Config Configuration options for using the tree-AH algorithm (Shallow tree + Asymmetric Hashing). Please refer to this paper for more details: https://arxiv.org/abs/1908.10396 Structure is documented below.
- Brute
Force AiConfig Index Metadata Config Algorithm Config Brute Force Config Configuration options for using brute force search, which simply implements the standard linear search in the database for each query.
- Tree
Ah AiConfig Index Metadata Config Algorithm Config Tree Ah Config Configuration options for using the tree-AH algorithm (Shallow tree + Asymmetric Hashing). Please refer to this paper for more details: https://arxiv.org/abs/1908.10396 Structure is documented below.
- brute
Force AiConfig Index Metadata Config Algorithm Config Brute Force Config Configuration options for using brute force search, which simply implements the standard linear search in the database for each query.
- tree
Ah AiConfig Index Metadata Config Algorithm Config Tree Ah Config Configuration options for using the tree-AH algorithm (Shallow tree + Asymmetric Hashing). Please refer to this paper for more details: https://arxiv.org/abs/1908.10396 Structure is documented below.
- brute
Force AiConfig Index Metadata Config Algorithm Config Brute Force Config Configuration options for using brute force search, which simply implements the standard linear search in the database for each query.
- tree
Ah AiConfig Index Metadata Config Algorithm Config Tree Ah Config Configuration options for using the tree-AH algorithm (Shallow tree + Asymmetric Hashing). Please refer to this paper for more details: https://arxiv.org/abs/1908.10396 Structure is documented below.
- brute_
force_ Aiconfig Index Metadata Config Algorithm Config Brute Force Config Configuration options for using brute force search, which simply implements the standard linear search in the database for each query.
- tree_
ah_ Aiconfig Index Metadata Config Algorithm Config Tree Ah Config Configuration options for using the tree-AH algorithm (Shallow tree + Asymmetric Hashing). Please refer to this paper for more details: https://arxiv.org/abs/1908.10396 Structure is documented below.
- brute
Force Property MapConfig Configuration options for using brute force search, which simply implements the standard linear search in the database for each query.
- tree
Ah Property MapConfig Configuration options for using the tree-AH algorithm (Shallow tree + Asymmetric Hashing). Please refer to this paper for more details: https://arxiv.org/abs/1908.10396 Structure is documented below.
AiIndexMetadataConfigAlgorithmConfigTreeAhConfig, AiIndexMetadataConfigAlgorithmConfigTreeAhConfigArgs
- Leaf
Node intEmbedding Count Number of embeddings on each leaf node. The default value is 1000 if not set.
- Leaf
Nodes intTo Search Percent The default percentage of leaf nodes that any query may be searched. Must be in range 1-100, inclusive. The default value is 10 (means 10%) if not set.
- Leaf
Node intEmbedding Count Number of embeddings on each leaf node. The default value is 1000 if not set.
- Leaf
Nodes intTo Search Percent The default percentage of leaf nodes that any query may be searched. Must be in range 1-100, inclusive. The default value is 10 (means 10%) if not set.
- leaf
Node IntegerEmbedding Count Number of embeddings on each leaf node. The default value is 1000 if not set.
- leaf
Nodes IntegerTo Search Percent The default percentage of leaf nodes that any query may be searched. Must be in range 1-100, inclusive. The default value is 10 (means 10%) if not set.
- leaf
Node numberEmbedding Count Number of embeddings on each leaf node. The default value is 1000 if not set.
- leaf
Nodes numberTo Search Percent The default percentage of leaf nodes that any query may be searched. Must be in range 1-100, inclusive. The default value is 10 (means 10%) if not set.
- leaf_
node_ intembedding_ count Number of embeddings on each leaf node. The default value is 1000 if not set.
- leaf_
nodes_ intto_ search_ percent The default percentage of leaf nodes that any query may be searched. Must be in range 1-100, inclusive. The default value is 10 (means 10%) if not set.
- leaf
Node NumberEmbedding Count Number of embeddings on each leaf node. The default value is 1000 if not set.
- leaf
Nodes NumberTo Search Percent The default percentage of leaf nodes that any query may be searched. Must be in range 1-100, inclusive. The default value is 10 (means 10%) if not set.
Import
Index can be imported using any of these accepted formats
$ pulumi import gcp:vertex/aiIndex:AiIndex default projects/{{project}}/locations/{{region}}/indexes/{{name}}
$ pulumi import gcp:vertex/aiIndex:AiIndex default {{project}}/{{region}}/{{name}}
$ pulumi import gcp:vertex/aiIndex:AiIndex default {{region}}/{{name}}
$ pulumi import gcp:vertex/aiIndex:AiIndex default {{name}}
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
google-beta
Terraform Provider.