آسیب‌پذیری BPE یکی از بردارهای حمله مهم در سیستم‌های پردازش زبان طبیعی است. پیاده‌سازی‌ها و تنظیمات الگوریتم‌های توکن‌سازی زیرواژه‌ای مانند BPE می‌توانند به مهاجمان امکان دهند فیلترها را دور بزنند، ورودی‌های خراب تولید کنند یا رفتار مدل را به‌طور هدفمند تغییر دهند.

روش‌های توکن‌سازی و اهمیت تفاوت‌ها

توکن‌سازی کلمه‌ای هر کلمه را به یک واحد مستقل تبدیل می‌کند؛ رویکردی ساده اما در مقیاس مدل‌های بزرگ نامناسب به‌خاطر افزایش نمایی اندازهٔ واژگان و مشکل کلمات دیده‌نشده. توکن‌سازی کاراکتری همه‌چیز را به کاراکتر تبدیل می‌کند؛ مقاوم در برابر کلمات جدید اما طول دنباله را افزایش می‌دهد و یادگیری الگوهای بلندمدت را دشوارتر می‌کند. توکن‌سازی زیرواژه‌ای مانند BPE، WordPiece و Unigram میان این دو قرار می‌گیرد و توازن بین اندازهٔ واژگان و طول توکن‌ها را برقرار می‌سازد.

مرزهای توکن میان توکنایزرها متفاوت است؛ یک رشتهٔ یکسان می‌تواند به دنباله‌های عددی کاملاً متفاوت تبدیل شود که همین اختلاف پایهٔ بسیاری از حملات و رفتارهای غیرمنتظره است.

BPE چگونه کار می‌کند و دلایل محبوبیتش

الگوریتم Byte Pair Encoding مبتنی بر یک روش فشرده‌سازی تاریخی است و در کاربردهای NLP توسط Sennrich و همکاران در 2016 رواج یافت (مقالهٔ اصلی). الگوریتم از مجموعهٔ کاراکترها شروع می‌کند و پرتکرارترین جفت‌های مجاور را به‌تدریج ادغام می‌کند تا الگوهای پرتکرار به تک‌توکن تبدیل شوند؛ کلمات نادر به چند زیرواژه تقسیم می‌شوند.

ویژگی‌های کلیدی BPE

  • داده‌محور و سریع در آموزش؛
  • حریصانه و قطعی در تولید قوانین ادغام؛
  • کاهش طول دنباله نسبت به توکنایزرهای کاراکتری؛
  • گسترده در اجرا؛ بسیاری از مدل‌های مطرح از جمله نسخه‌های اولیهٔ GPT و RoBERTa از واریانت‌های BPE استفاده کرده‌اند.

BPE سطح بایت: مزایا و نقاط ضعف

در BPE سطح بایت ادغام‌ها روی بایت‌های رمزگذاری‌شده (مثلاً UTF-8) انجام می‌شود تا توکنایزری زبان‌بی‌طرف و مقاوم در برابر ورودی‌های چندزبانه یا باینری فراهم آید. این رویکرد پوشش جامع کاراکترها را به‌همراه دارد اما نواقص زیر را نیز ایجاد می‌کند:

  • ادغام‌های بایتی ممکن است مرز کاراکترهای UTF-8 را بشکند و توکن‌هایی بسازد که با سطح معناشناسی کاراکتر همراستا نیستند، به‌ویژه در متون چندزبانه.
  • ورودی‌هایی که شامل بایت‌های ناقص یا کاراکترهای کنترل هستند می‌توانند در فرایند رمزگذاری/رمزگشایی توکن‌های نامعتبر تولید کنند و رفتار مدل را تغییر دهند.

نمونه توکن‌سازی زیرواژه‌ای و مرزهای بایت

آسیب‌پذیری‌های عملی مرتبط با BPE و توکن‌سازی زیرواژه‌ای

