Loading...
Loading...
Store and query vector embeddings using Amazon S3 Vectors, a cost-effective long-term vector storage service with its own API namespace (s3vectors). Triggers on: create S3 vector bucket, vector index, store embeddings, semantic search, RAG vector storage, similarity search, vector database, migrate from other vector databases. Do NOT use for: querying tabular data (use querying-data-lake), S3 object storage, or hundreds/thousands of sustained QPS (use OpenSearch).
npx skill4agent add aws/agent-toolkit-for-aws storing-and-querying-vectors"Using S3 Vectors with OpenSearch Service"references/limits-and-patterns.md"S3 Vectors best practices"references/limits-and-patterns.mdaws s3vectors create-vector-bucket \
--vector-bucket-name <BUCKET_NAME>kms:GenerateDataKeykms:Decryptindexing.s3vectors.amazonaws.comreferences/limits-and-patterns.mdcosineeuclidean"S3 Vectors Bedrock Knowledge Bases prerequisites"aws s3vectors create-index \
--vector-bucket-name <BUCKET_NAME> \
--index-name <INDEX_NAME> \
--dimension <DIM> \
--distance-metric <cosine|euclidean> \
--data-type float32 \
--metadata-configuration '{"nonFilterableMetadataKeys":["<KEY1>","<KEY2>"]}'--metadata-configurationreferences/metadata-filtering.mdaws bedrock-runtime invoke-model \
--model-id <MODEL_ID> \
--content-type application/json \
--cli-binary-format raw-in-base64-out \
--body '{"inputText": "your text"}' \
invoke-model-output.json--cli-binary-format raw-in-base64-outjson.load(open('invoke-model-output.json'))['embedding']embeddingfloat32aws s3vectors put-vectors \
--vector-bucket-name <BUCKET_NAME> \
--index-name <INDEX_NAME> \
--vectors '[{"key":"<ID>","data":{"float32":[<EMBEDDING>]},"metadata":{"topic":"science"}}]'429 TooManyRequestsExceptionreferences/limits-and-patterns.mdaws s3vectors query-vectors \
--vector-bucket-name <BUCKET_NAME> \
--index-name <INDEX_NAME> \
--query-vector '{"float32":[<EMBEDDING>]}' \
--top-k 10 \
--return-distance--return-metadata--filter '{"topic":{"$eq":"science"}}'references/metadata-filtering.md{"vectors": [{"key": "id1", "distance": 0.45, "metadata": {"topic": "science"}}, ...], "distanceMetric": "cosine"}--filter--return-metadatas3vectors:QueryVectorss3vectors:GetVectors| Error | Cause | Fix |
|---|---|---|
| Dims don't match index | Use matching model, or delete/recreate index (confirm with user -- destroys all vectors). |
| Missing | Add |
Fewer results than | Few vectors match filter | Expected -- filtering is inline. Broaden filter. |
| Exceeded per-index rate limits | Retry with backoff. Shard across indexes for sustained throughput. Search AWS docs for |
| Missing | S3 Vectors uses |
| Request timeout or region not supported | Retry request. For regional availability, search AWS docs for |