OSS Vectors は、Alibaba Cloud Object Storage Service (OSS) のベクトルデータの保存および検索機能です。専用のベクトルバケットタイプを使用して、ベクトルデータを保存、クエリ、管理します。低コストで大規模、かつ使いやすいソリューションとして、OSS Vectors は、マルチモーダル検索、ナレッジベース、検索拡張生成 (RAG)、AI エージェントなどの AI アプリケーション向けのベクトルデータの保存とクエリが可能です。サードパーティサービスによって生成されたベクトルデータを、ベクトルバケットに書き込むことができます。また、OSS Vectors は、大規模な生データとベクトルデータの両方に対する統合ガバナンスをサポートしています。たとえば、標準バケットとベクトルバケットの両方に同じバケットポリシーを設定したり、監査用に統一されたフォーマットでログをエクスポートしたりできます。
基本概念
ベクトルバケット:大規模なベクトルデータを管理するためのクラウドリソースとして機能する、新しいバケットタイプです。
ベクトルインデックス:ベクトルバケット内にベクトルインデックスを作成できます。ベクトルインデックスは、ベクトルデータを保存するためのインデックステーブルです。単一のベクトルバケット内に複数のベクトルインデックスを作成して、さまざまなビジネスニーズに応じてデータを整理できます。検索クエリを開始すると、指定されたベクトルインデックス内のベクトルデータの類似性に基づいて結果が返されます。
ベクトルデータ:画像、動画、ドキュメントなどの非構造化データから、ベクトル埋め込みモデルによって生成される高次元の数値配列です。これらの配列は、データのコンテンツの特徴を表します。ベクトル検索は、これらのベクトル間の類似性に基づいて結果を返します。ECS、PAI、Model Studio などの任意のベクトル化サービスでベクトルを生成し、OSS API、SDK、または ossutil ツールを使用して、指定されたベクトルインデックスに書き込むことができます。データを書き込む際に、その後のスカラーフィルタリングのためにメタデータを添付することもできます。
利点
低コスト:ベクトルデータは、さまざまな AI アプリケーションにとって不可欠なインフラストラクチャとなっており、指数関数的に増加しています。OSS Vectors は、シンプルで透明性の高い課金モデルを採用しており、ベクトルデータストレージと検索中にスキャンされたデータ量の 2 つの項目のみが課金対象です。これにより、従来の方法と比較して、コストを 90% 以上削減できます。
大規模:OSS Vectors は、大量のベクトルデータを保存および管理するように設計されています。サーバーレスフレームワーク上に構築されており、スケーリングが自動的に行われるため、キャパシティプランニングが不要です。
使いやすさ:OSS Vectors は、包括的な API、SDK、および ossutil コマンドラインツールを提供します。また、OSS コンソールで、検索、挿入、一括挿入などの操作でベクトルデータを管理することもできます。
統合管理:生データを保存する標準バケットとベクトルバケットを、一貫した方法で管理できます。たとえば、アクセス制御のために同じバケットポリシーを適用したり、監査のために共通のログエクスポートパスを設定したりできます。
セマンティック検索:QueryVectors オペレーションを使用すると、インデックス内のベクトルデータをクエリし、類似度順にソートされた結果を受け取ることができます。OSS Vectors は、スカラーメタデータに基づくフィルタリングにも対応しています。ベクトルデータをベクトルバケットに書き込む際にメタデータを添付して、後フィルタリングを行うことができます。ベクトルインデックスを作成する際に、フィルタリング不可能なメタデータを定義することもできます。このタイプのメタデータは、フィルタリングには使用できませんが、ベクトルの説明情報として検索結果とともに返されます。
ユースケース
低コストの RAG アプリケーションの構築
AI サービスが拡大するにつれて、ベクトルデータの指数関数的な増加により、ストレージと検索のコストに対する圧力が高まっています。ナレッジベース、AI アシスタント、医療画像検索などのマルチモーダル検索シナリオでは、ユーザーは数十ミリ秒から数百ミリ秒の範囲の検索レイテンシが許容されるようになっています。このような場合、OSS Vectors を RAG アプリケーションのストレージ基盤として使用することで、極めて低コストでビジネス要件を満たすことができます。
階層型検索を使用した AI エージェントの構築
AI エージェントごとに、検索パフォーマンスのニーズは異なります。すべてのベクトルデータを低コストのベクトルバケットに集約できます。高性能で低レイテンシが求められるビジネスシナリオの場合、ホットデータを Tablestore などの他の製品に同期して、高性能な検索を実現できます。これにより、階層型検索を備えた AI エージェントアプリケーションアーキテクチャを構築できます。
統合 AI コンテンツプラットフォームの構築
AI アプリケーションは、大量の非構造化コンテンツ (ユーザー生成コンテンツ、社内ドキュメント、AI 生成コンテンツなど) とそれに対応するベクトルを生成し、ストレージと検索システムの断片化につながる可能性があります。標準 OSS バケットに生データを、ベクトルバケットにベクトルデータを保存することで、AIGC データ管理などのユースケースに対応した効率的な AI データ管理プラットフォームを構築できます。単一の API と SDK で生ファイルとベクトルインデックスの両方を管理できるため、統合 AI コンテンツプラットフォームの作成が簡素化されます。
エンタープライズ機能
エンドポイントアクセス
OSS Vectors は、標準 OSS バケットから分離された、個別のパブリックエンドポイントと内部エンドポイントを提供します。
パブリックエンドポイント:
$bucketname-$uid.regionID.oss-vectors.aliyuncs.com内部エンドポイント:
$bucketname-$uid.regionID-internal.oss-vectors.aliyuncs.com
注:ListVectorBuckets 以外のすべてのオペレーションには、第 3 レベルドメインを使用する必要があります。セキュアな転送
HTTPS は、転送中のすべてのデータを暗号化します。
アクセス制御
バケットポリシー:リソースベースの認可ポリシーに対応しており、ベクトルバケットレベル、または 1 つ以上のベクトルインデックスに対して権限を制御できます。
RAM ポリシー:アイデンティティベースの RAM 認可ポリシーに対応しており、ベクトルバケット、ベクトルインデックス、データオペレーションに対するきめ細かい権限を制御できます。これらのポリシーは、クロスアカウントアクセス認可にも対応しています。
ログ記録
アクセスログのエクスポート:アクセスログを、リアルタイムまたはニアリアルタイムで指定されたバケットにエクスポートすることに対応しています。
統一されたログフォーマット:ログフォーマットは、標準 OSS ログと完全に互換性があります。ベクトルバケットリソースを一意に識別するために
BucketARNフィールドが追加されており、統一されたログ分析が簡素化されます。
クォータと制限
OSS Vectors には、特定のクォータと制限があります。ベクトルストレージと検索ソリューションを設計および実装する際は、以下の制限に基づいて、バケット数、インデックス規模、メタデータ構造、API 呼び出し戦略を計画してください。以下のクォータの引き上げをリクエストするには、テクニカルサポートにお問い合わせください。
単一の Alibaba Cloud アカウントで、リージョンごとに最大 100 個のベクトルバケットを作成できます。
単一のベクトルバケットには、最大 100 個のベクトルインデックスを作成できます。
単一のベクトルインデックスには、最大 20 億行のベクトルデータを保存できます。
ベクトル次元:1~4,096。
TopK 範囲:デフォルトで 1~500。
単一のベクトル配列の合計サイズ:1 KB~500 KB。
単一のベクトルのメタデータ (フィルタリング可能およびフィルタリング不可能) の最大合計サイズ:200 KB。
単一のベクトルの単一のフィルタリング可能なメタデータフィールドの最大サイズ:2 KB。
単一のベクトルのメタデータフィールド (フィルタリング可能およびフィルタリング不可能) の最大数:100。
スカラーメタデータは、String、Number、Boolean、List の 4 つのデータタイプに対応しています。
メタデータを使用してベクトルをフィルタリングする場合:
単一のフィルター条件におけるフィルタリング可能なメタデータの累積長は、20 KB を超えることはできません。
単一のフィルター条件におけるフィルタリング可能なメタデータアイテムの数は、1,024 を超えることはできません。
フィルター条件は、最大 8 つのネストレベルに対応しています。
QueryVectors または ListVectors オペレーションをスカラーフィルタリングに使用する場合、以下の演算子を利用できます。
等価性:$eq、$ne
範囲:$gt、$gte、$lt、$lte
包含:$in、$nin
存在:$exists
論理:$and、$or
PutVectorIndex オペレーションは、1 秒あたり 5 回の呼び出しに制限されています。
PutVectors オペレーションの呼び出しは、1 秒あたり 1,000 回に制限されています。単一の同時リクエストでは、バッチごとに最大 500 エントリを書き込むことができます。すべての同時リクエスト全体の合計スループットは、1 秒あたり 2,500 エントリを超えることはできません。たとえば、各同時リクエストがバッチで 100 エントリを書き込む場合、サポートされる最大呼び出しレートは 25 回/秒 (2,500 / 100) です。
QueryVectors オペレーションの QPS 制限は 100 です。
注:検索 QPS は、単一のインデックス内のベクトル数、ベクトル次元、TopK 値、クエリ内のスカラーメタデータ条件などの要因に依存します。1,000 万行の 1,024 次元のベクトルと TopK 値 100 という典型的なセットアップでは、クエリ QPS は通常 100 に達することができます。インデックスサイズまたは TopK 値が増加すると、実際の検索 QPS は低下する可能性があります。OSS Vectors は、QPS が 100 に達することを保証するものではありません。実際のパフォーマンスを確認するには、ワークロードでテストしてください。
ListVectorIndexes オペレーションは、ページごとに最大 500 個のインデックスを返します。ページネーションを使用することで、次のインデックスのバッチを取得できます。
ListVectorIndexes オペレーションの最大同時実行数は 16 です。
課金
OSS Vectors は現在、無料のパブリックプレビュー中です。商用課金は、2026 年 6 月 10 日 (UTC+8) に開始されます。請求内容にご注意ください。課金方法の詳細については、「Vector billing items」をご参照ください。