Ces paramètres sont disponibles dans system.settings et sont générés automatiquement à partir du code source.
vector_search_filter_strategy
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.5 | auto | Nouveau paramètre |
Si une requête de recherche vectorielle comporte une clause WHERE, ce paramètre détermine si celle-ci est évaluée en premier (préfiltrage) ou si l'index de similarité vectorielle est consulté en premier (post-filtrage). Valeurs possibles :
- 'auto' - Post-filtrage (la sémantique exacte pourra évoluer à l'avenir).
- 'postfilter' - Utilise l'index de similarité vectorielle pour identifier les plus proches voisins, puis applique les autres filtres
- 'prefilter' - Évalue d'abord les autres filtres, puis effectue une recherche en force brute pour identifier les voisins.
vector_search_index_fetch_multiplier
Alias : vector_search_postfilter_multiplier
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.8 | 1 | Alias du paramètre 'vector_search_postfilter_multiplier' |
Multiplie par cette valeur le nombre de plus proches voisins récupérés depuis l’index de similarité vectorielle. S’applique uniquement en cas de post-filtrage avec d’autres prédicats ou si le paramètre 'vector_search_with_rescoring = 1'. Plage valide : [1.0, 1000.0]. Les valeurs en dehors de cette plage sont rejetées.
vector_search_use_quantized_codes
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 26.7 | 0 | Nouveau paramètre permettant d’activer une optimisation de recherche vectorielle approximative en deux étapes avec un codec de colonne `Quantize(...)` ; par défaut, les requêtes restent exactes. |
Active une recherche vectorielle approximative en deux étapes, sans index (parcours exhaustif), sur une colonne compressée avec Quantized. Lorsqu’il est activé, ORDER BY L2Distance|cosineDistance(vec, reference) LIMIT k sur une colonne encodée avec un codec Quantized(...) va
- parcourir et filtrer les vecteurs quantifiés (cette étape produit
k * vector_search_index_fetch_multiplierrésultats), puis - recalculer le score des vecteurs trouvés à partir des vecteurs d’origine en pleine précision.
vector_search_with_rescoring
Historique des versions
| Version | Valeur par défaut | Commentaire |
|---|---|---|
| 25.8 | 0 | Nouveau paramètre. |
Indique si ClickHouse effectue un rescoring pour les requêtes qui utilisent l’index de similarité vectorielle.
Sans rescoring, l’index de similarité vectorielle renvoie directement les lignes contenant les meilleures correspondances.
Avec rescoring, l’index de similarité vectorielle récupère les lignes candidates et ClickHouse calcule la distance exacte
pour ces lignes à partir des vecteurs d’origine en pleine précision dans le pipeline SQL standard.
Lorsque c’est possible, ClickHouse applique les filtres au parcours des lignes candidates avant le calcul final de la distance.
Augmentez vector_search_index_fetch_multiplier si davantage de lignes candidates sont nécessaires pour améliorer le rappel, en particulier
avec des filtres supplémentaires ou des index vectoriels quantifiés.
Note : une requête exécutée sans rescoring et avec les répliques parallèles activées peut se rabattre sur le rescoring.