Tous les produits
Search
Centre de documentation

OpenSearch:Utiliser la fonctionnalité de prédiction de catégorie

Dernière mise à jour :Aug 22, 2026

La prédiction de catégorie utilise un modèle entraîné pour associer une requête de recherche à une catégorie de produits, puis classe les résultats de cette catégorie plus haut. Par exemple, une requête telle que « chaussures de course » correspond à « Sports > Chaussures », ce qui fait apparaître les chaussures de sport avant les résultats non pertinents. Une requête comme « denim » correspond à « Vêtements > Pantalons », classant les jeans avant les articles de décoration sur le thème du denim.

Pour activer la prédiction de catégorie, effectuez trois configurations : créez et entraînez un modèle, configurez une règle d'analyse de requête qui référence le modèle, et ajoutez une expression de tri qui appelle category_score.

image

Prérequis

Avant de commencer, assurez-vous d'avoir :

  • Configuré les champs ID de catégorie, titre du produit et nom de catégorie en tant que champs d'attribut dans le schéma de votre application

  • (Si vous utilisez des données de produits) Des données documentaires contenant les champs ID de catégorie, titre du produit et nom de catégorie

  • (Si vous utilisez des données comportementales) Des données de comportement de clic collectées via la collecte de données

Créer et entraîner un modèle de prédiction de catégorie

  1. Dans le volet de navigation de gauche, sélectionnez Search Algorithm Center > Sort Configuration. Dans l'arborescence de navigation, cliquez sur Category Prediction Model, puis cliquez sur Create.

    image

  2. Sur la page Create Category Prediction, renseignez les détails du modèle.

    Champ

    Description

    Obligatoire

    Nom du modèle

    Un nom pour le modèle

    Oui

    Data Type

    Commodity Data : données documentaires de votre application. Nécessite les champs ID de catégorie, titre du produit et nom de catégorie. Behavior Data : données de comportement de clic collectées.

    Oui

    Category ID

    Le champ représentant l'ID de catégorie dans les documents de votre application. Prend en charge le type de données INT. Doit être un entier positif ; une valeur non positive provoque une erreur serveur.

    Oui

    Commodity Title

    Le champ représentant le titre du produit. Prend en charge les types de données TEXT et LITERAL.

    Oui

    Category Name

    Le champ représentant le nom de la catégorie. Prend en charge les types de données TEXT et LITERAL.

    Oui

    Filter Condition

    Une condition pour filtrer les données d'entraînement. Les noms de champs doivent correspondre à ceux du schéma de l'application. Prend en charge : <, >, <=, >=, =, !=. Séparez plusieurs conditions par des virgules (,) — toutes les conditions utilisent la logique ET. La logique OU n'est pas prise en charge. Exemple : is_onsale > 0

    Non

    image

  3. Cliquez sur Completed pour accéder à la page des détails du modèle.

    image

  4. Sur la page Category Prediction Model, le statut du modèle est Pending Training. Cliquez sur Train dans la colonne Actions pour démarrer l'entraînement.

    image

    Le modèle passe par les états suivants :

    État

    Signification

    Pending Training

    Modèle créé, entraînement non démarré

    Training

    Entraînement du modèle en cours

    Training Failed

    Échec de l'entraînement dû à une erreur de données

    Not Applied

    Entraînement terminé, pas encore référencé pour la récupération ou le tri

    Trained and Not Passed

    Entraînement terminé, mais le modèle n'a pas validé l'entraînement

    Si vous avez des questions, soumettez un ticket.

Configurer l'analyse de requête et les expressions de tri

Créer une règle d'analyse de requête

  1. Dans le volet de navigation de gauche, sélectionnez Search Algorithm Center > Retrieval Configuration. Dans l'arborescence de navigation, cliquez sur Query Analysis Rule Configuration, puis cliquez sur Create.

    image

  2. Configurez la règle d'analyse de requête et enregistrez-la.

    image

Appliquer le modèle au tri approximatif

Le tri approximatif constitue la première étape du classement.

  1. Dans le volet de navigation de gauche, sélectionnez Search Algorithm Center > Sort Configuration. Sur la page Policy Management, cliquez sur Create.

    image

  2. Sur la page Create Policy, saisissez un nom de politique. Définissez Scope sur Rough Sort et Type sur Expression. Seules les expressions sont prises en charge dans la console. Les plug-ins personnalisés seront pris en charge ultérieurement.

    image

  3. À l'étape Sort Configuration, sélectionnez category_score() dans la liste déroulante Scoring Characteristics.

    image

  4. Sélectionnez un champ, définissez le poids et enregistrez la configuration.

    image

Appliquer le modèle au tri fin

