مفكك الكلمات المركبة
يقوم عامل التصفية decompounder بتقسيم الكلمات المركبة إلى مكونات فردية بناءً على قاموس محدد، مما يسهل البحث عن أجزاء من المصطلحات المركبة. هذا الفلتر مفيد بشكل خاص للغات التي تستخدم كلمات مركبة بشكل متكرر، مثل الألمانية.
التكوين
عامل التصفية decompounder هو عامل تصفية مخصص في ميلفوس. لاستخدامه، حدد "type": "decompounder" في تكوين الفلتر، إلى جانب معلمة word_list التي توفر قاموس مكونات الكلمات المراد التعرف عليها.
analyzer_params = {
"tokenizer": "standard",
"filter":[{
"type": "decompounder", # Specifies the filter type as decompounder
"word_list": ["dampf", "schiff", "fahrt", "brot", "backen", "automat"],
}],
}
Map<String, Object> analyzerParams = new HashMap<>();
analyzerParams.put("tokenizer", "standard");
analyzerParams.put("filter",
Collections.singletonList(
new HashMap<String, Object>() {{
put("type", "decompounder");
put("word_list", Arrays.asList("dampf", "schiff", "fahrt", "brot", "backen", "automat"));
}}
)
);
const analyzer_params = {
"tokenizer": "standard",
"filter":[{
"type": "decompounder", // Specifies the filter type as decompounder
"word_list": ["dampf", "schiff", "fahrt", "brot", "backen", "automat"],
}],
};
analyzerParams = map[string]any{"tokenizer": "standard",
"filter": []any{map[string]any{
"type": "decompounder",
"word_list": []string{"dampf", "schiff", "fahrt", "brot", "backen", "automat"},
}}}
# restful
analyzerParams='{
"tokenizer": "standard",
"filter": [
{
"type": "decompounder",
"word_list": [
"dampf",
"schiff",
"fahrt",
"brot",
"backen",
"automat"
]
}
]
}'
يقبل عامل التصفية decompounder المعلمات التالية القابلة للتكوين.
المعلمة |
الوصف |
|---|---|
|
قائمة بمكونات الكلمات المستخدمة لتقسيم المصطلحات المركبة. يحدد هذا القاموس كيفية تحليل الكلمات المركبة إلى مصطلحات فردية. |
يعمل عامل التصفية decompounder على المصطلحات التي تم إنشاؤها بواسطة أداة الترميز، لذلك يجب استخدامه مع أداة الترميز. للحصول على قائمة بأدوات الترميز المتوفرة في ميلفوس، راجع أداة الترميز القياسية وصفحاتها الشقيقة.
بعد تحديد analyzer_params ، يمكنك تطبيقها على حقل VARCHAR عند تحديد مخطط المجموعة. يسمح ذلك لـ Milvus بمعالجة النص في ذلك الحقل باستخدام المحلل المحدد من أجل ترميز وتصفية فعالة. للحصول على التفاصيل، راجع أمثلة الاستخدام.
أمثلة
قبل تطبيق تكوين المحلل على مخطط المجموعة الخاص بك، تحقق من سلوكه باستخدام الأسلوب run_analyzer.
تكوين المحلّل
analyzer_params = {
"tokenizer": "standard",
"filter":[{
"type": "decompounder", # Specifies the filter type as decompounder
"word_list": ["dampf", "schiff", "fahrt", "brot", "backen", "automat"],
}],
}
Map<String, Object> analyzerParams = new HashMap<>();
analyzerParams.put("tokenizer", "standard");
analyzerParams.put("filter",
Collections.singletonList(
new HashMap<String, Object>() {{
put("type", "decompounder");
put("word_list", Arrays.asList("dampf", "schiff", "fahrt", "brot", "backen", "automat"));
}}
)
);
// javascript
analyzerParams = map[string]any{"tokenizer": "standard",
"filter": []any{map[string]any{
"type": "decompounder",
"word_list": []string{"dampf", "schiff", "fahrt", "brot", "backen", "automat"},
}}}
# restful
analyzerParams='{
"tokenizer": "standard",
"filter": [
{
"type": "decompounder",
"word_list": [
"dampf",
"schiff",
"fahrt",
"brot",
"backen",
"automat"
]
}
]
}'
التحقق باستخدام run_analyzerCompatible with Milvus 2.5.11+
# Sample text to analyze
sample_text = "dampfschifffahrt brotbackautomat"
# Run the standard analyzer with the defined configuration
result = MilvusClient.run_analyzer(sample_text, analyzer_params)
print(result)
// java
// javascript
// go
# restful
المخرجات المتوقعة
['dampf', 'schiff', 'fahrt', 'brotbackautomat']