Aller au contenu principal

Glossaire

Un glossaire des termes clés utilisés dans Whoosh.

Analyse​

Le processus de conversion du texte en jetons (unités individuelles comme les mots ou les termes) pour l'indexation. Implique la tokenisation, la normalisation (mise en minuscules, racinement) et le filtrage (suppression des mots vides, etc.).

Analyseur​

Une chaîne d'objets Tokenizer et Filter qui traite le texte en jetons. Exemples : RegexTokenizer, NgramTokenizer, LowercaseFilter, StopFilter, StemmerFilter.

Fichier composé​

Un format de fichier qui combine plusieurs fichiers de segment d'index en un seul fichier .seg. Cela peut améliorer les performances sur certains systèmes de fichiers en réduisant l'utilisation des descripteurs de fichiers. Configuré via le paramètre should_assemble du codec.

Document​

Un enregistrement unique dans l'index, similaire à une ligne dans une base de données. Un document contient des champs (analogues aux colonnes).

Champ​

Un attribut nommé d'un document. Les champs ont un type (défini par FieldType) qui détermine comment la valeur du champ est indexée et stockée.

Type de champ​

La classe (ex. : TEXT, ID, NUMERIC, DATETIME, BOOLEAN) qui définit comment la valeur d'un champ est tokenisée, stockée, indexée, et rendue triable/facetable.

Filtre​

Un composant d'Analyzer qui traite, transforme ou filtre les jetons après la tokenisation. Exemples : LowercaseFilter, StopFilter, StemmerFilter.

Format​

Un objet Format contrôle comment les informations de posting (fréquence du terme, positions, décalages de caractères) sont encodées pour chaque champ dans l'index inversé. Exemples : Existence, Frequency, Positions, Characters.

Fragmentation​

Le processus de sélection des fragments de texte autour des termes correspondants pour la mise en évidence.

Mise en évidence (Highlighter)​

Le module whoosh.highlight, qui fournit des formateurs, fragmenteurs et évaluateurs pour mettre en évidence les termes de recherche dans les documents.

Index​

La collection de fichiers de segment qui stockent l'index inversé, les données de documents et les métadonnées (la table des matières, ou TOC).

IndexWriter​

La classe IndexWriter est utilisée pour créer et modifier l'index. Elle met en mémoire tampon les ajouts et suppressions de documents et les valide sur le disque.

Index inversé (Inverted Index)​

La structure de données centrale d'un moteur de recherche : pour chaque terme unique, il stocke une liste de documents (et de positions) où ce terme apparaît.

Correspondance (Matcher)​

Un objet qui itère sur les documents correspondants dans la liste de postings pour une requête. Les correspondances peuvent être combinées (union, intersection, etc.) pour des requêtes composées.

Posting​

Une entrée unique dans l'index inversé : un tuple (ID de document, fréquence du terme, valeur) pour un terme donné.

Schéma (Schema)​

Définit les champs, leurs types et les options d'indexation. Un schéma est passé à Storage.create_index().

Évaluateur (Scorer)​

Un objet qui calcule un score de pertinence pour un document donné une requête et des poids de termes. Les différents modèles de pondération (BM25, TF-IDF, etc.) utilisent des évaluateurs différents.

Segment​

Une portion autonome de l'index inversé. Un index peut consiste en plusieurs segments. Les segments sont fusionnés périodiquement (lors de l'optimisation ou des opérations de fusion) pour améliorer les performances.

Clé de tri (Sort Key)​

Une valeur calculée par document (via un FacetType et son Categorizer) utilisée pour ordonner les résultats lors du tri et de la facettisation.

Racinement (Stemming)​

Le processus de réduction des mots à leur forme racine (par ex., "running" → "run", "cats" → "cat") pour améliorer le rappel en correspondant les formes inflectées.

Mots vides (Stop Words)​

Des mots à haute fréquence et faible information (ex. : "the", "a", "and") qui sont généralement filtrés lors de l'indexation.

Terme​

Un couple unique (nom de champ, texte du jeton) dans l'index inversé.

Vecteur de termes (Term Vector)​

Structure de données optionnelle par document stockant les termes (et optionnellement les positions et décalages de caractères) qui apparaissent dans le champ d'un document, permettant des fonctionnalités comme la mise en évidence et les retours de pertinence pseudo.

Tokeniseur (Tokenizer)​

Un composant d'Analyzer qui divise le texte d'entrée en jetons. Exemples : RegexTokenizer, PathTokenizer, NgramTokenizer.

Requête Whoosh​

La syntaxe de requête propre à Whoosh, analysée par QueryParser. Prend en charge la recherche sur champs, les requêtes de phrase, les jokers, les intervalles et plus encore.