ドロップダウン候補機能は、OpenSearchの基本機能です。この機能は、検索クエリを入力するときに選択できる推奨検索クエリを提供します。検索クエリの完全な内容を入力する前に、期待する検索クエリを見つけることができます。これにより、期待する検索結果をできるだけ早く取得できます。OpenSearchのドロップダウン候補機能は、漢字のプレフィックス、完全なピンインスペル、および省略されたピンインスペルの最初の文字をサポートしています。これにより、入力されたコンテンツに基づいてインテリジェントな検索レコメンデーションを実装できます。ビジネスに合わせてパーソナライズされたドロップダウン候補を設定するには、OpenSearchコンソールで簡単な設定を行う必要があります。さらに、OpenSearchコンソールでは、ブラックリストと検索レコメンデーションを設定できます。これにより、ドロップダウン候補をさらに制御およびパーソナライズできます。ドロップダウン候補の使用方法の詳細については、ドロップダウン候補を参照してください。
URL
/v3/openapi/apps/{appName}/suggest/{suggestName}/search
appName パラメーターをOpenSearchアプリケーションの名前に置き換えます。
suggestName パラメーターをドロップダウン候補モデルの名前に置き換えます。
サンプルURLには、リクエストヘッダーのパラメーターやエンコード方式などの情報は含まれていません。
サンプルURLには、OpenSearchへの接続に使用するエンドポイントも含まれていません。
サポートされている形式
JSON
サポートされているHTTPリクエストメソッド
GET
リクエストパラメーター
パラメーター | タイプ | 必須 | 有効な値 | デフォルト値 | 説明 |
query | STRING | はい | クエリキーワード。キーワードに漢字が含まれている場合は、このパラメーターの値をURLエンコードします。 | ||
hit | INT | いいえ | [1-10] | 10 | 表示するドロップダウン候補の数。 |
user_id | STRING | いいえ | ドロップダウン候補の現在のリクエストを送信するユーザーのID。このパラメーターの値をURLエンコードします。データ検索に送信されるAPIリクエストでは、user_idパラメーターの値を使用することをお勧めします。詳細については、検索リクエストの開始を参照してください。 | ||
re_search | STRING | いいえ | 検索クエリ内の用語を同音異義語に置き換えてドキュメントを取得するかどうかを指定します。デフォルトでは、この機能は有効になっています。この機能を無効にするには、re_searchパラメーターをdisableに設定します。 |
注:ドロップダウン候補のAPIリクエストのqueryパラメーターは、データ検索のAPIリクエストのqueryパラメーターとは異なります。ドロップダウン候補のAPIリクエストのqueryパラメーターは、ユーザーが検索ボックスに入力するテキストを示します。テキストはインデックスフィールド名である必要はありません。
レスポンスパラメーター
パラメーター | タイプ | 説明 |
request_id | STRING | リクエストのID。トラブルシューティングに使用されます。 |
searchtime | FLOAT | エンジンがクエリを完了するのにかかった時間(秒単位)。 |
suggestions | ARRAY | 一致したドロップダウン候補。この配列の各要素はドロップダウン候補です。 |
errors | ARRAY | エラー情報。messageパラメーターはエラーメッセージを示します。エラーコードの詳細については、エラーコードを参照してください。 |
例
ドロップダウン候補のAPIリクエストの例。リクエストヘッダーのパラメーターやエンコード方式などの情報は省略されています。
http://$host/v3/openapi/apps/app_demo/suggest/suggest_demo/search?hit=10&query=One-piece dress&user_id=xxx
成功レスポンスの例:
{
"request_id": "150116615820104116121674",
"searchtime": 0.002654,
"suggestions": [
{
"suggestion": "One-piece dress"
},
{
"suggestion": "One-piece dress for Spring"
},
{
"suggestion": "One-piece dress for art enthusiasts"
}
]
}
エラーレスポンスの例:
{
"request_id": "150116635320104116122572",
"searchtime": 0.037484,
"suggestions": [],
"errors": [
{
"code": 2551,
"message": "suggester not found" // サジェスターが見つかりません
}
]
}