فاز 18 · درس 12

حملات خودکار و تیم قرمز در مدل‌های زبانی با الگوریتم PAIR

نوع
ساختنی
زمان
حدود 75 دقیقه
زبان‌ها
Python (stdlib, mock PAIR loop against a toy target)
پیش‌نیاز
فاز 18 · 01 (پیروی از دستورالعمل)، فاز 14 (مهندسی عامل‌ها)
یک مهره شطرنج رباتیک در حال بررسی و تغییر مسیر در ماکت مارپیچی از دیوارهای محافظ شیشه‌ای نیمه‌کدر
فهرست مطالب
  1. اهداف یادگیری
  2. صورت مسئله
  3. مفاهیم پایه
  4. الگوریتم PAIR
  5. چرا PAIR کارآمد است؟
  6. حملات خودکار مرتبط
  7. معیارهای ارزیابی JailbreakBench و HarmBench
  8. اهمیت این موضوع برای استقرارهای سال 2026
  9. جایگاه این مبحث در فاز 18
  10. استفاده در عمل
  11. تحویل پروژه
  12. تمرین‌ها
  13. اصطلاحات کلیدی
  14. برای مطالعه‌ی بیشتر

تست نفوذ و ایمن‌سازی مدل‌های زبانی (Red-Teaming) تا مدت‌ها به هنر مهندسان در نوشتن دستی پرامپت‌های متخاصم وابسته بود. با افزایش روزافزون نسخه‌های مدل‌ها و سناریوهای استقرار در سال‌های اخیر، ارزیابی دستی دیگر پاسخگوی نیاز صنعت نیست؛ برای اتکا به پایداری سامانه‌های هوش مصنوعی، به رویکردهای آماری، تکرارپذیر و خودکار نیاز داریم.

الگوریتم PAIR با فرموله‌کردن عملیات تیم قرمز در قالب یک مسئله‌ی بهینه‌سازی جعبه‌سیاه، چالش ارزیابی امنیت را حل می‌کند. این روش از یک مدل زبانی حمله‌کننده و یک مدل داور استفاده می‌کند تا تنها ظرف 10 الی 20 پرس‌وجو، پرامپت‌های jailbreak مؤثر بسازد؛ آن هم بدون نیاز به وزن‌های درونی مدل که در APIهای اختصاصی در دسترس نیستند.

در صورتی که قصد دارید پیاده‌سازی‌های تیم قرمز یا ارزیابی‌های JailbreakBench و HarmBench را روی سرویس‌های تجاری خارجی اجرا کنید، به یاد داشته باشید که دسترسی به این APIها ممکن است نیازمند حساب‌های واسط یا تغییر پیکربندی به درگاه‌های سازگار باشد. با این حال، مفاهیم و حلقه‌ی پایه‌ای این درس را می‌توان به‌راحتی روی شبیه‌سازها و اسکریپت‌های محلی آزمود.

چائو، روبی، دابریبان، حسنی، پاپاس، وانگ (NeurIPS 2023، arXiv:2310.08419). روش PAIR — یا بهینه‌سازی تکرارشونده و خودکار پرامپت (Prompt Automatic Iterative Refinement) — روش مرجع برای جیل‌بریک (شکستن قفل ایمنی) خودکار جعبه‌سیاه است. در این رویکرد، یک مدل زبانی حمله‌کننده با پرامپت سیستم تیم قرمز، به‌صورت تکرارشونده برای مدل زبانی هدف پرامپت‌های جیل‌بریک پیشنهاد می‌دهد و تلاش‌ها و پاسخ‌ها را در تاریخچه‌ی گفت‌وگوی خود به‌عنوان بازخورد درون‌متنی انباشته می‌کند. PAIR معمولاً با کمتر از 20 پرس‌وجو به نتیجه می‌رسد؛ یعنی چند مرتبه‌ی بزرگی کارآمدتر از GCG (جست‌وجوی گرادیانی در سطح توکن از زو و همکاران) عمل می‌کند، آن هم بدون این‌که نیازی به دسترسی جعبه‌سفید داشته باشد. اکنون PAIR در کنار GCG ،AutoDAN ،TAP و پرامپت متخاصم اقناعی (Persuasive Adversarial Prompt)، به یک خط مبنای استاندارد در JailbreakBench (arXiv:2404.01318) و HarmBench تبدیل شده است.

