Method

The delete method allows you to remove vectors from the index based on their identifiers. The command accepts the following parameters:

  • ids: A list of identifiers of vectors to be deleted.
  • prefix: A string prefix to match vector IDs. All vectors with IDs that start with this prefix will be deleted.
  • filter: A metadata filter to match vectors to be deleted.
Only one of ids, prefix, or filter can be provided.

It returns the following field in response:

  • deleted: An integer indicating how many vectors were deleted with the command.

Delete Example

from upstash_vector import Index

index = Index.from_env()

# Specify the identifiers of vectors to be deleted
ids_to_delete = ["id1", "id2", "id3"]

# Delete the specified vectors
delete_result = index.delete(ids=ids_to_delete)

# Display the number of vectors deleted
print("Number of Vectors Deleted:", delete_result.deleted)

Alternatively, you can delete a singular vector:

index.delete("id-4")

Also, you can specify a namespace to operate on. When no namespace is provided, the default namespace will be used.

index.delete("id-4", namespace="ns")

Delete with metadata filter

This will delete all vectors with metadata that matches the provided filter. For more information, see Metadata Filtering.

index.delete(filter="age > 30")

Delete with id prefix

This will delete all vectors with IDs that start with the prefix.

index.delete(prefix="id-")