Normalizzazione dell'araboCompatible with Milvus 3.0.0+
Il filtro " arabic_normalization " è un filtro token integrato per il testo arabo. Normalizza le varianti delle lettere specifiche dell'arabo e rimuove i segni opzionali che possono far apparire diversi termini arabi equivalenti durante l'analisi del testo.
Configurazione
Per il testo arabo, utilizzare l’analizzatore integrato arabic analizzatore integrato. L'analizzatore integrato include questo filtro insieme alla tokenizzazione standard, alla conversione in minuscolo, alla normalizzazione delle cifre decimali, allo stemming arabo e alla rimozione delle parole vuote arabe. Utilizzare direttamente " arabic_normalization " solo quando è necessario creare una pipeline di analizzatori personalizzata.
Per utilizzare il filtro ` arabic_normalization ` in un analizzatore personalizzato, aggiungerlo alla sezione ` filter ` in ` analyzer_params`:
analyzer_params = {
"tokenizer": "standard",
"filter": ["arabic_normalization"],
}
Il filtro arabic_normalization non presenta parametri configurabili.
Il filtro applica le seguenti trasformazioni:
Trasformazione |
Da |
A |
|---|---|---|
Varianti di Hamza + Alef |
|
|
Teh Marbuta |
|
|
Alef Maksura |
|
|
Harakat |
|
Rimosso |
Tatweel / Kashida |
|
Rimosso |
Il filtro opera sui token generati dal tokenizzatore. La configurazione sopra riportata è volutamente un esempio di analizzatore personalizzato e non include la pipeline completa di elaborazione dell'arabo.
Esempi
Prima di applicare la configurazione dell'analizzatore allo schema della propria raccolta, verificarne il comportamento utilizzando il metodo run_analyzer.
Configurazione dell’analizzatore
analyzer_params = {
"tokenizer": "standard",
"filter": ["arabic_normalization"],
}
Verifica tramite run_analyzer
from pymilvus import MilvusClient
client = MilvusClient(uri="http://localhost:19530")
sample_text = "آدم أحمد إسلام مدرسة كبرى كِتَابٌ عـــربي"
result = client.run_analyzer(sample_text, analyzer_params)
print(result)
Output previsto
['ادم', 'احمد', 'اسلام', 'مدرسه', 'كبري', 'كتاب', 'عربي']