חדש Key אחד לכל המודלים, עם הערכת מחיר לפני כל קריאה. יוצרים Key

GPT
S

SPML_Chatbot_Prompt_Injection

קוד פתוח

reshabhsmit2024-03-31

  • prompt-injection
  • prompt-attack
  • llm-safety
  • llm-defense
  • system-prompt

המאגר מרכז זוגות של הנחיות מערכת והודעות משתמש שבודקות הזרקות תוכן מתוחכמות לצ'אטבוטים. הוא מתאים במיוחד למי שרוצה לבחון הגנות מול מתקפות שמנסות לשבור חוקי שיחה ספציפיים.

  • 899הורדות בחודש
  • 30לייקים

מה זה

הנתונים מורכבים מזוגות של הנחיית מערכת והודעת משתמש תואמת. היוצרים לקחו הנחיות מערכת אמיתיות שדלפו מצ'אטבוטים מוכרים, השתמשו ב־GPT-4 כדי להרחיב אותן לנושאים נוספים, ואז חילצו מכל הנחיה את החוקים שהיא מנסה לאכוף. כדי לייצר מתקפות, הם הפכו את החוקים האלה וביקשו מהמודל לנסח פניות משתמש שמנסות לגרום לצ'אטבוט להפר אותם בכוונה, תוך שילוב תבניות מתקפה ממקורות חיצוניים.

כל שורה בטבלה מכילה חמישה שדות מרכזיים: הנחיית המערכת, קלט המשתמש, תגית בינארית שמציינת אם מדובר בניסיון הזרקה, מדד עוצמה שמייצג כמה חוקים הופרו במקביל, ומקור טכניקת התקיפה. הדגש כאן הוא על בדיקת הגבולות של ההוראות שהוגדרו לצ'אטבוט ולא על חסימת מילים גסות או פריצות כלליות.

מתאים ל

  • הערכת עמידות מערכות

    בדיקת היכולת של צ'אטבוט להיצמד להנחיות המערכת שלו מול ניסיונות מתוחכמים של משתמשים לשבור את הכללים.

  • מחקר אבטחת מודלים

    ניתוח תיאורטי של האופן שבו הנחיות משתמש מפרקות הגבלות סמנטיות שהוגדרו מראש בהוראות המערכת.

  • בנצ'מרק למסווגי תוכן

    מדידת ביצועים של מסווגי הגנה שמקבלים גם את הנחיית המערכת וגם את קלט המשתמש כדי לזהות סתירות ביניהם.

איפה זה נופל

היוצרים מזהירים במפורש לא לאמן על הנתונים האלה מסווגי תקיפות. ההזרקות פה מבוססות על שבירת חוקים ספציפיים מתוך הנחיית המערכת, כך שהן עדינות מאוד ולא בהכרח ייראו זדוניות למודל שלומד רק קלטי משתמש. בנוסף, כל הטקסטים נוצרו מלאכותית באנגלית סביב מודלים של GPT-4, אין פה עברית, ומערכי תקיפה מבוססי TensorTrust הושמטו בגלל בעיות רישוי.

שאלות
נפוצות

האם מומלץ לאמן על הדאטהסט הזה מודל שמזהה הזרקות פקודה?

לא. מחברי המאגר מציינים במפורש שהדאטהסט אינו מתאים לאימון מודלים כאלה, כיוון שההזרקות בו עדינות ומסתמכות על הפרת הנחיות מערכת ספציפיות ולא על דפוסי תקיפה גלובליים. מודל שיאומן עליו יתקשה להכליל מול מגוון טכניקות תקיפה אמיתיות שמופיעות בעולם האמיתי.

האם יש בדאטהסט תמיכה בעברית?

המאגר מוגדר ומכיל טקסטים באנגלית בלבד. כל הנחיות המערכת ופניות המשתמש נוצרו וסונתזו באנגלית באמצעות מודלים שונים. אם המערכת שלכם עובדת בעברית, תצטרכו לתרגם את הנתונים או להשתמש בשיטת היצירה שלהם כדי לבנות דוגמאות חדשות.

מאיפה הגיעו הנתונים שנמצאים בקובץ?

הבסיס הוא הנחיות מערכת אמיתיות שדלפו מצ'אטבוטים מסחריים מבוססי שפה. מתוכן הפיקו חוקי התנהגות, ואז השתמשו ב־GPT-4 כדי להרחיב את הנושאים ולייצר תקיפות שמנסות לעקוף את החוקים האלה יחד עם תבניות ממקורות כמו Gandalf.

האם מותר להשתמש במאגר לפיתוח מוצר מסחרי?

כן, הרישיון המדווח הוא רישיון MIT שמאפשר שימוש מסחרי חופשי לחלוטין. התנאי היחיד הוא שמירת הצהרת זכויות היוצרים והרישיון המקורי בקוד או בתוצר שלכם. אין דרישה לפתוח את הקוד של מודלים או מערכות שמפותחות בעזרתו.

איך טוענים

טוענים את הקובץ ישירות דרך ספריית datasets או כקובץ csv יחיד בשם spml_prompt_injection.csv מתוך המאגר. המאגר ציבורי ואינו דורש אישור גישה מראש. השדות שהכי חשוב לבדוק בטעינה הם System Prompt מול User Prompt, יחד עם עמודת הלייבל Prompt Injection כדי לפצל בין תעבורה תמימה לנסיונות עקיפה.

from datasets import load_dataset

ds = load_dataset("reshabhs/SPML_Chatbot_Prompt_Injection")

הרישיון

המאגר מופץ תחת רישיון MIT. מותר להשתמש בו לצרכים מסחריים ומחקריים, לשנות אותו ולשלב אותו בתוכנה קניינית, כל עוד שומרים על הודעת זכויות היוצרים המקורית.

  • שימוש מסחרי
  • שינוי הקוד
  • הפצה מחדש

הרישיון המלא ב־Hugging Face ↗