Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
FT.CREATE
La FT.CREATE commande crée un index vide et lance le processus de remblayage. Chaque index comprend un certain nombre de définitions de champs. Chaque définition de champ spécifie un nom de champ, un type de champ et un chemin dans chaque clé indexée pour localiser une valeur du type déclaré. Certaines définitions de type de champ comportent des spécificateurs de sous-types supplémentaires.
Pour les index sur les clés HASH, le chemin est le même que le nom du membre de hachage. La AS clause facultative peut être utilisée pour renommer le champ si vous le souhaitez. Il est particulièrement utile de renommer les champs lorsque le nom du membre contient des caractères spéciaux.
Pour les index sur des clés JSON, le chemin est un chemin JSON vers les données du type déclaré. Comme le chemin JSON contient toujours des caractères spéciaux, la AS clause est obligatoire.
Syntaxe
FT.CREATE <index-name> ON HASH | JSON [PREFIX <count> <prefix1> [<prefix2>...]] SCHEMA (<field-identifier> [AS <alias>] | VECTOR [HNSW|FLAT] <attr_count> [<attribute_name> <attribute_value>]) | TAG [SEPARATOR <sep>] [CASESENSITIVE] | NUMERIC )+
(obligatoire) : <index-name>C'est le nom que vous donnez à votre index. Si un index portant le même nom existe déjà, une erreur est renvoyée.
ON HASH | JSON (facultatif) : seules les clés correspondant au type spécifié sont incluses dans cet index. En cas d'omission, HASH est supposé.
PRÉFIXE (facultatif) : <prefix-count><prefix>si cette clause est spécifiée, seules les clés commençant par les mêmes octets qu'un ou plusieurs des préfixes spécifiés seront incluses dans cet index. Si cette clause est omise, toutes les clés du type correct seront incluses. Un préfixe de longueur nulle correspondrait également à toutes les clés du type correct.
Types de champs :
TAG : un champ de balise est une chaîne contenant une ou plusieurs valeurs de balise.
SÉPARATEUR <sep>(facultatif) : l'un des caractères
,.<>{}[]"':;!@#$%^&*()-+=~utilisés pour délimiter les balises individuelles. En cas d'omission, la valeur par défaut est,.CASESENSITIVE (facultatif) : le cas échéant, les comparaisons de balises feront la distinction majuscules/majuscules. Par défaut, les comparaisons de balises NE font PAS la distinction majuscules et minuscules.
NUMÉRIQUE : Un champ numérique contient un nombre.
VECTEUR : Un champ vectoriel contient un vecteur. Deux algorithmes d'indexation vectorielle sont actuellement pris en charge : HNSW (Hierarchical Navigable Small World) et FLAT (force brute). Chaque algorithme possède un ensemble d'attributs supplémentaires, certains obligatoires et d'autres facultatifs.
FLAT : L'algorithme Flat fournit des réponses exactes, mais son temps d'exécution est proportionnel au nombre de vecteurs indexés et peut donc ne pas être approprié pour les grands ensembles de données.
DIM <number>(obligatoire) : Spécifie le nombre de dimensions d'un vecteur.
TYPE FLOAT32 (obligatoire) : type de données, actuellement seul FLOAT32 est pris en charge.
DISTANCE_METRIC [L2 | IP | COSINE] (obligatoire) : Spécifie l'algorithme de distance.
INITIAL_CAP <size>(facultatif) : taille initiale de l'index.
HNSW : L'algorithme HNSW fournit des réponses approximatives, mais fonctionne nettement plus rapidement que FLAT.
DIM <number>(obligatoire) : Spécifie le nombre de dimensions d'un vecteur.
TYPE FLOAT32 (obligatoire) : type de données, actuellement seul FLOAT32 est pris en charge.
DISTANCE_METRIC [L2 | IP | COSINE] (obligatoire) : Spécifie l'algorithme de distance.
INITIAL_CAP <size>(facultatif) : taille initiale de l'index.
M <number>(facultatif) : nombre maximum d'arêtes sortantes autorisées pour chaque nœud du graphe dans chaque couche. Sur la couche zéro, le nombre maximal d'arêtes sortantes sera de 2*M. La valeur par défaut est 16, le maximum est 512.
EF_CONSTRUCTION <number>(facultatif) : contrôle le nombre de vecteurs examinés lors de la construction de l'index. Des valeurs plus élevées pour ce paramètre amélioreront le taux de rappel au détriment de délais de création d'index plus longs. La valeur par défaut est 200. La valeur maximale est 4096.
EF_RUNTIME <number>(facultatif) : contrôle le nombre de vecteurs à examiner lors d'une opération de requête. La valeur par défaut est 10 et le maximum est 4096. Vous pouvez définir cette valeur de paramètre pour chaque requête que vous exécutez. Des valeurs plus élevées augmentent la durée des requêtes, mais améliorent le rappel des requêtes.
RÉPONSE : OK ou erreur.