اهداف یادگیری

  • الگوریتم PAIR را تشریح کنید: پرامپت سیستم حمله‌کننده، بهینه‌سازی تکرارشونده و بازخورد درون‌متنی.
  • توضیح دهید چرا PAIR در مواجهه با مدل‌های جعبه‌سیاه، قطعاً کارآمدتر از GCG است.
  • چهار خط مبنای دیگر برای حملات خودکار (GCG ،AutoDAN ،TAP ،PAP) را نام ببرید و ویژگی متمایزکننده‌ی هر کدام را بیان کنید.
  • پروتکل‌های ارزیابی JailbreakBench و HarmBench و مفهوم «نرخ موفقیت حمله» (Attack Success Rate یا ASR) را در هر یک از آن‌ها توضیح دهید.

صورت مسئله

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

مفاهیم پایه

الگوریتم PAIR

ورودی‌ها:

  • مدل زبانی هدف T (مدلی که به آن حمله می‌کنیم).
  • مدل زبانی داور J (امتیاز می‌دهد که آیا پاسخ یک جیل‌بریک به‌حساب می‌آید یا نه).
  • مدل زبانی حمله‌کننده A (بهینه‌ساز تیم قرمز).
  • رشته‌ی هدف G: «پاسخ دادن به [دستورالعمل آسیب‌رسان]».
  • سقف بودجه‌ی K (معمولاً 20 پرس‌وجو).

حلقه، به‌ازای k در بازه‌ی 1 تا K:

  1. مدل A با هدف G و تاریخچه‌ی جفت‌های (پرامپت، پاسخ) تا این لحظه، پرامپت دریافت می‌کند.
  2. مدل A پرامپت جدید pkp_k را صادر می‌کند.
  3. پرامپت pkp_k به T ارسال می‌شود؛ پاسخ rkr_k دریافت می‌گردد.
  4. مدل J بر اساس هدف تعیین‌شده به (pk,rk)(p_k, r_k) امتیاز می‌دهد.
  5. اگر امتیاز >= آستانه باشد، متوقف شوید — جیل‌بریک پیدا شد.
  6. در غیر این صورت، (pk,rk)(p_k, r_k) به تاریخچه‌ی مدل A اضافه می‌شود؛ حلقه ادامه می‌یابد.

نتیجه‌ی تجربی (NeurIPS 2023): بیش از 50% نرخ موفقیت حمله در برابر GPT-3.5-turbo و Llama-2-7B-chat؛ میانگین پرس‌وجوها تا رسیدن به موفقیت در بازه‌ی 10 تا 20 پرس‌وجو.

چرا PAIR کارآمد است؟

روش GCG (زو و همکاران، 2023) پسوندهای توکنی متخاصم را با گرادیان جست‌وجو می‌کند؛ به همین دلیل به دسترسی جعبه‌سفید نیاز دارد و پسوندهایی ناخوانا تولید می‌کند. در مقابل، PAIR جعبه‌سیاه است و حملاتی به زبان طبیعی تولید می‌کند که بین مدل‌های مختلف قابل انتقال هستند. بازخورد درون‌متنی PAIR به حمله‌کننده اجازه می‌دهد از هر پاسخ ردشده درس بگیرد؛ در حالی که GCG معادل چنین سازوکاری را ندارد (هر به‌روزرسانی توکن جدید باید مسیر پیشرفت پیشین را از نو کشف کند).

  • روش GCG (زو و همکاران 2023، arXiv:2307.15043): جست‌وجوی گرادیانی در سطح توکن برای یافتن پسوندهای متخاصم. جعبه‌سفید، قابل انتقال، و تولیدکننده‌ی رشته‌های ناخوانا.
  • روش AutoDAN (لیو و همکاران، 2023): جست‌وجوی تکاملی روی پرامپت‌ها با هدایت یک هدف سلسله‌مراتبی.
  • روش TAP (مهروترا و همکاران، 2024): درخت حملات همراه با هرس کردن — منشعب کردن چند مسیر پیش‌روی شبیه‌سازی‌شده به سبک PAIR در branchهای مختلف.
  • روش PAP (زنگ و همکاران، 2024): پرامپت‌های متخاصم اقناعی — پیاده‌سازی تکنیک‌های اقناع انسانی در قالب پرامپت.

