تعزيز إمكانيات البحث عن الرسائل الصينية في تيليجرام
الخلاصة
لتحسين فعالية البحث عن الرسائل الصينية في تيليجرام، يمكن تحقيق ذلك من خلال إدراج فواصل غير مرئية يدوياً أو تطوير أداة تجزئة كلمات (Tokenizer) مخصصة. بالإضافة إلى ذلك، فإن الاستفادة من تقنيات الذكاء الاصطناعي للبحث الدلالي يمكن أن يحسن دقة البحث بشكل كبير.
النقاط الرئيسية
- قاعدة بيانات تيليجرام: يستخدم تيليجرام SQLite كقاعدة بيانات له.
- آلية البحث عن النص الكامل: تقوم وظيفة البحث عن النص الكامل في تيليجرام بتقطيع السلاسل النصية إلى عبارات قصيرة من خلال أداة تجزئة الكلمات (Tokenizer)، وتوليد قيم التجزئة (hash values)، ثم مقارنتها بجدول التجزئة (hash table) عند البحث.
- مُولِّد الرموز (Token Generator): يعتمد مولد الرموز على الفواصل والمحددات لتقطيع السلاسل النصية.
- تعريف الرموز (Tokens): المحتوى خارج الفواصل والمحددات يُعتبر "رمزاً" (Token)، ويتضمن ثلاثة أنواع: أحرف كبيرة (*) وأرقام (N) وأحرف أخرى (Co).
- معالجة أحرف CJK: أحرف اللغة الصينية واليابانية والكورية (CJK) تنتمي إلى مجموعة أحرف Unicode CJK، ويتم التعرف على معظمها كرموز (tokens).
نظراً لعدم وجود فواصل بين الأحرف الصينية (Han characters)، يقوم تيليجرام بمعالجة سلسلة الأحرف الصينية بالكامل باستخدام التجزئة (hashing)، مما يؤدي إلى ضعف فعالية البحث. تتناول هذه المقالة بالتفصيل من منظور برمجي القيود المفروضة على البحث عن الرسائل الصينية في تيليجرام.
اقتراحات التحسين
- إدراج فواصل يدوياً: إضافة فواصل غير مرئية يدوياً بين الأحرف الصينية لتحسين فعالية البحث.
- تخصيص أداة تجزئة الكلمات (Tokenizer): تطوير أداة تجزئة كلمات (Tokenizer) مخصصة وتعديل عميل تيليجرام لتعزيز وظيفة البحث.
البحث الدلالي بالذكاء الاصطناعي
بخلاف طرق البحث التقليدية، يوفر إدخال الذكاء الاصطناعي حلاً أفضل للبحث الدلالي. يستخدم مشروع telegram-search نماذج التضمين (embedding models)، مما يمكّن المستخدمين من العثور على المحتوى المطلوب حتى بدون كلمات مفتاحية مطابقة بدقة. على سبيل المثال، عند إدخال "الشخص الذي تناول العشاء الليلة الماضية" يمكن البحث عن "الرجل الذي تناول العشاء معنا الليلة الماضية".
من خلال الطرق المذكورة أعلاه، يمكن تحسين تجربة البحث عن الرسائل الصينية في تيليجرام بشكل كبير.