Passer au contenu principal

Fonctions de traitement automatique du langage naturel (NLP)

detectCharset

Introduite dans : v22.2.0 Détecte le jeu de caractères d’une chaîne d’entrée encodée dans un format non UTF8.
Cette fonction est expérimentale et peut évoluer de manière imprévisible, avec des changements non rétrocompatibles dans les versions futures. Définissez allow_experimental_nlp_functions = 1 pour l’activer.
Syntaxe
detectCharset(s)
Arguments
  • s — Le texte à analyser. String
Valeur renvoyée Renvoie une chaîne contenant le code du jeu de caractères détecté String Exemples Utilisation de base
Query
SELECT detectCharset('Ich bleibe für ein paar Tage.')
Response
WINDOWS-1252

detectLanguage

Introduit dans : v22.2.0 Détecte la langue de la chaîne d’entrée encodée en UTF8. La fonction utilise la bibliothèque CLD2 pour la détection et renvoie le code de langue ISO à 2 lettres. Plus l’entrée est longue, plus la détection de la langue est précise.
Cette fonction est expérimentale et peut changer de manière imprévisible, avec des modifications non rétrocompatibles, dans de futures versions. Définissez allow_experimental_nlp_functions = 1 pour l’activer.
Syntaxe
detectLanguage(s)
Arguments
  • text_to_be_analyzed — Le texte à analyser. String
Valeur renvoyée Renvoie le code ISO à 2 lettres de la langue détectée. Autres résultats possibles : un = inconnu, aucune langue n’a pu être détectée, other = la langue détectée n’a pas de code à 2 lettres. String Exemples Texte multilingue
Query
SELECT detectLanguage('Je pense que je ne parviendrai jamais à parler français comme un natif. Where there\'s a will, there\'s a way.')
Response
fr

detectLanguageMixed

Introduit dans : v22.2.0 Semblable à la fonction detectLanguage, detectLanguageMixed renvoie une Map de codes de langue à 2 lettres associés au pourcentage de chaque langue dans le texte.
Cette fonction est expérimentale et peut évoluer de façon imprévisible, avec des changements non rétrocompatibles, dans les futures versions. Définissez allow_experimental_nlp_functions = 1 pour l’activer.
Syntaxe
detectLanguageMixed(s)
Arguments
  • s — Le texte à analyser String
Valeur renvoyée Renvoie une map dont les clés sont des codes ISO à 2 lettres et les valeurs correspondantes le pourcentage du texte détecté pour cette langue Map(String, Float32) Exemples Langues mixtes
Query
SELECT detectLanguageMixed('二兎を追う者は一兎をも得ず二兎を追う者は一兎をも得ず A vaincre sans peril, on triomphe sans gloire.')
Response
{'ja':0.62,'fr':0.36}

detectLanguageUnknown

Introduit dans : v22.2.0 Semblable à la fonction detectLanguage, à la différence que la fonction detectLanguageUnknown fonctionne avec des chaînes non encodées en UTF8. Préférez cette version si votre jeu de caractères est UTF-16 ou UTF-32.
Cette fonction est expérimentale et peut évoluer de manière imprévisible, avec des changements non rétrocompatibles, dans les versions futures. Définissez allow_experimental_nlp_functions = 1 pour l’activer.
Syntaxe
detectLanguageUnknown('s')
Arguments
  • s — Le texte à analyser. String
Valeur renvoyée Renvoie le code ISO à 2 lettres de la langue détectée. Autres résultats possibles : un = inconnu, aucune langue n’a pu être détectée, other = la langue détectée n’a pas de code à 2 lettres. String Exemples Utilisation de base
Query
SELECT detectLanguageUnknown('Ich bleibe für ein paar Tage.')
Response
de

detectTonality