معیارهای ارزیابی JailbreakBench و HarmBench

هر دو بنچمارک (2024) فرایند ارزیابی را استاندارد کرده‌اند:

  • بنچمارک JailbreakBench (arXiv:2404.01318): شامل 100 رفتار آسیب‌رسان در 10 دسته‌بندی از خط‌مشی OpenAI. نرخ موفقیت حمله سنجه‌ی اصلی آن است. به یک داور (GPT-4-turbo ،Llama Guard یا StrongREJECT) نیاز دارد.
  • بنچمارک HarmBench (مازیکا و همکاران، 2024): شامل 510 رفتار در 7 دسته‌بندی، همراه با آزمون‌های آسیب معنایی و کارکردی. مقایسه‌ی 18 حمله در برابر 33 مدل.

معمولاً نرخ موفقیت حمله با یک سقف بودجه‌ی ثابت برای پرس‌وجوها گزارش می‌شود. برای مقایسه‌ی حملات باید بودجه‌ها یکسان باشند؛ نرخ موفقیت حمله 90% با 200 پرس‌وجو اصلاً با نرخ 85% با 20 پرس‌وجو قابل مقایسه نیست.

اهمیت این موضوع برای استقرارهای سال 2026

امروزه تمام آزمایشگاه‌های پیشرو پیش از انتشار مدل‌ها، حملات PAIR و TAP را روی مدل‌های محیط عملیاتی (پروداکشن) اجرا می‌کنند. نمودارهای تغییرات نرخ موفقیت حمله در شناسنامه‌ی مدل (Model Card) (درس 26) و ضمایم پرونده‌های ایمنی (درس 18) درج می‌شوند. این حمله دیگر یک روش نامتعارف نیست — بلکه بخشی از زیرساخت استاندارد محسوب می‌شود.

جایگاه این مبحث در فاز 18

درس 12 مبانی حملات خودکار است. درس 13 (Many-Shot Jailbreaking) سوءاستفاده از طول متن را به‌عنوان مکمل بررسی می‌کند. درس 14 (هنر اسکی / بصری) یک حمله‌ی مبتنی بر کدگذاری است. درس 15 (تزریق غیرمستقیم پرامپت) سطح حمله‌ی اصلی در محیط‌های عملیاتی سال 2026 را بررسی می‌کند. درس 16 نیز به ابزارهای دفاعی متناظر (Llama Guard ،Garak ،PyRIT) می‌پردازد.

PAIRتیم قرمز خودکار با جعبه‌سیاه
PAIRPrompt Automatic Iterative Refinement runs a red-team attacker LLM against a black-box target. Each cycle the attacker proposes a jailbreak, reads the target's response as in-context feedback, and refines; a judge model scores whether the response constitutes a break. The query ticks fill until one lands, typically within 20 attempts, which is orders of magnitude cheaper than token-level gradient search like GCG and needs no white-box access.LLM مهاجمحفظ تاریخچه چتLLM هدفجعبه‌سیاهجیل‌بریک بهبودیافتهپاسخ به‌منزله بازخوردپرس‌وجوداور: امتیاز 10PAIR معمولاً زیر 20 پرس‌وجو هدف را می‌شکند؛ بدون نیاز به گرادیانخط مبنا در JailbreakBench و HarmBench کنار GCG، AutoDAN و TAP
روش Prompt Automatic Iterative Refinement یک مدل زبانی مهاجم تیم قرمز را در برابر یک هدف جعبه‌سیاه اجرا می‌کند. در هر چرخه، مهاجم یک جیل‌بریک پیشنهاد می‌دهد، پاسخ هدف را به‌عنوان بازخورد درون‌زمینه می‌خواند و آن را بهبود می‌بخشد؛ یک مدل داور نیز امتیاز می‌دهد که آیا پاسخ به منزله‌ی شکستن قفل است یا خیر. نشانگرهای پرس‌وجو تا زمان موفقیت یکی از آن‌ها پر می‌شوند که معمولاً ظرف 20 تلاش رخ می‌دهد؛ روشی که مراتب ارزان‌تر از جستجوی گرادیانی در سطح توکن مانند GCG است و به دسترسی جعبه‌سفید نیازی ندارد.

