跳到主要内容

list_indexes()

This operation lists all indexes of a specific collection.

Request syntax

list_indexes(
collection_name: str,
field_name: Optional[str],
**kwargs,
) -> List

PARAMETERS:

  • collection_name (str) -

    [REQUIRED]

    The name of an existing collection.

  • field_name (str) -

    The name of a field. Leaving this unspecified make this operation list all indexes.

RETURN TYPE:

List

RETURNS:

A list of index names.

EXCEPTIONS:

  • MilvusException

    This exception will be raised when any error occurs during this operation.

Examples

from pymilvus import MilvusClient, DataType

client = MilvusClient(
uri="https://inxx-xxxxxxxxxxxx.api.gcp-us-west1.zillizcloud.com:19530",
token="user:password"
)

# 1. Create schema
schema = MilvusClient.create_schema(
auto_id=False,
enable_dynamic_field=False,
)

# 2. Add fields to schema
schema.add_field(field_name="my_id", datatype=DataType.INT64, is_primary=True)

# {
# 'auto_id': False,
# 'description': '',
# 'fields': [
# {
# 'name': 'my_id',
# 'description': '',
# 'type': <DataType.INT64: 5>,
# 'is_primary': True,
# 'auto_id': False
# }
# ]
# }

schema.add_field(field_name="my_vector", datatype=DataType.FLOAT_VECTOR, dim=5)

# {
# 'auto_id': False,
# 'description': '',
# 'fields': [
# {
# 'name': 'my_id',
# 'description': '',
# 'type': <DataType.INT64: 5>,
# 'is_primary': True,
# 'auto_id': False
# },
# {
# 'name': 'my_vector',
# 'description': '',
# 'type': <DataType.FLOAT_VECTOR: 101>,
# 'params': {
# 'dim': 5
# }
# }
# ]
# }

# 3. Create index parameters
index_params = client.prepare_index_params()

# 4. Add indexes
# - For a scalar field
index_params.add_index(
field_name="my_id",
index_type="STL_SORT"
)

# - For a vector field
index_params.add_index(
field_name="my_vector",
index_type="IVF_FLAT",
metric_type="L2",
params={"nlist": 1024}
)

# 5. Create a collection
client.create_collection(
collection_name="customized_setup",
schema=schema
)

# 6. Create indexes
client.create_index(
collection_name="customized_setup",
index_params=index_params
)

# 6. List indexes
client.list_indexes(collection_name="customized_setup")

# # ['my_id', 'my_vector']