検索
Zilliz Cloudは、ベクトルベースの類似性検索を実装し、検索効率とパフォーマンスを向上させるための複数の最適化を提供します。この章では、Zilliz Cloudで利用可能なさまざまなベクトル検索方法の原則とチュートリアルについて学びます。
基本ベクトル検索 [READ MORE]
近似最近傍(ANN)検索は、ベクトル埋め込みのソート順を記録したインデックスファイルに基づき、受信した検索リクエストに含まれるクエリベクトルに基づいてベクトル埋め込みの部分集合を特定し、そのサブグループ内のベクトルとクエリベクトルを比較して、最も類似した結果を返します。ANN 検索により、Zilliz Cloud は効率的な検索体験を提供します。このページでは、基本的な ANN 検索の実行方法について説明します。
リコール率の調整 [READ MORE]
Zilliz Cloudは、検索リコールとパフォーマンスのバランスを取るための検索パラメータ`level`を導入しています。また、現在の検索の推定リコール率をユーザーに提供するための別の検索パラメータ`enablerecallcalculation`も提供しています。これら2つのパラメータを組み合わせて、ベクトル検索のリコール率を調整できます。
フィルター検索 [READ MORE]
ANN検索は、指定されたベクトル埋め込みに最も類似したベクトル埋め込みを見つけます。しかし、検索結果が常に正しいとは限りません。検索リクエストにフィルタリング条件を含めることで、Zilliz CloudはANN検索を実行する前にメタデータフィルタリングを実行し、検索範囲をコレクション全体から指定されたフィルタリング条件に一致するエンティティのみに絞り込むことができます。
範囲検索 [READ MORE]
範囲検索は、返されるエンティティの距離またはスコアを特定の範囲内に制限することで、検索結果の関連性を向上させます。このページでは、範囲検索とは何か、および範囲検索を実行する手順について説明します。
グルーピング検索 [READ MORE]
グルーピング検索により、Zilliz Cloudは指定されたフィールドの値によって検索結果をグループ化し、より高いレベルでデータを集約できます。例えば、基本的なANN検索を使用して手元の本に似た本を見つけることができますが、グルーピング検索を使用すると、その本で議論されているトピックに関連する可能性のある本のカテゴリを見つけることができます。このトピックでは、グルーピング検索の使用方法と主な考慮事項について説明します。
主キー検索 [READ MORE]
類似性検索を実行する際、クエリベクトルがターゲットコレクションにすでに存在する場合でも、常に1つ以上のクエリベクトルを提供するよう求められます。検索前にベクトルを取得するのを避けるために、代わりに主キーを使用できます。
ハイブリッド検索 [READ MORE]
多くのアプリケーションでは、オブジェクトはタイトルや説明などの豊富な情報セット、またはテキスト、画像、音声などの複数のモダリティによって検索できます。たとえば、テキストと画像を含むツイートは、テキストまたは画像のいずれかが検索クエリのセマンティクスに一致する場合に検索されます。ハイブリッド検索は、これらの多様なフィールドを横断する検索を組み合わせることで、検索エクスペリエンスを向上させます。Zilliz Cloudは、複数のベクトルフィールドでの検索を可能にし、複数の近似最近傍(ANN)検索を同時に実行することでこれをサポートします。マルチベクトルハイブリッド検索は、テキストと画像の両方を検索したい場合、同じオブジェクトを記述する複数のテキストフィールドを検索したい場合、または検索品質を向上させるために密ベクトルと疎ベクトルを検索したい場合に特に役立ちます。
クエリ [READ MORE]
Zilliz Cloudは、ANN検索に加えて、クエリによるメタデータフィルタリングもサポートしています。このページでは、Query、Get、およびQueryIteratorsを使用してメタデータフィルタリングを実行する方法について説明します。
フィルタリング [READ MORE]
この章では、スカラーフィールドでのフィルタリングの実行方法、および適用可能なフィルタリング演算子とテンプレートについて説明します。
全文検索 [READ MORE]
全文検索は、テキストデータセットから特定の用語やフレーズを含むドキュメントを取得し、関連性に基づいて結果をランク付けする機能です。この機能は、正確な用語を見落とす可能性があるセマンティック検索の限界を克服し、最も正確で文脈に適した結果を提供します。さらに、生のテキスト入力を受け付け、ベクトル埋め込みを手動で生成することなくテキストデータを自動的にスパース埋め込みに変換することで、ベクトル検索を簡素化します。
テキストマッチ [READ MORE]
Zilliz Cloud のテキストマッチ機能により、特定の用語に基づいてドキュメントを正確に検索できます。この機能は主に、特定の条件を満たすフィルタリング検索に使用され、スカラーフィルタリングを組み合わせてクエリ結果を絞り込むことで、スカラー基準を満たすベクトル内での類似度検索を実現します。
語彙ハイライター [READ MORE]
Zilliz Cloud のハイライターは、テキストフィールド内で一致した用語をカスタマイズ可能なタグで囲むことで注釈を付けます。ハイライト表示は、ドキュメントが一致する理由を説明し、結果の可読性を向上させ、検索およびRAGアプリケーションでのリッチレンダリングをサポートします。
セマンティックハイライター [READ MORE]
セマンティックハイライターは、検索結果の中で最も意味的に関連性の高い部分を文レベルで特定し、強調表示します。これにより、取得された上位K個のドキュメントから重要な情報のみを抽出できます。
フレーズマッチ [READ MORE]
フレーズマッチでは、クエリ用語を正確なフレーズとして含むドキュメントを検索できます。デフォルトでは、単語は同じ順序で直接隣接して出現する必要があります。たとえば、「robotics machine learning」というクエリは、「…typical robotics machine learning models…」のようなテキストに一致します。この場合、「robotics」、「machine」、「learning」という単語は、間に他の単語を挟まずに連続して出現します。
埋め込みリスト [READ MORE]
このページでは、Zilliz Cloud の構造体配列を使用して ColBERT テキスト検索システムと ColPali テキスト検索システムを設定する方法について説明します。これにより、ドキュメントとそのベクトル化されたチャンクを埋め込みリストに格納できます。
Elasticsearch クエリから Milvus へ [READ MORE]
Apache Lucene をベースとする Elasticsearch は、主要なオープンソース検索エンジンです。しかし、最新の AI アプリケーションにおいては、高い更新コスト、リアルタイム性能の低さ、非効率なシャード管理、クラウドネイティブではない設計、過剰なリソース要求といった課題に直面しています。クラウドネイティブなベクトルデータベースである Milvus は、ストレージとコンピューティングの分離、高次元データに対する効率的なインデックス作成、最新のインフラストラクチャとのシームレスな統合により、これらの問題を克服します。AI ワークロードに対して優れた性能とスケーラビリティを提供します。
検索イテレータ [READ MORE]
ANN検索には、単一のクエリで呼び出せるエンティティの最大数に制限があり、基本的なANN検索を単純に使用するだけでは、大規模な検索の要求を満たせない場合があります。topKが16,384を超えるANN検索リクエストの場合、SearchIteratorの使用を検討することをお勧めします。このセクションでは、SearchIteratorの使用方法と関連する考慮事項について説明します。
パーティションキー [READ MORE]
パーティションキーは、パーティションに基づく検索最適化ソリューションです。特定のスカラフィールドをパーティションキーとして指定し、検索時にパーティションキーに基づいてフィルタリング条件を設定することで、検索範囲をいくつかのパーティションに絞り込み、検索効率を向上させることができます。この記事では、パーティションキーの使用方法と関連する考慮事項について紹介します。
mmap の使用 [READ MORE]
メモリマッピング (mmap) は、ディスク上の大きなファイルへの直接メモリアクセスを可能にし、Zilliz Cloud がインデックスとデータをメモリとハードドライブの両方に保存できるようにします。このアプローチは、アクセス頻度に基づいてデータ配置ポリシーを最適化し、検索パフォーマンスに影響を与えることなくコレクションのストレージ容量を拡張するのに役立ちます。このページでは、Zilliz Cloud が mmap を使用して高速かつ効率的なデータストレージと取得を可能にする方法を理解するのに役立ちます。
一貫性レベル [READ MORE]
分散型ベクトルデータベースであるZilliz Cloudは、読み取りおよび書き込み操作中に各ノードまたはレプリカが同じデータにアクセスできるように、複数のレベルの一貫性を提供します。現在サポートされている一貫性レベルには、Strong、Bounded、Eventually、およびSessionがあり、Boundedが一貫性のデフォルトレベルとして使用されます。
メトリックタイプ [READ MORE]
類似度メトリクスは、ベクトル間の類似性を測定するために使用されます。適切な距離メトリックを選択することで、分類やクラスタリングのパフォーマンスを大幅に向上させることができます。