استفاده در عمل

در فایل code/main.py یک حلقه‌ی آزمایشی از PAIR پیاده‌سازی شده است. مدل هدف، یک دسته‌بند فرضی است که پرامپت‌های آسیب‌رسان «آشکار» را رد می‌کند (فیلتر کلیدواژه‌ای). حمله‌کننده یک بهینه‌ساز قاعده‌محور است که تکنیک‌های بازنویسی، قالب‌بندی در نقش و کدگذاری را امتحان می‌کند. داور هم به پاسخ‌ها امتیاز می‌دهد. خواهید دید که حمله‌کننده ظرف حدود 5 تا 15 تکرار در برابر فیلتر کلیدواژه‌ای موفق می‌شود، اما جلوی فیلتر معنایی شکست می‌خورد.

تحویل پروژه

خروجی این درس فایل outputs/skill-attack-audit.md خواهد بود. این گزارش ممیزی با دریافت یک گزارش ارزیابی تیم قرمز، موارد زیر را بررسی می‌کند: چه حملاتی اجرا شده‌اند (PAIR ،GCG ،TAP ،AutoDAN ،PAP)، هر کدام با چه بودجه‌ای، با چه داوری و روی کدام مجموعه‌رفتار آسیب‌رسان (JailbreakBench ،HarmBench یا مجموعه‌های داخلی).

تمرین‌ها

  1. اسکریپت code/main.py را اجرا کنید. میانگین پرس‌وجوها تا موفقیت را برای سه استراتژی پیش‌فرض حمله‌کننده اندازه بگیرید. توضیح دهید هر استراتژی از کدام فرضِ دفاعیِ مدل هدف سوءاستفاده می‌کند.

  2. استراتژی چهارمی برای حمله‌کننده پیاده‌سازی کنید (مثلاً ترجمه به زبانی دیگر یا انکودینگ base64). میانگین جدید پرس‌وجوها تا موفقیت را در برابر هدف با فیلتر کلیدواژه‌ای و هدف با فیلتر معنایی گزارش دهید.

  3. شکل 5 از مقاله‌ی چائو و همکاران (2023) (مقایسه‌ی PAIR و GCG) را مطالعه کنید. دو سناریو را شرح دهید که در آن‌ها با وجود مزیت کارآمدی PAIR، استفاده از GCG ترجیح داده می‌شود.

  4. بنچمارک JailbreakBench نرخ موفقیت حمله را در برابر یک مجموعه‌هدف ثابت گزارش می‌کند. سنجه‌ی جدیدی طراحی کنید که تنوع حملات (واریانس در پرامپت‌های موفق) را بسنجد. توضیح دهید چرا تنوع حملات برای ارزیابی روش‌های دفاعی اهمیت دارد.

  5. روش TAP (مهروترا، 2024) با افزودن انشعاب به branchها و هرس کردن، PAIR را گسترش می‌دهد. طرح اولیه‌ای از یک نسخه‌ی توسعه‌یافته به سبک TAP برای code/main.py بنویسید و موازنه‌ی بین هزینه‌ی محاسباتی و نرخ موفقیت را شرح دهید.

اصطلاحات کلیدی

