意味的類似性によるベクターストア文書の検索

セマンティック類似性とバッチ操作を使用してベクトルストアのドキュメントを検索する

Initiate a search operation with a query text and receive most semantically similar responses from the vector store.

Path parameters
vector-store-idstringRequired

The ID of the vector store.

Query parameters
qstringRequired

The search query text.

nintegerOptional

Number of chunks to return.

tnumberOptional

Matching threshold.

prev_chunksintegerOptional

Number of chunks before the matched chunk to include.

next_chunksintegerOptional

Number of chunks after the matched chunk to include.

Header parameters
x-api-keystringRequired

The API key for authentication.

Responses
200

Search results retrieved successfully.

application/json
get
/vector-stores/{vector-store-id}/documents/search
200

Search results retrieved successfully.

例リクエスト

curl -X GET \
  "https://api.rememberizer.ai/api/v1/vector-stores/vs_abc123/documents/search?q=How%20to%20integrate%20our%20product%20with%20third-party%20systems&n=5&prev_chunks=1&next_chunks=1" \
  -H "x-api-key: YOUR_API_KEY"

YOUR_API_KEY を実際のベクターストアAPIキーに、vs_abc123 をベクターストアIDに置き換えてください。

パスパラメータ

パラメータ
タイプ
説明

vector-store-id

string

必須。 検索するベクトルストアのID。

クエリパラメータ

パラメータ
タイプ
説明

q

文字列

必須。 検索クエリテキスト。

n

整数

返す結果の数。デフォルト: 10。

t

数値

一致の閾値。デフォルト: 0.7。

prev_chunks

整数

一致したチャンクの前に含めるチャンクの数。デフォルト: 0。

next_chunks

整数

一致したチャンクの後に含めるチャンクの数。デフォルト: 0。

レスポンスフォーマット

認証

このエンドポイントは、x-api-key ヘッダーを使用して API キーによる認証を必要とします。

エラーレスポンス

ステータスコード
説明

400

不正なリクエスト - 必須パラメータが欠落しているか、無効な形式

401

認証エラー - 無効または欠落したAPIキー

404

未検出 - ベクトルストアが見つかりません

500

サーバ内部エラー

検索最適化のヒント

コンテキストウィンドウ

prev_chunksnext_chunks パラメータを使用して、各一致に含まれるコンテキストの量を制御します:

  • 両方を 0 に設定すると、コンテキストなしの正確な一致になります

  • 両方を 1-2 に設定すると、最小限のコンテキストを持つ一致になります

  • 両方を 3-5 に設定すると、 substantial context を持つ一致になります

一致の閾値

t パラメータは、一致がどのように厳密にフィルタリングされるかを制御します:

  • 高い値(例:0.9)は、非常に近い一致のみを返します

  • 低い値(例:0.5)は、より多様な一致を返します

  • デフォルト(0.7)は、バランスの取れたアプローチを提供します

バッチ操作

高スループットアプリケーション向けに、Rememberizerはベクトルストアに対する効率的なバッチ操作をサポートしています。これらのメソッドは、複数の検索クエリを処理する際のパフォーマンスを最適化します。

バッチ検索の実装

バッチ操作のパフォーマンス最適化

ベクトルストア検索のためのバッチ操作を実装する際は、以下のベストプラクティスを考慮してください。

  1. 最適なバッチサイズ: ほとんどのアプリケーションでは、5-10のクエリを並行して処理することで、スループットとリソース使用の良いバランスが得られます。

  2. レート制限の認識: バッチ間に遅延メカニズム(通常1-2秒)を含めて、APIのレート制限に達しないようにします。

  3. エラーハンドリング: バッチ内で失敗する可能性のある個々のクエリに対して、堅牢なエラーハンドリングを実装します。

  4. 接続管理: 高ボリュームのアプリケーションでは、オーバーヘッドを減らすために接続プーリングを実装します。

  5. タイムアウト設定: 長時間実行されるクエリが全体のバッチをブロックしないように、各リクエストに適切なタイムアウトを設定します。

  6. 結果処理: すべての結果を待つのではなく、利用可能になった結果を非同期に処理することを検討してください。

  7. モニタリング: 平均応答時間や成功率などのパフォーマンス指標を追跡して、最適化の機会を特定します。

非常に高いクエリボリュームを持つプロダクションアプリケーションでは、大規模なバッチを効率的に管理するために、ワーカープロセスを持つキューシステムの実装を検討してください。

このエンドポイントを使用すると、意味的類似性を利用してベクトルストアを検索できます。これは、クエリに正確なキーワードが含まれていなくても、概念的に関連する文書を返します。これにより、自然言語クエリや質問応答に特に強力になります。

Last updated