Class MatchingEngineIndex (1.90.0)

MatchingEngineIndex(index_name:str,project:typing.Optional[str]=None,location:typing.Optional[str]=None,credentials:typing.Optional[google.auth.credentials.Credentials]=None,)

Matching Engine index resource for Vertex AI.

Properties

create_time

Time this resource was created.

deployed_indexes

Returns a list of deployed index references that originate from this index.

description

Description of the index.

display_name

Display name of this resource.

encryption_spec

Customer-managed encryption key options for this Vertex AI resource.

If this is set, then all resources created by this Vertex AI resource will be encrypted with the provided encryption key.

gca_resource

The underlying resource proto representation.

labels

User-defined labels containing metadata about this resource.

Read more about labels at https://goo.gl/xmQnxf

name

Name of this resource.

resource_name

Full qualified resource name.

update_time

Time this resource was last updated.

Methods

MatchingEngineIndex

MatchingEngineIndex(index_name:str,project:typing.Optional[str]=None,location:typing.Optional[str]=None,credentials:typing.Optional[google.auth.credentials.Credentials]=None,)

Retrieves an existing index given an index name or ID.

Example Usage:

my_index = aiplatform.MatchingEngineIndex( index_name='projects/123/locations/us-central1/indexes/my_index_id' ) or my_index = aiplatform.MatchingEngineIndex( index_name='my_index_id' ) 
Parameters
NameDescription
index_namestr

Required. A fully-qualified index resource name or a index ID. Example: "projects/123/locations/us-central1/indexes/my_index_id" or "my_index_id" when project and location are initialized or passed.

projectstr

Optional. Project to retrieve index from. If not set, project set in aiplatform.init will be used.

locationstr

Optional. Location to retrieve index from. If not set, location set in aiplatform.init will be used.

credentialsauth_credentials.Credentials

Optional. Custom credentials to use to retrieve this Index. Overrides credentials set in aiplatform.init.

create_brute_force_index

create_brute_force_index(display_name:str,contents_delta_uri:typing.Optional[str]=None,dimensions:typing.Optional[int]=None,distance_measure_type:typing.Optional[google.cloud.aiplatform.matching_engine.matching_engine_index_config.DistanceMeasureType]=None,feature_norm_type:typing.Optional[google.cloud.aiplatform.matching_engine.matching_engine_index_config.FeatureNormType]=None,description:typing.Optional[str]=None,labels:typing.Optional[typing.Dict[str,str]]=None,project:typing.Optional[str]=None,location:typing.Optional[str]=None,credentials:typing.Optional[google.auth.credentials.Credentials]=None,request_metadata:typing.Optional[typing.Sequence[typing.Tuple[str,str]]]=(),sync:bool=True,index_update_method:typing.Optional[str]=None,encryption_spec_key_name:typing.Optional[str]=None,create_request_timeout:typing.Optional[float]=None,shard_size:typing.Optional[str]=None,)-> google.cloud.aiplatform.matching_engine.matching_engine_index.MatchingEngineIndex

Creates a MatchingEngineIndex resource that uses the brute force algorithm.

Example Usage:

my_index = aiplatform.Index.create_brute_force_index( display_name="my_display_name", contents_delta_uri="gs://my_bucket/embeddings", dimensions=1, approximate_neighbors_count=150, distance_measure_type=matching_engine_index_config.DistanceMeasureType.SQUARED_L2_DISTANCE, description="my description", labels={ "label_name": "label_value" }, ) 
Parameters
NameDescription
display_namestr

Required. The display name of the Index. The name can be up to 128 characters long and can be consist of any UTF-8 characters.

contents_delta_uristr

Optional. Allows inserting the initial contents of the Matching Engine Index. The string must be a valid Google Cloud Storage directory path. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/vector-search/setup/format-structure

dimensionsint

Required. The number of dimensions of the input vectors.

distance_measure_typematching_engine_index_config.DistanceMeasureType

Optional. The distance measure used in nearest neighbor search.

feature_norm_typematching_engine_index_config.FeatureNormType

Optional. The feature norm type used in nearest neighbor search.

descriptionstr

Optional. The description of the Index.

labelsDict[str, str]

Optional. The labels with user-defined metadata to organize your Index. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. See https://goo.gl/xmQnxf for more information on and examples of labels. No more than 64 user labels can be associated with one Index(System labels are excluded)." System reserved label keys are prefixed with "aiplatform.googleapis.com/" and are immutable.

projectstr

Optional. Project to create EntityType in. If not set, project set in aiplatform.init will be used.

locationstr

Optional. Location to create EntityType in. If not set, location set in aiplatform.init will be used.

credentialsauth_credentials.Credentials

Optional. Custom credentials to use to create EntityTypes. Overrides credentials set in aiplatform.init.

request_metadataSequence[Tuple[str, str]]

Optional. Strings which should be sent along with the request as metadata.

syncbool

Optional. Whether to execute this creation synchronously. If False, this method will be executed in concurrent Future and any downstream object will be immediately returned and synced when the Future has completed.

