دوال معالجة اللغة الطبيعية
أُضيف في: v22.2.0
يكتشف مجموعة المحارف لسلسلة إدخال غير مُرمَّزة بتنسيق UTF8.
هذه الدالة تجريبية، وقد تتغير بطرق غير متوقعة وغير متوافقة مع الإصدارات السابقة في الإصدارات المستقبلية.
اضبط allow_experimental_nlp_functions = 1 لتمكينها.
البنية
المعاملات
s — النص المراد تحليله. String
القيمة المُعادة
يعيد سلسلة نصية تحتوي على رمز مجموعة المحارف المُكتشفة String
أمثلة
الاستخدام الأساسي
SELECT detectCharset('Ich bleibe für ein paar Tage.')
أُضيفت في: v22.2.0
تكتشف هذه الدالة لغة سلسلة الإدخال المرمّزة بترميز UTF8.
تستخدم الدالة مكتبة CLD2 لاكتشاف اللغة، وتُرجع رمز لغة ISO مكوّنًا من حرفين.
كلما كان الإدخال أطول، زادت دقة اكتشاف اللغة.
هذه الدالة تجريبية، وقد تتغير مستقبلاً بطرق غير متوقعة وغير متوافقة مع الإصدارات السابقة.
اضبط allow_experimental_nlp_functions = 1 لتمكينها.
البنية
الوسيطات
text_to_be_analyzed — النص المراد تحليله. String
القيمة المُعادة
تُرجع رمز ISO المكوَّن من حرفين للغة المكتشفة. ومن النتائج الأخرى المحتملة: un = غير معروف، وتعذّر اكتشاف أي لغة، other = اللغة المكتشفة لا تملك رمزًا من حرفين. String
أمثلة
نص متعدد اللغات
SELECT detectLanguage('Je pense que je ne parviendrai jamais à parler français comme un natif. Where there\'s a will, there\'s a way.')
تم تقديمها في: v22.2.0
تشبه الدالة detectLanguage، لكن detectLanguageMixed تُرجع Map من رموز اللغات المكوّنة من حرفين، تكون مرتبطة بالنسبة المئوية لكل لغة في النص.
هذه الدالة تجريبية، وقد تتغير في الإصدارات المستقبلية بطرق غير متوقعة وغير متوافقة مع الإصدارات السابقة.
اضبط allow_experimental_nlp_functions = 1 لتمكينها.
البنية
المعاملات
القيمة المُعادة
يعيد خريطةً بمفاتيح تمثل رموز ISO مكوّنة من حرفين، وبقيمٍ مقابلة تمثل النسبة المئوية للنص المكتشف لكل لغة Map(String, Float32)
أمثلة
لغات مختلطة
SELECT detectLanguageMixed('二兎を追う者は一兎をも得ず二兎を追う者は一兎をも得ず A vaincre sans peril, on triomphe sans gloire.')
قُدِّمت في: v22.2.0
تشبه الدالة detectLanguage، باستثناء أن الدالة detectLanguageUnknown تعمل مع السلاسل النصية غير المشفّرة بترميز UTF8.
يُفضَّل استخدام هذا الإصدار عندما تكون مجموعة المحارف لديك UTF-16 أو UTF-32.
هذه الدالة تجريبية وقد تتغير في الإصدارات المستقبلية بطرق غير متوقعة وغير متوافقة مع الإصدارات السابقة.
عيّن allow_experimental_nlp_functions = 1 لتمكينها.
البنية
detectLanguageUnknown('s')
الوسائط
s — النص المطلوب تحليله. String
القيمة المُعادة
يعيد رمز ISO المكوّن من حرفين للغة المكتشفة. النتائج الأخرى المحتملة: un = غير معروف، وتعني تعذّر اكتشاف أي لغة، other = اللغة المكتشفة ليس لها رمز مكوّن من حرفين. String
أمثلة
الاستخدام الأساسي
SELECT detectLanguageUnknown('Ich bleibe für ein paar Tage.')
أُضيف في: v22.2.0
يحدّد الطابع العاطفي لبيانات النص المقدَّمة.
قيدهذه الدالة محدودة في شكلها الحالي، إذ تستخدم القاموس العاطفي المضمَّن ولا تعمل إلا مع اللغة الروسية.
هذه الدالة تجريبية، وقد تتغير بطرق غير متوافقة مع الإصدارات السابقة وبشكل غير متوقع في الإصدارات المستقبلية.
اضبط allow_experimental_nlp_functions = 1 لتمكينها.
الصياغة
الوسائط
s — النص المراد تحليله. String
القيمة المُعادة
يعيد متوسط قيمة المشاعر للكلمات في النص Float32
أمثلة
تحليل المشاعر باللغة الروسية
SELECT
detectTonality('Шарик - хороший пёс'),
detectTonality('Шарик - пёс'),
detectTonality('Шарик - плохой пёс')
أُضيفت في: v21.9.0
تُجري إرجاع الكلمة المعطاة إلى أصلها المعجمي.
تتطلب هذه الدالة قواميس للعمل، ويمكن الحصول عليها من github.
لمزيد من التفاصيل حول تحميل قاموس من ملف محلي، راجع صفحة “تعريف القواميس”.
هذه الدالة تجريبية وقد تتغير بطرق غير متوقعة وغير متوافقة مع الإصدارات السابقة في الإصدارات المستقبلية.
اضبط allow_experimental_nlp_functions = 1 لتمكينها.
الصيغة
المعاملات
lang — اللغة التي ستُطبَّق قواعدها. String
word — كلمة مكتوبة بأحرف صغيرة يلزم إرجاعها إلى أصلها الصرفي. String
القيمة المُعادة
يعيد الصيغة المُرجَعة إلى أصلها الصرفي للكلمة. String
أمثلة
إرجاع الكلمات الإنجليزية إلى أصلها الصرفي
SELECT lemmatize('en', 'wolves')
استُحدثت في: v21.9.0
تُجري استخراج الجذر لكلمة أو Array من الكلمات باستخدام خوارزميات Snowball.
يجب أن تكون كل سلسلة إدخال كلمة واحدة بحروف صغيرة فقط — فالسلاسل التي تحتوي على مسافات بيضاء تؤدي إلى حدوث Exception.
يؤدي تمرير أحرف كبيرة إلى نتائج undefined.
تعيد String للمدخلات scalar (بما في ذلك FixedString) وArray(String) لمدخلات المصفوفات.
تتوفّر أيضًا متغيرات Nullable وLowCardinality من String وFixedString.
البنية
الوسيطات
القيمة المعادة
الصيغة المُجذَّرة للكلمة (String)، أو مصفوفة من الكلمات المُجذَّرة (Array(String)). String أو Array(String)
أمثلة
تجذير كلمة واحدة
SELECT stem('blessing', 'en') AS res
اختزال مصفوفة من الكلمات إلى جذورها
SELECT stem(['blessing', 'disguise'], 'en') AS res
تجذير قيمة FixedString
SELECT stem(toFixedString('blessing', 10), 'en') AS res
استخراج جذر كلمة من النوع Nullable
SELECT stem(toNullable('blessing'), 'en') AS res
أُضيفت في: v21.9.0
تعثر على مرادفات لكلمة معيّنة.
هناك نوعان من امتدادات المرادفات:
مع نوع الامتداد plain، تحتاج إلى توفير مسار إلى ملف نصي بسيط، حيث يمثّل كل سطر مجموعة معيّنة من المرادفات.
يجب فصل الكلمات في هذا السطر بمسافات أو بمحارف جدولة.
مع نوع الامتداد wordnet، تحتاج إلى توفير مسار إلى دليل يحتوي على معجم المرادفات WordNet.
يجب أن يحتوي معجم المرادفات على فهرس معاني WordNet.
هذه الدالة تجريبية وقد تتغير بطرق غير متوقعة وغير متوافقة مع الإصدارات السابقة في الإصدارات المستقبلية.
اضبط allow_experimental_nlp_functions = 1 لتمكينها.
البنية
الوسيطات
ext_name — اسم الامتداد الذي سيُجرى البحث فيه. String
word — الكلمة المطلوب البحث عنها في الامتداد. String
القيمة المعادة
تُرجع مصفوفة من المرادفات للكلمة المحددة. Array(String)
أمثلة
العثور على المرادفات
SELECT synonyms('list', 'important')
['important','big','critical','crucial']