storing-and-querying-vectors
aws/agent-toolkit-for-aws
独自のAPIネームスペース(s3vectors)を備えた、コスト効率に優れた長期ベクトルストレージサービス「Amazon S3 Vectors」を使用して、ベクトル埋め込みデータを保存および検索します。 適用シーン:S3ベクトルバケットの作成、ベクトルインデックスの作成、埋め込みデータの保存、セマンティック検索、RAGベクトルストレージ、類似度検索、ベクトルデータベース、他のベクトルデータベースからの移行。 以下の用途には使用しないでください:表形式データのクエリ(querying-data-lakeを使用してください)、S3オブジェクトストレージ、または数百~数千の持続的なQPS(OpenSearchを使用してください)。
...すべて拡張します概要storing-and-querying-vectors
storing-and-querying-vectors は、独自の s3vectors API ネームスペースの下で、ベクトル埋め込みを大規模に保存およびクエリするためのコスト効率に優れた AWS サービスである Amazon S3 Vectors を使用するためのタスクガイドです。 本ガイドは、長期保存に最適化されており、コールドクエリでは1秒未満のレイテンシを実現し、ウォーム状態でも100msという低レイテンシを実現するため、RAGやクエリ頻度の低いその他のワークロードに適しています。 本ガイドでは、必要に応じて他のソリューションも紹介しています。毎秒数百~数千件の持続的なクエリや、ハイブリッド検索および集計(オプションで S3 Vectors をストレージエンジンとして使用)には OpenSearch を、リアルタイムのニーズには S3 Vectors と OpenSearch Serverless を組み合わせた階層型パターンを推奨しています。
ワークフローは、ベクトルバケットの作成、インデックスの作成、オプションでAmazon Bedrockを使用した埋め込みの生成、ベクトルの書き込み、およびクエリの実行という手順で進行します。この際、AWS MCPサーバーツールが推奨され、それが利用できない場合はAWS CLIが代替手段として使用されます。一貫して重視されるのが不変性です: バケットの暗号化(SSE-S3 または SSE-KMS)および、次元(1~4096)、距離メトリック(コサインまたはユークリッド)、最大 10 個のフィルタリング不可のメタデータキーを含むすべてのインデックスパラメータは、作成後に変更できないため、事前に確認する必要があります。 埋め込み次元はインデックスと一致している必要があり、保存とクエリには同じモデルを使用する必要があります。
運用上の制限も明記されています。put-vectors呼び出し1回あたり最大500ベクトル、429スロットリング時のバックオフ付きリトライ、および--filterまたは--return-metadataによるメタデータフィルタリングには、s3vectors:QueryVectorsとs3vectors:GetVectorsの両方の権限が必要です。 トラブルシューティング表では、DimensionMismatch、403、AccessDenied(このサービスは s3 ではなく s3vectors ネームスペースを使用します)などのエラーを具体的な解決策に紐付けており、関連するリファレンスでは、制限、マルチテナントパターン、およびメタデータフィルタリングについて解説しています。
よくある質問
OpenSearch に対して、S3 Vectors が適切な選択肢となるのはどのような場合ですか?
S3 Vectors は、クエリ頻度が低く、RAG を利用する、コスト効率の高い長期保存に適しています。数百または数千の持続的な QPS、ハイブリッド検索、集計が必要な場合は、OpenSearch を採用し、必要に応じて S3 Vectors をストレージエンジンとして併用することをお勧めします。
どのインデックスパラメータが不変ですか?
作成後は、すべてのインデックスパラメータが不変となります。これには、ディメンション(1~4096)、距離メトリック(コサインまたはユークリッド)、および最大10個のフィルタリング不可のメタデータキーが含まれます。また、バケットの暗号化も同様です。
1回の呼び出しで書き込めるベクトルの数は?
put-vectors 呼び出しごとに 500 ベクトルまでです。バッチ処理が推奨され、一括操作には CLI ではなく SDK を使用する必要があります。
メタデータフィルターにはどのような IAM 権限が必要ですか?
--filter または --return-metadata を使用するには、s3vectors:QueryVectors と s3vectors:GetVectors の両方の権限が必要です。GetVectors 権限がない場合、これらのオプションは 403 を返します。このサービスでは、s3 ではなく s3vectors ネームスペースが使用されます。
埋め込みはどのように生成・照合されますか?
Bedrockの`invoke-model`(例:TitanやCohere)を介して行われます。埋め込みの次元はインデックスと一致している必要があり、保存とクエリの両方で同じモデルを使用する必要があります。
すべてのファイル
3ファイルreferences/limits-and-patterns.md 2.7KB 表示references/metadata-filtering.md 2.1KB 表示SKILL.md 7.4 KB 表示すべてのファイル
0件のファイルstoring-and-querying-vectorsをインストール
スキルファイルをダウンロードし、.claude/skills/ ディレクトリに解凍してください。
ZIPをダウンロードリポジトリをクローンし、スキルファイルをプロジェクトにコピーしてください。
git clone # Copy SKILL.md to your .claude/skills/ directory
コピー





家
