Amazon S3 Vectors

Amazon S3 Vectors provides native vector storage in Amazon S3 for AI/ML applications. Use the operators below to manage S3 Vectors resources.

Create a Vector Bucket

To create an Amazon S3 Vectors vector bucket, use S3VectorsCreateVectorBucketOperator.

tests/system/amazon/aws/example_s3_vectors.py[source]

create_vector_bucket = S3VectorsCreateVectorBucketOperator(
    task_id="create_vector_bucket",
    vector_bucket_name=bucket_name,
)

Create an Index

To create an index in an Amazon S3 Vectors vector bucket, use S3VectorsCreateIndexOperator.

tests/system/amazon/aws/example_s3_vectors.py[source]

create_index = S3VectorsCreateIndexOperator(
    task_id="create_index",
    vector_bucket_name=bucket_name,
    index_name=index_name,
    data_type="float32",
    dimension=4,
    distance_metric="cosine",
)

Delete an Index

To delete an index from an Amazon S3 Vectors vector bucket, use S3VectorsDeleteIndexOperator.

tests/system/amazon/aws/example_s3_vectors.py[source]

delete_index = S3VectorsDeleteIndexOperator(
    task_id="delete_index",
    vector_bucket_name=bucket_name,
    index_name=index_name,
    trigger_rule=TriggerRule.ALL_DONE,
)

Delete a Vector Bucket

To delete an Amazon S3 Vectors vector bucket, use S3VectorsDeleteVectorBucketOperator.

tests/system/amazon/aws/example_s3_vectors.py[source]

delete_vector_bucket = S3VectorsDeleteVectorBucketOperator(
    task_id="delete_vector_bucket",
    vector_bucket_name=bucket_name,
    trigger_rule=TriggerRule.ALL_DONE,
)

Put Vectors

To insert vectors into an Amazon S3 Vectors index, use S3VectorsPutVectorsOperator.

tests/system/amazon/aws/example_s3_vectors.py[source]

put_vectors = S3VectorsPutVectorsOperator(
    task_id="put_vectors",
    vector_bucket_name=bucket_name,
    index_name=index_name,
    vectors=[{"key": "test-vec-1", "data": {"float32": [0.1, 0.2, 0.3, 0.4]}}],
)

Query Vectors

To query vectors by similarity in an Amazon S3 Vectors index, use S3VectorsQueryVectorsOperator.

tests/system/amazon/aws/example_s3_vectors.py[source]

query_vectors = S3VectorsQueryVectorsOperator(
    task_id="query_vectors",
    vector_bucket_name=bucket_name,
    index_name=index_name,
    top_k=3,
    query_vector={"float32": [0.1, 0.2, 0.3, 0.4]},
)

Reference

Was this entry helpful?