Le tri fin constitue la deuxième étape du classement.

  1. Sur la page Create Policy, saisissez un nom de politique. Définissez Scope sur Fine Sort et Type sur Expression. Seules les expressions sont prises en charge dans la console. Les plug-ins personnalisés seront pris en charge ultérieurement.

    image

  2. À l'étape Sort Configuration, sélectionnez category_score(cate_id_field) dans la liste déroulante Built-in Functions.

    image

  3. Remplacez cate_id_field par l'ID de catégorie de votre modèle et enregistrez la configuration.

    image

  4. Vérifiez le statut du modèle après qu'il a été référencé par la politique de tri.

  5. Exécutez un test de recherche sur l'application. Définissez le paramètre raw_query sur une requête de recherche pour tester les résultats de la prédiction de catégorie.

    image

Activer la prédiction de catégorie dans les appels API et SDK

La prédiction de catégorie trie les résultats de recherche uniquement lorsque le paramètre raw_query est présent et que sa valeur correspond à la requête de recherche dans l'index.

Définissez raw_query sur la requête de recherche saisie par l'utilisateur :

raw_query=<search_query>
  • Lors d'un appel via API : encodez la valeur en URL à l'aide de URL_ENCODE.

  • Lors d'un appel via SDK : aucun encodage n'est nécessaire.

Quand la prédiction de catégorie prend effet

Le tableau ci-dessous indique quand la prédiction de catégorie s'applique, en fonction de la configuration de l'index et de la valeur de raw_query.

Configuration de l'index

raw_query dans la requête

raw_query égale à la requête de recherche

La prédiction de catégorie s'applique-t-elle ?

Désactivée

Oui

—

Non

Désactivée

Non

—

Non

Activée

Non

—

Non

Activée

Oui

Non

Non

Activée

Oui

Oui

Oui

Comportement multi-index : Si une requête couvre plusieurs index, la prédiction de catégorie s'applique par index selon les règles ci-dessus.

# index3 prediction takes effect (query matches raw_query for index3 only)
query=index2:'index_query' AND index3:'search_query'&raw_query=search_query

# index2 prediction takes effect preferentially;
# if index2 config doesn't apply, index3 takes effect
query=index2:'search_query' AND index3:'search_query'&raw_query=search_query

Limites

  • Jusqu'à cinq modèles de prédiction de catégorie peuvent être créés par application.

  • Les champs de données utilisés pour entraîner le modèle doivent être inclus dans les index auxquels la règle d'analyse de requête est appliquée.

  • Avant de créer un modèle, configurez l'ID de catégorie et les champs connexes en tant que champs d'attribut.

  • Si une règle d'analyse de requête référence un modèle de prédiction de catégorie et que la requête contient le paramètre category_prediction, une erreur se produit.

  • Pour que la prédiction de catégorie prenne effet, les trois éléments suivants doivent être configurés : une règle d'analyse de requête référençant le modèle, une expression de tri contenant la fonction category_score et le paramètre raw_query dans la requête.

  • Opérations API connexes : Algorithms

Dépannage des échecs d'entraînement du modèle

Si l'entraînement de votre modèle de prédiction de catégorie échoue, suivez ces étapes pour résoudre le problème :

  1. Consultez le rapport d'anomalie : Sur la page des détails du modèle, consultez le statut Latest Version Status. Si le statut indique une erreur de données, ouvrez le Anomaly Report pour identifier la cause de l'échec.

  2. Vérifiez le niveau de complétude : Consultez le Completeness Level et les Upgrade Conditions correspondantes. Ajustez vos données selon les conditions de mise à niveau pour améliorer le niveau de complétude.

  3. Logique des données J-1 : L'entraînement du modèle utilise les données statistiques de la veille (J-1). Lorsqu'un modèle nouvellement créé est entraîné pour la première fois, l'entraînement peut échouer avec une erreur « Le champ d'entraînement n'existe pas » car aucune donnée de la veille n'est disponible. Attendez le lendemain, lorsque les données seront prêtes, puis relancez l'entraînement du modèle.

  4. Exigence de volume de données : L'entraînement nécessite que le nombre de requêtes uniques du jour le plus récent dépasse 100. Le nombre de requêtes uniques correspond au nombre de requêtes de recherche réussies incluant le paramètre raw_query.

  5. Format des conditions de filtre : Si des conditions de filtre sont configurées, les noms de champs doivent correspondre aux champs du schéma de l'application. Plusieurs conditions utilisent la logique ET et doivent être séparées par des virgules (,). Un format incorrect peut provoquer des échecs d'entraînement. Exemple : is_onsale > 0.

Utilisation avancée

Combinaison avec la reconnaissance d'entités nommées (NER)

Si vous configurez la NER conjointement avec la prédiction de catégorie dans une règle d'analyse de requête, davantage de documents sont récupérés. Les résultats de la NER sont également utilisés pour la récupération. Si aucun document ne correspond aux catégories prédites, les mots de la requête de recherche sont ignorés de manière sélective pour élargir les résultats — ces résultats élargis deviennent la sortie finale de la prédiction de catégorie. Pour plus d'informations, consultez la section sur la reconnaissance d'entités nommées.

Intervention sur les résultats de prédiction

L'intervention vous permet de remplacer les prédictions du modèle entraîné, de manière similaire à l'intervention d'analyse de requête. Pour plus d'informations, consultez Intervention dictionaries for category prediction.