Introduit dans : v22.2.0 Détermine le sentiment du texte fourni.
LimitationDans sa forme actuelle, cette fonction est limitée : elle utilise le dictionnaire émotionnel intégré et ne fonctionne que pour la langue russe.
Cette fonction est expérimentale et peut évoluer de façon imprévisible, avec des modifications non rétrocompatibles, dans les versions futures. Définissez allow_experimental_nlp_functions = 1 pour l’activer.
Syntaxe
detectTonality(s)
Arguments
  • s — Le texte à analyser. String
Valeur renvoyée Renvoie le score de sentiment moyen des mots du texte Float32 Exemples Analyse des sentiments en russe
Query
SELECT
    detectTonality('Шарик - хороший пёс'),
    detectTonality('Шарик - пёс'),
    detectTonality('Шарик - плохой пёс')
Response
0.44445, 0, -0.3

lemmatize

Introduit dans : v21.9.0 Effectue la lemmatisation d’un mot donné. Cette fonction nécessite des dictionnaires pour fonctionner, disponibles sur GitHub. Pour plus de détails sur le chargement d’un dictionnaire à partir d’un fichier local, consultez la page “Définition des dictionnaires”.
Cette fonction est expérimentale et peut évoluer de façon imprévisible, avec des changements non rétrocompatibles, dans les versions futures. Définissez allow_experimental_nlp_functions = 1 pour l’activer.
Syntaxe
lemmatize(lang, word)
Arguments
  • lang — Langue dont les règles seront utilisées. String
  • word — Mot en minuscules à lemmatiser. String
Valeur renvoyée Renvoie la forme lemmatisée du mot String Exemples Lemmatisation en anglais
Query
SELECT lemmatize('en', 'wolves')
Response
wolf

stem

Introduit dans : v21.9.0 Effectue le stemming d’un mot ou d’un tableau de mots à l’aide des algorithmes Snowball. Chaque chaîne d’entrée doit être un seul mot en minuscules ; les chaînes contenant des espaces provoquent une exception. La présence de caractères majuscules produit des résultats indéfinis. Renvoie String pour les entrées scalaires (y compris FixedString) et Array(String) pour les entrées de tableau. Les variantes Nullable et LowCardinality de String et FixedString sont prises en charge. Syntaxe
stem(word, language)
Arguments Valeur renvoyée La forme racinisée du mot (String), ou un tableau de mots racinisés (Array(String)). String ou Array(String) Exemples Racinisation d’un mot unique
Query
SELECT stem('blessing', 'en') AS res
Response
bless
Racinisation d’un tableau de mots
Query
SELECT stem(['blessing', 'disguise'], 'en') AS res
Response
['bless','disguis']
Racinisation d’une valeur FixedString
Query
SELECT stem(toFixedString('blessing', 10), 'en') AS res
Response
bless
Racinisation d’un mot de type Nullable
Query
SELECT stem(toNullable('blessing'), 'en') AS res
Response
bless

synonyms

Introduit dans : v21.9.0 Trouve les synonymes d’un mot donné. Il existe deux types d’extensions de synonymes :
  • plain
  • wordnet
Avec le type d’extension plain, vous devez fournir le chemin vers un fichier texte simple, dans lequel chaque ligne correspond à un ensemble de synonymes donné. Les mots de cette ligne doivent être séparés par des espaces ou des tabulations. Avec le type d’extension wordnet, vous devez fournir le chemin vers un répertoire contenant le thésaurus WordNet. Le thésaurus doit contenir un index des sens WordNet.
Cette fonction est expérimentale et peut évoluer de façon imprévisible, avec des changements non rétrocompatibles, dans les futures versions. Définissez allow_experimental_nlp_functions = 1 pour l’activer.
Syntaxe
synonyms(ext_name, word)
Arguments
  • ext_name — Nom de l’extension dans laquelle la recherche s’effectue. String
  • word — Mot recherché dans l’extension. String
Valeur renvoyée Renvoie un tableau de synonymes pour le mot donné. Array(String) Exemples Trouver des synonymes
Query
SELECT synonyms('list', 'important')
Response
['important','big','critical','crucial']
Dernière modification le 25 juin 2026