Chiffre décimalCompatible with Milvus 3.0.0+
Le filtre « decimaldigit » est un filtre de tokens intégré qui convertit les chiffres décimaux Unicode issus des scripts pris en charge en chiffres ASCII. Cela permet d’assurer la cohérence des tokens numériques entre les langues et les systèmes d’écriture.
Configuration
Pour le texte arabe, l’analyseur intégré arabic analyseur intégré inclut déjà le filtre « decimaldigit ». Utilisez directement « decimaldigit » lorsque vous avez besoin d’une normalisation des chiffres dans un pipeline d’analyseur personnalisé.
Pour utiliser le filtre « decimaldigit » dans un analyseur personnalisé, ajoutez-le à la section « filter » dans analyzer_params:
analyzer_params = {
"tokenizer": "standard",
"filter": ["decimaldigit"],
}
Le filtre « decimaldigit » ne comporte aucun paramètre configurable.
Le filtre convertit les chiffres décimaux Unicode, y compris les chiffres arabo-indiens, thaï, devanagari, bengalis et à pleine largeur, en chiffres ASCII. Il opère sur les tokens générés par le tokenizer. La configuration ci-dessus est volontairement un exemple d’analyseur personnalisé et n’inclut pas le pipeline complet de traitement de l’arabe.
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 = {
"tokenizer": "standard",
"filter": ["decimaldigit"],
}
Vérification à l’aide de run_analyzer
from pymilvus import MilvusClient
client = MilvusClient(uri="http://localhost:19530")
sample_text = "Arabic ١٢٣ Thai ๑๒๓ Devanagari १२३ Fullwidth 123"
result = client.run_analyzer(sample_text, analyzer_params)
print(result)
Résultat attendu
['Arabic', '123', 'Thai', '123', 'Devanagari', '123', 'Fullwidth', '123']