دیتاست بیخطر باید شبیه حمله باشه
خلاصهٔ کاملتر
نویسنده که برای ترافیک خروجی ایجنتهای هوش مصنوعی قانون تشخیص مینویسه، میگه یه نرخ فالسپازیتیو (یعنی درصد مواقعی که سیستم یه چیز بیخطر رو اشتباهی حمله تشخیص میده) صفر یا نزدیک صفر بهتنهایی هیچ چیزی رو ثابت نمیکنه. اگه دیتاست تست فقط از ترافیک کاملاً واضح و ساده تشکیل شده باشه، دیتکتور راحت ازش رد میشه ولی هیچوقت تست نشده که با چیزی که شبیه حملهست چیکار میکنه.
اون این دسته از ورودیها رو «نگیتیو سخت» مینامه: چیزی که بیخطره ولی همون ویژگیهای ظاهری یه حمله رو داره. مثلاً یه کلید نمونهٔ رسمی AWS به شکل AKIAIOSFODNN7EXAMPLE که تو مستندات همهجا استفاده میشه ولی خودِ کلید واقعی نیست، یا یه لاگ خطا که توش کلمهٔ token و 401 هزار بار تکرار شده بدون اینکه هیچ رمز واقعی توش باشه. به گفتهٔ نویسنده، این نمونهها دقیقاً همونایی هستن که یه قانون عجول رو لو میدن.
این مشکل برای ایجنتهای هوش مصنوعی بدتر هم میشه، چون کار اصلی یه ایجنت جابهجا کردن متنه: مستندات میخونه، اسکنر امنیتی اجرا میکنه، کد باز میکنه. یعنی ترافیک روزمرهٔ بیخطرش پر میشه از متنهایی که شکل حمله دارن ولی نیستن. اگه قانونت رو با اینجور ورودی تست نکنی، هفتهٔ اول کارش پر میشه از هشدار الکی و اپراتورها مجبور میشن قانون رو غیرفعال کنن.
پیشنهاد نویسنده اینه که هر تیم دیتاست نگیتیو سخت خودش رو از مستندات و لاگهای واقعی خودش بسازه، بخشی از اون رو بهعنوان هولدآوت مخفی نگه داره که هیچوقت تو تنظیم قانون دیده نشه، و نرخ خطا رو بهجای یه عدد واحد، جدا برای نگیتیوهای ساده و سخت گزارش کنه؛ همراه با مشخص کردن واحد اندازهگیری (مثلاً به ازای هر درخواست یا هر نشست). اون همچنین یه دیتاست عمومی از این نمونهها به اسم agent-egress-bench روی گیتهاب منتشر کرده.
نکات کلیدی:
- «نگیتیو سخت» یعنی ورودی بیخطری که ظاهرش شبیه حملهست، مثل کلید نمونهٔ رسمی AWS به شکل AKIAIOSFODNN7EXAMPLE
- تست فقط با ترافیک واضح و ساده، نرخ فالسپازیتیو رو گمراهکننده میکنه
- ایجنتهای هوش مصنوعی چون مدام متن جابهجا میکنن، بیشتر در معرض این مشکل هستن
- توصیه شده: دیتاست نگیتیو سخت اختصاصی بسازید، یه هولدآوت مخفی نگه دارید، و نرخ خطا رو جدا برای نگیتیو ساده و سخت با واحد مشخص گزارش کنید
- نویسنده دیتاست نمونهٔ خودش به اسم agent-egress-bench رو روی گیتهاب گذاشته




