detectCharset
Introduite dans : v22.2.0
Fonctionnalité expérimentale Non pris en charge par ClickHouse CloudDétecte le jeu de caractères d'une chaîne d'entrée encodée dans un format non UTF8.
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
SET allow_experimental_nlp_functions = 1;
SELECT detectCharset('Ich bleibe für ein paar Tage.')WINDOWS-1252detectLanguage
Introduit dans : v22.2.0
Fonctionnalité expérimentale Non pris en charge par ClickHouse CloudDé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 sera précise.
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
Utilisation de base
SET allow_experimental_nlp_functions = 1;
SELECT detectLanguage('Je pense que je ne parviendrai jamais à parler français comme un natif.')frdetectLanguageMixed
Introduit dans : v22.2.0
Fonctionnalité expérimentale Non pris en charge par ClickHouse CloudSemblable à la fonction detectLanguage, detectLanguageMixed renvoie une Map de codes de langue à 2 lettres associés au pourcentage de chaque langue dans le texte.
Syntaxe
detectLanguageMixed(s)Arguments
s— Le texte à analyserString
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
SET allow_experimental_nlp_functions = 1;
SELECT detectLanguageMixed('二兎を追う者は一兎をも得ず二兎を追う者は一兎をも得ず A vaincre sans peril, on triomphe sans gloire.'){'ja':0.62,'fr':0.36}detectLanguageUnknown
Introduit dans : v22.2.0
Fonctionnalité expérimentale Non pris en charge par ClickHouse CloudSemblable à 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.
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
SET allow_experimental_nlp_functions = 1;
SELECT detectLanguageUnknown('Ich bleibe für ein paar Tage.')dedetectTonality
Introduit dans : v22.2.0
Fonctionnalité expérimentale Non pris en charge par ClickHouse CloudDétermine le sentiment du texte fourni.
La fonction utilise un dictionnaire émotionnel intégré et ne fonctionne actuellement que pour la langue russe.
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
SET allow_experimental_nlp_functions = 1;
SELECT
detectTonality('Шарик - хороший пёс'),
detectTonality('Шарик - пёс'),
detectTonality('Шарик - плохой пёс')0.44445 0 -0.3lemmatize
Introduit dans : v21.9.0
Fonctionnalité expérimentale Non pris en charge par ClickHouse CloudEffectue 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".
Syntaxe
lemmatize(lang, word)Arguments
lang— Langue dont les règles seront utilisées.Stringword— Mot en minuscules à lemmatiser.String
Valeur renvoyée
Renvoie la forme lemmatisée du mot String
Exemples
Lemmatisation en anglais
SET allow_experimental_nlp_functions = 1;
SELECT lemmatize('en', 'wolves')wolfstem
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. La liste des identifiants de langue pris en charge est disponible dans system.stemmers.
Syntaxe
stem(word, language)Arguments
word— Un mot unique en minuscules (ou un tableau de mots) à soumettre à la racinisation. Doit être en minuscules — la présence de caractères majuscules produit des résultats indéfinis. Accepte String, FixedString, Array(String), Array(FixedString), Array(Nullable(String)) ou Array(Nullable(FixedString)).StringouFixedStringouArray(String)ouArray(FixedString)language— Langue dont les règles de racinisation seront appliquées. Les identifiants canoniques sont répertoriés dans system.stemmers (par ex. 'english', 'german', 'porter'). Snowball accepte également les codes ISO 639 à 2 ou 3 lettres (par ex. 'en', 'eng') comme alias lorsqu’ils sont définis, mais la couverture varie selon la langue — privilégiez les noms desystem.stemmerspour une meilleure portabilité.String
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
SELECT stem('blessing', 'en') AS resblessRacinisation d’un tableau de mots
SELECT stem(['blessing', 'disguise'], 'en') AS res['bless','disguis']Racinisation d’une valeur FixedString
SELECT stem(toFixedString('blessing', 10), 'en') AS resblessRacinisation d’un mot de type Nullable
SELECT stem(toNullable('blessing'), 'en') AS resblesssynonyms
Introduit dans : v21.9.0
Fonctionnalité expérimentale Non pris en charge par ClickHouse CloudTrouve les synonymes d’un mot donné.
Il existe deux types d’extensions de synonymes :
plainwordnet
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.
Syntaxe
synonyms(ext_name, word)Arguments
ext_name— Nom de l’extension dans laquelle la recherche s’effectue.Stringword— Mot recherché dans l’extension.String
Valeur renvoyée
Renvoie un tableau de synonymes pour le mot donné. Array(String)
Exemples
Trouver des synonymes
SET allow_experimental_nlp_functions = 1;
SELECT synonyms('en', 'important')['important','big','critical','crucial','essential']