تحقیقات و تحلیل‌های امنیتی نشان داده‌اند چند کلاس حمله و خطا مستقیماً با خصیصه‌های BPE و پیاده‌سازی‌های سطح بایت مرتبط‌اند:

  • دورزدن فیلترها با تغییر مرزهای توکن: وارد کردن فضاها، کاراکترهای صفر-عرض یا تقسیم غیرمعمول کلمات می‌تواند توکنایزینگ متفاوتی تولید کند و به این ترتیب قوانین فیلترینگ یا تشخیص عبارات خطرناک را دور بزند.
  • ساخت رشته‌های بایتی مخدوش: درج توالی‌های بایتی که مرزهای UTF-8 را جابه‌جا می‌کنند ممکن است خطاهای رمزگشایی یا توکن‌های نامعتبر ایجاد کند و مدل را به خروجی‌های نامنتظره سوق دهد.
  • تزریق دستور و هدایت مدل: طراحی دقیق توکن‌ها می‌تواند مدل را به دنبال‌روی دستورات یا تولید خروجی خاص هدایت کند، خصوصاً وقتی توکن‌سازیِ ورودی واقعی با توکن‌سازیِ پردازش‌شده تفاوت داشته باشد.
  • سم‌زدن دادهٔ آموزشی (data poisoning): ورود داده‌های آلوده با توکنایزرهای متفاوت به چرخهٔ آموزش می‌تواند قوانین ادغامِ BPE را دگرگون کند و مدل را به سمت خطاها یا دورزدنِ فیلترها سوق دهد.
  • کاهش عملکرد و افزایش هذیان‌سازی: ناسازگاری توکن‌ها میان فاز آموزش و استنتاج منجر به از دست رفتن نماینده‌های معنایی و افزایش خروجی‌های نامعتبر می‌شود.

مراجع و منابع پیشنهادی

منابع فنی و راهنمایی‌های عملی مفید:

راهکارهای عملی برای کاهش ریسک

اقدامات زیر به کاهش سریع و مؤثر تهدیدهای مرتبط با آسیب‌پذیری BPE کمک می‌کنند:

  • نرمال‌سازی یونیکد: اعمال فرم‌های NFC یا NFKC قبل از توکن‌سازی برای کاهش اختلافات مرزی و ترجمهٔ معادل‌های کاراکتری.
  • حذف یا فیلتر کاراکترهای کنترل و صفر-عرض پیش از توکن‌سازی—یک گام ساده اما مؤثر برای جلوگیری از تکنیک‌های دورزدن.
  • یکپارچگی توکنایزر بین آموزش و استنتاج: استفاده از همان پیاده‌سازی و قفل‌کردن نسخهٔ قوانین ادغام برای جلوگیری از ناسازگاری.
  • لاگ و پایش توکن‌ها: ذخیرهٔ رشته‌های توکن‌شده و پایش تغییرات غیرمعمول در توزیع طول یا الگوها برای شناسایی حملات ورودی-محور.
  • ترکیب روش‌ها در محیط‌های حساس: استفاده از بررسی‌های هم‌زمان سطح کاراکتر، سطح بایت و روش‌های احتمالاتی مانند Unigram برای افزایش مقاومت.
  • آزمایش خصمانه و آموزش مقاوم: افزودن نمونه‌های دستکاری‌شده و خصمانه در فرایند آموزش و انجام تست‌های نفوذ برای کاهش واکنش‌های ناخواسته.

چک‌لیست فوری برای توسعه‌دهندگان

  • نرمال‌سازی یونیکد در ورودی‌ها فعال باشد.
  • نسخهٔ توکنایزر در کنترل منبع ثبت و همسان در تمام محیط‌ها استفاده شود.
  • فیلتر کاراکترهای کنترل و صفر-عرض پیش از توکن‌سازی اجرا شود.
  • پایش و آلارم‌گذاری روی الگوهای توکن ایجاد شود تا تغییرات غیرطبیعی سریعاً تشخیص داده شوند.

نمونه حمله بر مبنای توکن‌سازی و راهکارهای دفاعی

گام‌های بعدی برای پژوهشگران و مهندسان

توکن‌سازی هم‌اکنون بخشی از سطح تهدید محسوب می‌شود و باید در طراحی سیستم‌ها، ممیزی‌های امنیتی و مطالعات آسیب‌پذیری لحاظ شود. پژوهش‌های بعدی باید به‌صورت سیستماتیک تفاوت‌های رفتاری میان روش‌های زیرواژه‌ای را بررسی کنند و ابزارهای تست اتوماتیک برای یافتن نقاط شکست توکنایزرها توسعه دهند تا مدل‌ها در برابر ورودی‌های بدخواهانه مقاوم‌تر شوند.