مقدمة عن مُرمِّز النصوص الحديث
تعتمد نماذج معالجة اللغة الطبيعية (NLP) الحديثة، مثل BERT وDistilBERT وغيرها من البنى القائمة على المحولات، بشكل كبير على الترميز الفعال. لكن غالبًا ما يواجه مطورو C++ خيارات محدودة، مثل الاعتماديات المتضخمة، أو ضعف دعم Unicode، أو عدم التوافق مع برامج الترميز القائمة على المفردات.
لهذا السبب، ابتكرتُ مُرمِّز النصوص الحديث - مُرمِّز C++ فائق السرعة، يعتمد على الرؤوس فقط، يدعم UTF-8، خالي من التبعيات، وجاهز للتعلم الآلي فورًا.
ما الذي يجعله فريدًا؟
- خالي من التبعيات - لا حاجة لتعزيز، لا وحدة تحكم مركزية، لا مكتبات خارجية.
- آمن مع UTF-8 - يتعامل بشكل صحيح مع النصوص متعددة اللغات، والرموز التعبيرية، والأحرف متعددة البايت.
- للرؤوس فقط - أضفه إلى مشروعك وابدأ.
- ترميز المفردات - حمّل ملف vocab.txt من HuggingFace وأنشئ معرفات الرموز.
- جاهز للمحول - يدعم تنسيقات
[CLS]
و[SEP]
و[PAD]
وتنسيق التسلسل.
الميزات الرئيسية
- تفرع سريع لـ ASCII مقابل Unicode باستخدام
std::string_view
- واجهة برمجة تطبيقات سلسة للتكوين:
1 TextTokenizer tokenizer; 2 tokenizer 3 .set_lowercase(true) 4 .set_split_on_punctuation(true) 5 .set_keep_punctuation(true);
- تحميل المفردات:
1 tokenizer.load_vocab("vocab.txt");
- ترميز / فك التشفير:
1 auto ids = tokenizer.encode("Hello world!"); 2 std::string decoded = tokenizer.decode(ids);
أداء
1اختبار أداء باستخدام ١٧٤٠٠٠ حرف
2
3النتائج:
4الترميز: ٢١٥٩ ميكروثانية (٢٢٠٠٠ رمز)
5الترميز: ١٩٠٠ ميكروثانية
6فك التشفير: ٤٣٠ ميكروثانية
7الوقت الإجمالي: ٤.٤٩ مللي ثانية
8معدل النقل: ٣٦.٩٧ ميجابايت/ثانية
تم اختبار الأداء على معالج Ryzen 9 5900X عند -O3 في وضع الإصدار.
كيفية الاستخدام
أضف ملف الرأس:
1#include "Modern-Text-Tokenizer.hpp"
ثم قم بالتجميع:
1g++ -std=c++17 -O3 -o tokenizer_demo main.cpp
هل تريد استخدامه مع BERT أو DistilBERT؟ حمّل ملف المفردات:
1curl -O https://huggingface.co/distilbert/distilbert-base-uncased/raw/main/vocab.txt
إصدارات CI متعددة الأنظمة الأساسية
OS | Status |
---|---|
Ubuntu | ✅ |
Windows | ✅ |
GitHub Actions |
حالات الاستخدام
- معالجة النصوص مسبقًا لنماذج التعلم الآلي بلغة C++
- معالجة اللغة الطبيعية على الجهاز (بدون تكاليف إضافية لبايثون)
- أدوات سطر أوامر عالية الأداء
- أنظمة مدمجة بدون تبعيات وقت التشغيل
جرّبه الآن
مُرمِّز النصوص الحديث جاهز لمشاريعك.
انسخ، جمّع، وزّع الرموز في ثوانٍ: مُرمِّز النصوص الحديث
التعليقات