Aller au contenu principal

getProductsByVectorSearch

Recherche sémantique (vectorielle) pour les produits.

Description

Cette méthode effectue une recherche sémantique (vectorielle) pour les produits à partir d'une requête en langage naturel - elle correspond au sens plutôt qu'aux mots-clés exacts. Elle renvoie une promesse qui se résout en un tableau d'objets IProductsEntity.

Produits.getProductsByVectorSearch(

body*, body.queryText*, body.vectorDistanceThreshold, body.maxHits, body.debug, langCode, offset, limit

);

Schéma des paramètres

Schéma

body(obligatoire): IVectorSearchProducts
Corps de la recherche vectorielle. Exemple : { queryText: "chaussures de course rouges" }

body.queryText(obligatoire): string
Requête de recherche en langage naturel.
exemple : "chaussures de course rouges"

body.vectorDistanceThreshold: number
Distance vectorielle maximale pour un résultat.
exemple : 0.5

body.maxHits: number
Nombre maximal de résultats à retourner.
exemple : 50

body.debug: boolean
Inclure des informations de débogage dans la réponse.
exemple : false

langCode: string
Code de langue. Par défaut : "en_US"
exemple : "en_US"

offset: number
Paramètre pour la pagination. Par défaut : 0
exemple : 0

limit: number
Paramètre pour la pagination. Par défaut : 30
exemple : 30

Exemples

Exemple minimal

const response = await Products.getProductsByVectorSearch({ queryText: 'red running shoes' });

Exemple avec des attributs

const response = await Products.getProductsByVectorSearch(
{
queryText: 'red running shoes',
vectorDistanceThreshold: 0.5,
maxHits: 50,
},
'en_US',
0,
30,
);

Exemple de réponse

[
{
"id": 1764,
"localizeInfos": {
"title": "Red running shoes"
},
"price": 100,
"additional": {
"prices": {
"min": 0,
"max": 100
}
},
"isVisible": true,
"isSync": true,
"sku": "0-123",
"attributeValues": {},
"attributeSetIdentifier": "my-set",
"statusIdentifier": "in_stock",
"statusLocalizeInfos": {
"title": "In stock"
},
"position": 1
}
]

Schéma de réponse

Schéma : IProductsEntity[]

[]: IProductsEntity
Une entité produit.

[].id: number
L'identifiant unique.
exemple : 12345

[].localizeInfos: ILocalizeInfo
Le nom localisé du produit.
exemple : { "title": "Chaussures de course rouges" }

[].price: number | null
Le prix de la page produit pris dans l'index.
exemple : 100

[].sku: string | null
SKU du produit (Stock Keeping Unit), peut être nul.
exemple : "SKU_12345"

[].attributeValues: IAttributeValues
Tableau des valeurs d'attributs provenant de l'index.

[].statusIdentifier: string | null
Identifiant de statut de la page produit (peut être nul).
exemple : "en_stock"

[].isVisible: boolean
Un indicateur de visibilité de la page.
exemple : true

[].position: number
Numéro de l'élément (pour le tri).
exemple : 1