index_update_methodstr

Optional. The update method to use with this index. Choose stream_update or batch_update. If not set, batch update will be used by default.

encryption_spec_key_namestr

Optional. The Cloud KMS resource identifier of the customer managed encryption key used to protect the index. Has the form: projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key. The key needs to be in the same region as where the compute resource is created. If set, this index and all sub-resources of this index will be secured by this key. The key needs to be in the same region as where the index is created.

create_request_timeoutfloat

Optional. The timeout for the request in seconds.

shard_sizestr

Optional. The size of each shard. Index will get resharded based on specified shard size. During serving, each shard will be served on a separate node and will scale independently. If not set, shard size is default to SHARD_SIZE_MEDIUM. Choose one of the following: SHARD_SIZE_SMALL SHARD_SIZE_MEDIUM SHARD_SIZE_LARGE

create_tree_ah_index

create_tree_ah_index(display_name:str,contents_delta_uri:typing.Optional[str]=None,dimensions:typing.Optional[int]=None,approximate_neighbors_count:typing.Optional[int]=None,leaf_node_embedding_count:typing.Optional[int]=None,leaf_nodes_to_search_percent:typing.Optional[float]=None,distance_measure_type:typing.Optional[google.cloud.aiplatform.matching_engine.matching_engine_index_config.DistanceMeasureType]=None,description:typing.Optional[str]=None,labels:typing.Optional[typing.Dict[str,str]]=None,project:typing.Optional[str]=None,location:typing.Optional[str]=None,credentials:typing.Optional[google.auth.credentials.Credentials]=None,request_metadata:typing.Optional[typing.Sequence[typing.Tuple[str,str]]]=(),sync:bool=True,index_update_method:typing.Optional[str]=None,encryption_spec_key_name:typing.Optional[str]=None,create_request_timeout:typing.Optional[float]=None,shard_size:typing.Optional[str]=None,feature_norm_type:typing.Optional[google.cloud.aiplatform.matching_engine.matching_engine_index_config.FeatureNormType]=None,)-> google.cloud.aiplatform.matching_engine.matching_engine_index.MatchingEngineIndex

Creates a MatchingEngineIndex resource that uses the tree-AH algorithm.

Example Usage:

my_index = aiplatform.Index.create_tree_ah_index( display_name="my_display_name", contents_delta_uri="gs://my_bucket/embeddings", dimensions=1, approximate_neighbors_count=150, distance_measure_type=matching_engine_index_config.DistanceMeasureType.SQUARED_L2_DISTANCE, leaf_node_embedding_count=100, leaf_nodes_to_search_percent=50, description="my description", labels={ "label_name": "label_value" }, ) 
Parameters
NameDescription
display_namestr

Required. The display name of the Index. The name can be up to 128 characters long and can be consist of any UTF-8 characters.

contents_delta_uristr

Optional. Allows inserting the initial contents of the Matching Engine Index. The string must be a valid Google Cloud Storage directory path. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/vector-search/setup/format-structure

dimensionsint

Required. The number of dimensions of the input vectors.

approximate_neighbors_countint

Required. 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.

leaf_node_embedding_countint

Optional. Number of embeddings on each leaf node. The default value is 1000 if not set.

leaf_nodes_to_search_percentfloat

Optional. 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.

distance_measure_typematching_engine_index_config.DistanceMeasureType

Optional. The distance measure used in nearest neighbor search.

feature_norm_typematching_engine_index_config.FeatureNormType

Optional. The feature norm type used in nearest neighbor search.

descriptionstr

Optional. The description of the Index.

labelsDict[str, str]

Optional. The labels with user-defined metadata to organize your Index. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. See https://goo.gl/xmQnxf for more information on and examples of labels. No more than 64 user labels can be associated with one Index(System labels are excluded)." System reserved label keys are prefixed with "aiplatform.googleapis.com/" and are immutable.

projectstr

Optional. Project to create EntityType in. If not set, project set in aiplatform.init will be used.

locationstr

Optional. Location to create EntityType in. If not set, location set in aiplatform.init will be used.

credentialsauth_credentials.Credentials

Optional. Custom credentials to use to create EntityTypes. Overrides credentials set in aiplatform.init.

request_metadataSequence[Tuple[str, str]]

Optional. Strings which should be sent along with the request as metadata.

syncbool

Optional. Whether to execute this creation synchronously. If False, this method will be executed in concurrent Future and any downstream object will be immediately returned and synced when the Future has completed.

index_update_methodstr

Optional. The update method to use with this index. Choose STREAM_UPDATE or BATCH_UPDATE. If not set, batch update will be used by default.

encryption_spec_key_namestr

Optional. The Cloud KMS resource identifier of the customer managed encryption key used to protect the index. Has the form: projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key. The key needs to be in the same region as where the compute resource is created. If set, this index and all sub-resources of this index will be secured by this key. The key needs to be in the same region as where the index is created.

create_request_timeoutfloat

Optional. The timeout for the request in seconds.

shard_sizestr