اصطلاح اصطلاح رایج معنای دقیق فنی
PAIR «جیل‌بریک خودکار» بهینه‌سازی تکرارشونده و خودکار پرامپت؛ حلقه‌ی مدل حمله‌کننده + مدل داور
GCG «جیل‌بریک گرادیانی» جست‌وجوی گرادیانی در سطح توکن به‌صورت جعبه‌سفید برای یافتن پسوندهای متخاصم
نرخ موفقیت حمله (ASR) «درصد جیل‌بریک در k پرس‌وجو» سنجه‌ی اصلی؛ باید حتماً همراه با بودجه‌ی پرس‌وجو و هویت داور گزارش شود
Judge LLM «امتیازدهنده» مدل زبانی که ارزیابی می‌کند آیا پاسخ تولیدشده هدف آسیب‌رسان را برآورده کرده است یا خیر
JailbreakBench «ارزیابی» مجموعه‌ی استانداردی از رفتارهای آسیب‌رسان با دسته‌بندی‌های مشخص‌شده
HarmBench «بنچمارک جامع‌تر» ارزیابی 510 رفتار با آزمون‌های آسیب کارکردی و معنایی
TAP «درخت حملات» روش PAIR همراه با انشعاب و هرس کردن؛ نرخ موفقیت حمله بالاتر در ازای توان پردازشی بیشتر

برای مطالعه‌ی بیشتر

خودآزمایی

به سؤال‌ها جواب بدهید تا ببینید چقدر از درس در ذهنتان مانده است.

  1. پیش از درسچرا ارزیابی مدل‌های مرزی با تیم قرمز دستی ناکافی است؟
  2. حین درسسرواژه PAIR مخفف چیست و چه کاری انجام می‌دهد؟
  3. حین درسچرا PAIR برای یک هدف جعبه‌سیاه کارآمدتر از GCG است؟
  4. حین درسچرا نرخ موفقیت حمله (ASR) باید هم با بودجه پرس‌وجو و هم با هویت مدل داور گزارش شود؟
  5. پس از درسکدام‌یک از این حملات خودکار را می‌توان به بهترین شکل به‌صورت «درخت حملات همراه با هرس کردن» توصیف کرد؟
  6. پس از درسکدام بنچمارک استاندارد از 510 رفتار در 7 دسته‌بندی با آزمون‌های آسیب معنایی و کارکردی استفاده می‌کند؟

سؤالات متداول

الگوریتم PAIR چگونه کار می‌کند؟

در الگوریتم PAIR، یک مدل حمله‌کننده با دریافت تاریخچه‌ی پرامپت‌ها و پاسخ‌های قبلی (بازخورد درون‌متنی)، پرامپت جدیدی تولید می‌کند؛ این پرامپت به مدل هدف ارسال و خروجی آن توسط یک مدل داور امتیازدهی می‌شود تا زمانی که حمله موفق شود یا بودجه پرس‌وجو پایان یابد.

چرا PAIR نسبت به روش GCG کارآمدتر است؟

روش GCG نیازمند دسترسی جعبه‌سفید به گرادیان‌های مدل و تولید رشته‌های ناخوانا است، در حالی که PAIR به دسترسی درونی نیاز ندارد، حملات خوانا به زبان طبیعی می‌سازد و به دلیل یادگیری درون‌متنی، بسیار سریع‌تر (معمولاً زیر 20 پرس‌وجو) به نتیجه می‌رسد.

معیار سنجش ASR در بنچمارک‌های JailbreakBench و HarmBench چیست؟

نرخ موفقیت حمله (ASR) نشان‌دهنده‌ی درصد حملات موفق است و حتماً باید بر اساس بودجه‌ی معینی از تعداد پرس‌وجوها (Query Budget) و با ذکر دقیق مدل داور (Judge) گزارش شود.

ما رو توی گوگل بیشتر ببین

با افزودن نکست ادمین به «منابع ترجیحی» گوگل، درس‌ها و مطالب ما را در بخش اخبار برتر جستجو بیشتر می‌بینید.