توحيد النص العربيCompatible with Milvus 3.0.0+
يُعد مرشح " arabic_normalization " مرشحًا مدمجًا للرموز النصية الخاصة بالنصوص العربية. وهو يعمل على توحيد أشكال الحروف الخاصة باللغة العربية وإزالة العلامات الاختيارية التي قد تؤدي إلى ظهور المصطلحات العربية المتطابقة بشكل مختلف أثناء تحليل النص.
التكوين
بالنسبة للنصوص العربية، استخدم arabic في معظم الحالات. يتضمن المحلل المدمج هذا المرشح إلى جانب التقطيع القياسي، وتحويل الأحرف إلى صغرى، وتوحيد الأرقام العشرية، واستخلاص الجذور العربية، وإزالة الكلمات الممنوعة العربية. لا تستخدم مرشح « arabic_normalization » مباشرةً إلا عندما تحتاج إلى إنشاء مسار محلل مخصص.
لاستخدام مرشح « arabic_normalization » في محلل مخصص، أضفه إلى قسم « filter » في « analyzer_params »:
analyzer_params = {
"tokenizer": "standard",
"filter": ["arabic_normalization"],
}
لا يحتوي مرشح arabic_normalization على معلمات قابلة للتكوين.
يطبق المرشح التحويلات التالية:
التحويل |
من |
إلى |
|---|---|---|
متغيرات الحاء + الهمزة |
|
|
«ت» المربوطة |
|
|
الألف المكسورة |
|
|
الحركات |
|
تم الحذف |
التطويل / الكشيدة |
|
تمت إزالته |
يعمل المرشح على الرموز التي يولدها أداة الترميز. التكوين أعلاه هو مثال متعمد لمحلل مخصص ولا يتضمن مسار المعالجة الكامل للغة العربية.
أمثلة
قبل تطبيق تكوين المحلل على مخطط المجموعة الخاص بك، تحقق من سلوكه باستخدام طريقة run_analyzer.
تكوين المحلل
analyzer_params = {
"tokenizer": "standard",
"filter": ["arabic_normalization"],
}
التحقق باستخدام run_analyzer
from pymilvus import MilvusClient
client = MilvusClient(uri="http://localhost:19530")
sample_text = "آدم أحمد إسلام مدرسة كبرى كِتَابٌ عـــربي"
result = client.run_analyzer(sample_text, analyzer_params)
print(result)
الناتج المتوقع
['ادم', 'احمد', 'اسلام', 'مدرسه', 'كبري', 'كتاب', 'عربي']