Optional. The size of each shard. Index will get resharded based on specified shard size. During serving, each shard will be served on a separate node and will scale independently. Choose one of the following: SHARD_SIZE_SMALL SHARD_SIZE_MEDIUM SHARD_SIZE_LARGE

delete

delete(sync:bool=True)-> None

Deletes this Vertex AI resource. WARNING: This deletion is permanent.

list

list(filter:typing.Optional[str]=None,order_by:typing.Optional[str]=None,project:typing.Optional[str]=None,location:typing.Optional[str]=None,credentials:typing.Optional[google.auth.credentials.Credentials]=None,parent:typing.Optional[str]=None,)-> typing.List[google.cloud.aiplatform.base.VertexAiResourceNoun]

List all instances of this Vertex AI Resource.

Example Usage:

aiplatform.BatchPredictionJobs.list( filter='state="JOB_STATE_SUCCEEDED" AND display_name="my_job"', )

aiplatform.Model.list(order_by="create_time desc, display_name")

Parameters
NameDescription
filterstr

Optional. An expression for filtering the results of the request. For field names both snake_case and camelCase are supported.

order_bystr

Optional. A comma-separated list of fields to order by, sorted in ascending order. Use "desc" after a field name for descending. Supported fields: display_name, create_time, update_time

projectstr

Optional. Project to retrieve list from. If not set, project set in aiplatform.init will be used.

locationstr

Optional. Location to retrieve list from. If not set, location set in aiplatform.init will be used.

credentialsauth_credentials.Credentials

Optional. Custom credentials to use to retrieve list. Overrides credentials set in aiplatform.init.

parentstr

Optional. The parent resource name if any to retrieve list from.

remove_datapoints

remove_datapoints(datapoint_ids:typing.Sequence[str],)-> google.cloud.aiplatform.matching_engine.matching_engine_index.MatchingEngineIndex

Remove datapoints for this index.

Parameter
NameDescription
datapoints_idsSequence[str]

Required. The list of datapoints ids to be deleted.

to_dict

to_dict()-> typing.Dict[str,typing.Any]

Returns the resource proto as a dictionary.

update_embeddings

update_embeddings(contents_delta_uri:str,is_complete_overwrite:typing.Optional[bool]=None,request_metadata:typing.Optional[typing.Sequence[typing.Tuple[str,str]]]=(),update_request_timeout:typing.Optional[float]=None,)-> google.cloud.aiplatform.matching_engine.matching_engine_index.MatchingEngineIndex

Updates the embeddings for this index.

Parameters
NameDescription
contents_delta_uristr

Required. Allows inserting, updating or deleting the contents of the Matching Engine Index. The string must be a valid Google Cloud Storage directory path. The expected structure and format of the files this URI points to is described at https://cloud.google.com/vertex-ai/docs/vector-search/setup/format-structure

is_complete_overwritebool

Optional. 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.

request_metadataSequence[Tuple[str, str]]

Optional. Strings which should be sent along with the request as metadata.

update_request_timeoutfloat

Optional. The timeout for the request in seconds.

update_metadata

update_metadata(display_name:typing.Optional[str]=None,description:typing.Optional[str]=None,labels:typing.Optional[typing.Dict[str,str]]=None,request_metadata:typing.Optional[typing.Sequence[typing.Tuple[str,str]]]=(),update_request_timeout:typing.Optional[float]=None,)-> google.cloud.aiplatform.matching_engine.matching_engine_index.MatchingEngineIndex

Updates the metadata for this index.

Parameters
NameDescription
display_namestr

Optional. The display name of the Index. The name can be up to 128 characters long and can be consist of any UTF-8 characters.

descriptionstr

Optional. The description of the Index.

labelsDict[str, str]

Optional. The labels with user-defined metadata to organize your Indexs. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. See https://goo.gl/xmQnxf for more information on and examples of labels. No more than 64 user labels can be associated with one Index (System labels are excluded)." System reserved label keys are prefixed with "aiplatform.googleapis.com/" and are immutable.

request_metadataSequence[Tuple[str, str]]

Optional. Strings which should be sent along with the request as metadata.

update_request_timeoutfloat

Optional. The timeout for the request in seconds.

upsert_datapoints

upsert_datapoints(datapoints:typing.Sequence[google.cloud.aiplatform_v1.types.index.IndexDatapoint],update_mask:typing.Optional[typing.Sequence[str]]=None,)-> google.cloud.aiplatform.matching_engine.matching_engine_index.MatchingEngineIndex

Upsert datapoints to this index.

Parameters
NameDescription
datapointsSequence[gca_matching_engine_index.IndexDatapoint]

Required. Datapoints to be upserted to this index.

update_maskSequence[str]

Optional. Update mask is used to specify the fields to be overwritten in the datapoints by the update. The fields specified in the update_mask are relative to each IndexDatapoint inside datapoints, not the full request. Updatable fields: Use all_restricts to update both restricts and numeric_restricts.

wait

wait()

Helper method that blocks until all futures are complete.