ArabeCompatible with Milvus 3.0.0+
L'analyseur « arabic » est un analyseur intégré destiné aux textes en arabe. Utilisez cet analyseur lorsque vous souhaitez que Milvus normalise les variantes des lettres arabes, supprime les signes diacritiques et le tatweel, convertisse les chiffres arabo-indiens, applique le lemmatisation arabe et supprime les mots vides arabes.
Configuration
Les analyseurs intégrés sont des modèles d’analyse fournis par Milvus. Pour utiliser un analyseur intégré, définissez type sur le nom d’un analyseur prédéfini dans analyzer_params.
Pour utiliser l’analyseur arabe intégré, définissez ` type ` sur ` arabic` :
analyzer_params = {
"type": "arabic",
}
L'analyseur arabic accepte le paramètre facultatif suivant :
Paramètre |
Type |
Valeur par défaut |
Description |
|---|---|---|---|
|
|
|
Liste des mots vides supplémentaires à exclure de la tokenisation. Par défaut, l'analyseur « |
Pour ajouter des mots vides personnalisés, incluez stop_words:
analyzer_params = {
"type": "arabic",
"stop_words": ["ميلفوس"],
}
Milvus applique les mots vides personnalisés en plus du dictionnaire intégré « _arabic_ ».
L'analyseur intégré « arabic » équivaut à la configuration d'analyseur personnalisée suivante :
analyzer_params = {
"tokenizer": "standard",
"filter": [
"lowercase",
"decimaldigit",
"arabic_normalization",
{
"type": "stemmer",
"language": "arabic",
},
{
"type": "stop",
"stop_words": "_arabic_",
},
],
}
Cet analyseur applique les étapes de traitement suivantes :
- Tokenisation: utilise le tokeniseur «
standard» pour diviser le texte en tokens. - Normalisation des chiffres: utilise le filtre «
decimaldigit» pour convertir les chiffres décimaux arabo-indiens et autres chiffres décimaux Unicode en chiffres ASCII. - Normalisation de l’arabe: utilise le filtre
arabic_normalizationpour normaliser les variantes de l’alif, le teh marbuta et l’alif maksura, et supprimer les harakat et les tatweel. - Stemming: utilise le filtre
stemmeravec l’option «language» définie sur «arabic». - Suppression des mots vides: utilise le filtre «
stop» avec le dictionnaire intégré «_arabic_».
Une fois analyzer_params défini, vous pouvez appliquer l’analyseur à un champ VARCHAR lors de la définition d’un schéma de collection. Pour plus de détails, reportez-vous à la section Exemple d’utilisation.
Exemples
Avant d’appliquer la configuration de l’analyseur à votre schéma de collection, vérifiez son comportement à l’aide de la méthode ` run_analyzer `.
Configuration de l’analyseur
analyzer_params = {
"type": "arabic",
}
Vérification à l’aide de run_analyzer
from pymilvus import MilvusClient
client = MilvusClient(uri="http://localhost:19530")
sample_text = "كِتَابٌ عـــربي ١٢٣"
result = client.run_analyzer(sample_text, analyzer_params)
print(result)
Résultat attendu
['كتاب', 'عرب', '123']