La saisie semi-automatique complète la requête de recherche de l'utilisateur au fur et à mesure de sa saisie, en affichant jusqu'à 10 suggestions correspondantes avant la validation de la requête. OpenSearch prend en charge les préfixes de caractères chinois, le pinyin complet et le pinyin abrégé (initiales) pour alimenter cette fonctionnalité intelligente.
Pour configurer un modèle de saisie semi-automatique, définir des listes d'exclusion et ajouter des requêtes mises en avant, consultez Saisie semi-automatique.
Endpoint de saisie semi-automatique
Endpoint
GET /v3/openapi/apps/{appName}/suggest/{suggestName}/search
| Paramètre de chemin | Description |
|---|---|
appName |
Nom de votre application OpenSearch |
suggestName |
Nom de votre modèle de saisie semi-automatique |
L'endpoint ci-dessus omet l'hôte, les en-têtes de requête et les détails d'encodage. Pour connaître le format de connexion complet, consultez Envoyer des requêtes de recherche.
Format pris en charge : JSON
Paramètres de requête
| Paramètre | Type | Obligatoire | Valeurs valides | Par défaut | Description |
|---|---|---|---|---|---|
query |
STRING | Oui | — | — | Texte saisi dans la zone de recherche. URL-encodez la valeur si elle contient des caractères chinois. |
hit |
INT | Non | 1–10 | 10 | Nombre de suggestions à renvoyer. |
user_id |
STRING | Non | — | — | ID de l'utilisateur envoyant la requête. URL-encodez la valeur. Nous vous recommandons d'utiliser le même user_id que pour vos requêtes de recherche de données. |
re_search |
STRING | Non | disable |
Activé | Indique si le moteur doit récupérer des documents en remplaçant les termes de la requête par des homophones. Définissez ce paramètre sur disable pour désactiver cette fonctionnalité. |
Remarque : Le paramètrequeryutilisé ici diffère du paramètrequerydes requêtes de recherche de données. Dans les requêtes de saisie semi-automatique,querycorrespond au texte brut saisi par l'utilisateur dans la zone de recherche ; il ne s'agit pas d'un nom de champ d'index.
Paramètres de réponse
| Paramètre | Type | Description |
|---|---|---|
request_id |
STRING | ID de la requête, utilisé pour le dépannage. |
searchtime |
FLOAT | Temps de traitement de la requête par le moteur, en secondes. |
suggestions |
ARRAY | Suggestions correspondantes. Chaque élément est un objet contenant une chaîne de suggestion. |
errors |
ARRAY | Détails des erreurs. Le champ message contient la description de l'erreur. Consultez Codes d'erreur. |
Exemples
Requête
http://$host/v3/openapi/apps/app_demo/suggest/suggest_demo/search?hit=10&query=One-piece dress&user_id=xxx
app_demo: nom de l'applicationsuggest_demo: nom du modèle de suggestionhit=10: renvoie jusqu'à 10 suggestionsquery=One-piece dress: texte saisi dans la zone de recherche
Réponse en cas de succès
{
"request_id": "150116615820104116121674",
"searchtime": 0.002654,
"suggestions": [
{"suggestion": "One-piece dress"},
{"suggestion": "One-piece dress for Spring"},
{"suggestion": "One-piece dress for art enthusiasts"}
]
}
Réponse en cas d'erreur
{
"request_id": "150116635320104116122572",
"searchtime": 0.037484,
"suggestions": [],
"errors": [
{
"code": 2551,
"message": "suggester not found"
}
]
}
Pour obtenir la liste complète des codes d'erreur, consultez Codes d'erreur.
Étapes suivantes
Saisie semi-automatique : configurez les modèles de suggestion, les listes d'exclusion et les requêtes mises en avant dans la console
Envoyer des requêtes de recherche : utilisez le même
user_idpour les requêtes de suggestion et de recherche