היבטי אבטחה בתשתית Azure Open AI
אם הייתם בחלל לאחרונה או באיזה מערה אז ככל הנראה פספסתם את עליית הבינה המלאכותית הגנרטיבית, החל מהפלטפורמה הנפוצה של ChatGPT, דרך בארד של גוגל ועד היכולות של Azure Open AI וטכנולוגיות רבות ומגוונות. נכון לתקופה זאת, ישנו בעולם בכל רגע נתון כאלה המדברים על בינה מלאכותית גנרטיבית על היבטיה השונים, ונראה שכולם אחוזי תזזית כאשר זה מגיע לנושא הנ״ל, החל מהשדרה הניהולית ועד אחרון העובדים.
אין ספק שבינה מלאכותית גנרטיבית היא נושא מעניין וכזה שעוד יעשה איזה סדר עולמי בשנים הבאות ולאחריהן, אבל מעבר למודלים של בינה, פרומפטים שמריצים באמוק ושלל ירקות, אנו צריכים לוודא שאבטחה היא חלק מהותי במשחק, אחרת הפרופמטים יחזירו תשובות זדוניות של גורם לא מורשה (תוקף וכו) ולא מה שהיינו מצפים לו.
המאמר הנוכחי נותן מבט על Azure OpenAI מתוך היבטי אבטחה ספציפיים ולא היבטי תשתית או פיתוח ואימון מודלים, מניפולציות של בקשות, או כתיבת מלווירים. אז למה אני בכל זאת רושם על Open AI ובינה? מה שמנחה אותי ביומיום עם אבטחה וסייבר, בין אם זה תחקור, או במבט תוקף ובפרט שזה מגיע למקום שצריך לחפש אביוז הוא חלק מהמתודולוגיה הבאה.
העקרון בהבנה של מהי הטכנולוגיה ואיך עובדים איתה (לעיתים ברמת עומק), איך התשתית בנויה, היבטי פיתוח, מה מתועד, מה אינו מתועד, לפרק את המערכת ומשם אחרי שיש לי קצת הבנה של המערכת אני יכול להצמיד לזה אבטחה על גווניה. לבסוף, לשתף קצת תובנות (מאמרים, קבוצות ווטס, סשנים בקהילה ועוד).
(סלייד/תרשים מתוך המתודולוגיה של איך למצוא אביוז בענן)
איך ניגשים לאבטחה סביב Azure OpenAI
הגישה לבינה מלאכותית גנרטיבית צריכה להיעשות לפי עקרונות הפלטפורמה והסרוויס של כל יצרן ומשם להצמיד לזה מודל אבטחה, פריימוורק ומתודולוגיה. במקרה של המאמר נרחיב על תשתית Azure OpenAI.
כאשר זה מגיע אל Azure OpenAI זה נהיה מעניין ולוקח אותנו למקום שאנו צריכים להבין שלצד פיתוח ואימון מודלים או הנגשת מידעף הסרוויס עובד עם רכיבים נוספים – במקרה הזה אנו צריכים לקלף את השכבות עם גישה רב מימדית ועם אבטחה מקצה לקצה.
הערה: מקצה לקצה מתחיל מאבטחת התשתית ועד לואפרציות של צוות אדום.
הדיאגרמה מדגימה את הרכיבים הנדרשים לטובת מימוש Azure OpenAI ספציפי, ולכן כמו התרחיש המתואר מטה ובתרחישים אחרים, זה מצריך מאיתנו להתבסס על רכיבי אבטחה מגוונים, חלקם מוכרים ואחרים פחות בתשתית Azure. בעקרון תרחיש מכיל סט של תקני אבטחה ופרוטוקולים המיושמים בכל הפלטפורמה, ולכן מי שמכיר את הרכיבים בתשתיות Azure אינו צריך להיות מופתע.
כאמור, תשתית Azure OpenAI משתלבת ומתחברת עם סרוויסים אחרים (אחסון, בסיסי נתונים, פונקציות ועוד), ולכן אנו נדרשים לנקוט בגישת אבטחה רב-שכבתית מקצה לקצה – אמצעי אבטחה יחיד אינו מספיק.
מהם השכבות הפוטנציאליות?
- אבטחת תשתית
- ניהול זהויות וגישה
- תאימות ואמון
- פרטיות ונתונים
- הגנה על המידע
- הגנה על יישומים
- אבטחה של אפליקציות ופיתוח
- מדידה וסינון תכנים
- בינה גרנטיבית אתית (חלק מתוך Ethical AI)
האחרונה משמעותית, כי היא נוטה לעורר דיונים רבים לגבי היכן מתחיל, ממשיך ומסתיית הבינה. קרי, בינה מלאכותית לא רק מעצימה פתרונות ויתרונות – היא גם מרחיבה סיכונים, ולכן, נתונים ואתיקה של בינה מלאכותית הם צרכים עסקיים, לא קוריוז אקדמי. למשל, האם העלויות והטעויות הם פר-מוצר או פרוטוקול?
למרות שתשתיות Azure מבטיחות שרכיבי הבינה מצייתים לעקרונות של בינה אחראית (הוגנות, אמינות, בטיחות, פרטיות ואבטחה, אחריות ושקיפות) עדיין מוזכר גם כי ״הלקוח אחראי להגיב לכל תביעה של צד שלישי בנוגע לשימוש של הלקוח בגרסאות שונות, קרי מצבי גרסת Preview״. מכאן זה לוקח אותנו לדבר המוכר בענן, מי אמר מודל אחריות שיתופי ואיך זה מתלבש במקרה של בינה גנרטיבית? ובל נשכח את האיומים, הסיכונים, באגים פוטנציאלים ועוד שיש במרחב הסייבר ובפרט במרחב הבינה.
שקיפות ודינמיות
מערכת בינה מלאכותית כוללת לא רק את הטכנולוגיה, אלא גם את התוכן, האנשים המשתמשים בה, האנשים המושפעים ממנה והסביבה שבה היא נמצאת וקיימת. יצירת מערכת המתאימה לייעודה דורשת הבנה כיצד הטכנולוגיה עובדת, מהן יכולותיה ומגבלותיה וכיצד להשיג את הביצועים הטובים ביותר. השקיפות (transparency) של Microsoft נועדה לעזור בהבנה כיצד פועלת טכנולוגיית AI, את הבחירות שבעלי מערכות יכולים לבצע וכאלה המשפיעות על ביצועי המערכת והתנהגותה, לצד זה, את העקרון של חשיבה על המערכת כולה, כולל הטכנולוגיה, תוכן, האנשים והסביבה.
אנו חייבים להשתמש בשקיפות בעת פיתוח או פריסה של מערכות, או לשתף אותן עם קהל היעד שישתמשו במערכת או כאלה שיושפעו ממנה. השקיפות של Microsoft היא חלק ממאמץ רחב יותר שנועד ליישם את עקרונות הבינה המלאכותית ולהמשיך לפתח אותה.
היסודות של מודלי Azure OpenAI
Azure OpenAI מספק תשתית בינה מלאכותית גנרטיבית ובפרט תשתית בינה מלאכותית שמנוהלת במלואה ומאפשרת למפתחי/מדעני נתונים ליישם את המודלים של OpenAI, כולל מודלים שיכולים ליצור שפה טבעית, קוד ותמונות. בתוך תשתית Azure OpenAI, מודלי OpenAI משולבים עם מודלים לסינון תוכן וזיהוי שימוש לרעה שפותחה ע״י Microsoft.
אם נביט על החלק הטקסטואלי בלבד כי בתמונות זה מקבל משמעויות וגוון אחר, אז כחלק מתשתית Azure OpenAI, מודלי GPT-3 מנתחים ויוצרים שפה טבעית, מודלי Codex מנתחים ויוצרים פרשנות קוד וטקסט רגיל, והמודלים של GPT-4 יכולים להבין וליצור שפה וקוד טבעיים (ויש את המודלים הנוספים שיגיעו בקרוב).
מודלים אלה משתמשים בארכיטקטורה אוטורגרסיבית, כלומר הם משתמשים בנתונים מתצפיות קודמות כדי לחזות את המילה הבאה הסבירה ביותר. תהליך זה חוזר על עצמו לאחר מכן ע״י צירוף התוכן החדש שנוצר לטקסט המקורי כדי להפיק את התגובה המלאה שנוצרה. מכיוון שהתגובה מותנית בטקסט הקלט, ניתן להחיל מודלים אלה על משימות שונות פשוט על ידי שינוי טקסט הקלט.
סדרת הדגמים של GPT-3 מאומנת מראש על גוף רחב של נתוני טקסט חופשי הזמינים לציבור. נתונים אלה מגיעים משילוב של סריקות אינטרנט, קרי, באופן ספציפי, גרסה מסוננת של Common Crawl, הכוללת מגוון רחב של טקסט מהאינטרנט ומהווה 60 אחוז ממערך הנתונים המשוקלל לפני אימון.
בנוסף, מערכי נתונים באיכות גבוהה יותר, כולל גרסה מורחבת של מערך הנתונים WebText, וכן, מקורות נוספים מבוססי אינטרנט. מודל הבסיס GPT-4 אומן באמצעות נתונים הזמינים לציבור, כגון, נתוני אינטרנט ונתונים שקיבלו רישיון מתוך תשתית OpenAI. המודל כוונן באמצעות למידה עם משוב אנושי, מסוג RLHF.
המודלים GPT-4, GPT-3 וכן Codex Azure OpenAI Service משתמשים בהוראות ודוגמאות בשפה טבעית כדי לזהות את המשימה/הדרישה. לאחר מכן המודל משלים את המשימה על ידי חיזוי הטקסט הבא הסביר ביותר. טכניקה זו ידועה בשם למידה “בתוך ההקשר”. מודלים אלה אינם מאומנים מחדש במהלך שלב זה, אלא מספקים תחזיות המבוססות על ההקשר שנכללות בהנחיות.
Azure OpenAI תוכנן מתוך מחשבה על תאימות, פרטיות ואבטחה; עם זאת, הלקוח עדיין אחראי לשימוש בו וליישום טכנולוגיה.
אילו נתונים מעובדים?
פרומפטים – הבקשות נשלחות על ידי הגורם (משתמש), וההשלמות מופקות על ידי השירות, באמצעות ההשלמות (צ’אט) ופעולות הטמעה.
תיקוף נתונים – ניתן לספק נתוני אימון ספציפיים המורכבים מבקשות והנחיות למטרות כוונון עדין של מודל OpenAI.
נתונים מתהליך ההכשרה – לאחר אימון מודל מכוונן היטב, השירות יפיק מטא-נתונים על העבודה הכוללים טוקנים שעובדו ודירוג שבמואמת בכל שלב.
איך Azure OpenAI מעבד נתונים?
ישנם שלושה סוגים של עיבוד:
- מודל מכוונן (מותאם אישית) עם נתוני האימון שלך.
- עיבוד הודעות טקסט כדי ליצור השלמות ולהטביע תוצאות.
- ניתוח בקשות והשלמות לאיתור שימוש לרעה, שימוש לרעה או יצירת תוכן מזיק, או למטרות איתור באגים במקרה של כשל.
נתוני אימון לצורך כוונון עדין של מודל OpenAI
נתוני האימון (פרופמטים והשלמות – לרוב יגיע בזוגות) הנשלחים ל API של Azure OpenAI Studio מעובדים מראש באמצעות כלים אוטומטיים לבדיקת איכות, כולל בדיקת תבנית נתונים. לאחר מכן, נתוני האימון מיובאים לאימון המודל בפלטפורמת Azure OpenAI. במהלך תהליך האימון, נתוני האימון מפורקים ומשמשים לשינוי של מודלי OpenAI.
נתונים שסופקו משמשים רק לכוונון עדין של המודל המבוקש ואינם משמשים את Microsoft לאימון או לשיפור מודלים כלשהם של Microsoft.
טקסט ליצירת השלמות ותוצאות
לאחר הקצאת פריסת מודל במשאב Azure OpenAI, ניתן לשלוח הודעות טקסט למודל באמצעות פעולות השלמות באמצעות Rest API, ומשם המודל יוצר פלט טקסט המוחזרים באמצעות API.
כאשר נתונים נשלחים לשירות, הם מעובדים באמצעות מסנני התוכן וכן באמצעות מודל OpenAI שצוין. מודלי סינון התוכן מופעלים הן על קלט הבקשה והן על ההשלמות שנוצרו.
מניעת שימוש לרעה ותוכן מזיק
תשתית Azure OpenAI כוללת מערכת ניהול תוכן הפועלת לצד המודלים כדי לסנן תוכן שעלול להזיק. מערכת זו פועלת ע״י הפעלת בקשת הקלט והשלמה שנוצרה באמצעות אנסמבל של מודל סיווג שמטרתו לזהות שימוש לרעה. במידה והמערכת מזהה תוכן מזיק, תתקבל שגיאה בקריאה מול ה- API, כמו כן, אם הבקשה נחשבה בלתי הולמת בתגובה תהיה תיוג של content_filter בכדי לציין שחלק מהתוכן סונן.
בנוסף לסינון תוכן סינכרוני, תשתית Azure OpenAI מאחסנת בקשות והשלמות מהשירות למשך עד שלושים יום כדי לנטר תוכן או התנהגויות המציעים שימוש בשירות באופן שעלול להפר את התנאים המוגדרים מראש וחלים עליו.
כאן חשוב להדגיש כי רק Microsoft רשאית לסקור נתוני הנחיות והשלמות שהפעילו את המערכות האוטומטיות לטובת חקירה ולאמת שימוש לרעה פוטנציאלי – עדיין לא במידע עצמו על רק ברמת הפעולות. בדיקות אלה ייעשו בהתאם לרגולציה ותאימות של מדינות שונות בהם נמצאת התשתית,, קרי, התאמה מול GDPR.
במקרה של הפרה מאושרת של המדיניות, ייתכן שהלקוח יתבקש לנקוט פעולה מיידית כדי לתקן את הבעיה ולמנוע שימוש לרעה נוסף. שימו לב, כשל בטיפול בבעיה עלול לגרום להשעיה או לסיום של הגישה למשאבים של Azure OpenAI.
ניתן לבקש שינוי של סינון תוכן או ניטור שימוש לרעה, ובמידה והבקשה מאושרת ונשארת תואמת לכלל הדרישות לשינוי ניטור השימוש לרעה, ההנחיות וההשלמות אינן מאוחסנות.
שמירת נתונים ובקרות
נתוני הדרכה, וולידציה ותוצאות עובדות מול API שמאפשר להעלות את נתוני האימון לצורך כוונון עדין המודל. נתונים אלה מאוחסנים ברכיבי Azure Storage, מוצפנים במצב מנוחה (data-at-rest) ע״י מפתחות מנוהלים של Microsoft, באותו אזור כמו המשאב ומבודדים לוגית באמצעות חשבון Azure ואישורי API ספציפיים. קבצים שהועלו יכולים להימחק על ידי המשתמש באמצעות פעולת DELETE API.
כוונון מודל ממשק API מאפשר ליצור גרסה מכווננת של מודלי OpenAI בהתבסס על נתוני האימון שהועלו לתשתית באמצעות ממשקי API. המודלים המאומנים הניתנים לכוונון נמצאים ברכיבי Azure Storage, מוצפנים במנוחה (data-at-rest) ומבודדים לוגית באמצעות חשבון Azure ואישורי API. מודלים מכווננים היטב יכולים להימחק ע״י קריאה של DELETE API.
הנחיות והשלמות – נתוני הבקשות וההשלמות עשויים להיות מאוחסנים באופן זמני ע״י שירות Azure OpenAI באותו אזור שבו מאוחסן המשאב למשך של עד שלושים יום. נתונים אלה מוצפנים ונגישים רק ל Microsoft למטרות איתור באגים במקרה של כשל, וכן חקירת דפוסי התנהגות זדוניים ושימוש לרעה כדי לקבוע אם נעשה שימוש בשירות באופן שמפר את תנאי הסרוויס.
גם כאן חשוב להדגיש כי כאשר לקוח מנוטר נתוני בקשות והשלמות אינם מאוחסנים, ולכן ל Microsoft אין גישה לנתונים.
הצפנה במנוחה
נתונים של הצפנה במנוחה (data-at-rest) מוזכרים מספר פעמים ויש להם חלק חשוב באבטחה של Azure Open AI.
Azure OpenAI מצפין את הנתונים באופן אוטומטי כאשר הם נשמרים בענן. ההצפנה מגנה על הנתונים ומסייעת בהתחייבויות האבטחה והתאימות הארגוניות.
הצפנה של סרוויסים קוגניטיביים – Azure OpenAI הוא חלק מתשתית Azure Cognitive Services. נתוני השירותים הקוגניטיביים מוצפנים ומפוענחים באמצעות הצפנת 140-AES תואמת FIPS 2-256. הצפנה ופענוח הם מובנים/שקופים, כלומר הצפנה וגישה מנוהלות עבורך. הנתונים שלך מאובטחים כברירת מחדל ואין צורך לשנות את הקוד או היישומים כדי לנצל את ההצפנה.
ניהול מפתחות הצפנה – כברירת מחדל, חשבון Azure משתמש במפתחות הצפנה המנוהלים ע״י Microsoft, אך קיימת גם אפשרות לנהל את ההחשבון באמצעות מפתחות עצמאיים, הנקראים מפתחות המנוהלים ע״י לקוח – CMK.
CMK מציע גמישות רבה יותר ליצור, לבצע רוטציה, להשבית ולבטל בקרות גישה, כמו גם, לבדוק את מפתחות ההצפנה המשמשים להגנה על הנתונים של הסרוויס.
מפתחות המנוהלים באמצעות Azure Key Vault – מפתחות מנוהלים ע״י לקוח (CMK), הידועים גם בשם BYOK או בקצרה ״תביא את המפתחות שלך״, מציעים גמישות רבה יותר ליצירה, רוטציה, השבתה וביטול של בקרות גישה.
במקרים אלה, אפשר וכדאי להשתמש בכספת של Azure המוכרת כ Azure Key Vault לטובת אחסון המפתחות המנוהלים בצד שלנו. באפשרותנו ליצור מפתחות ולאחסן אותם בכספת, או להשתמש בממשקי API של הכספת בכדי ליצור מפתחות. הסרוויס הקוגניטיבי יחד עם הכספת חייבים להיות באותו אזור ובאותו טננט של Azure AD. עדיין יכולים להיות בחשבונות שונים.
מחיקת נתוני הדרכה, אימות ותוצאות אימונים – ה API וגישה אל הקבצים מאפשר להעלות את נתוני האימון לצורך כוונון של המודל. נתונים אלה מאוחסנים ברכיבי Azure Storage באותו אזור כמו המשאב ומבודדים לוגית באמצעות חשבון Azure. קבצים שהועלו יכולים להימחק על ידי המשתמש באמצעות פעולת DELETE API.
פעולת מחיקה מול API מוזכרת מספר פעמים, עוד לגבי הנושא במאמר של Delete your training files.
שיטות אחראיות עבור מודלים
רבים מהמודלים של Azure OpenAI הם מודלים של בינה מלאכותית גנרטיבית שהדגימו שיפורים ביכולות מתקדמות כגון יצירת תוכן וקוד, סיכום וחיפוש. רבים מהשיפורים הללו מגיעים גם אתגרי בינה אחראיים הקשורים לתוכן מזיק, מניפולציה, התנהגות דמוית אדם, פרטיות ועוד.
בנוסף לשקיפות שישנה בענן של Azure ומצויינת גם במאמר זה, ישנם המלצות טכניות ומשאבים נוספים המסייעים בתכנון, פריסה, פיתוח ושימוש במערכות בינה שמיישמות את המודלים של Azure OpenAI באופן אחראי.
ההמלצות מבוססות על תקן הבינה המלאכותית האחראית של Microsoft, המגדיר דרישות ומדיניות שפועלים לפיהן. חלק מהותי הוא זיהוי, מדידה והפחתה של נזקים פוטנציאליים, ומשם תכנון כיצד להפעיל את מערכת הבינה המלאכותית. בהתאם לפרקטיקות אלה, המלצות אלה מאורגנות על גבי מספר שלבים:
זיהוי – זיהוי ותעדוף נזקים פוטנציאליים שעלולים לנבוע ממערכת הבינה המלאכותית באמצעות צוות אדום איטרטיבי, בדיקות וניתוח.
מדידה – למדוד את התדירות והחומרה של פגיעות אלה ע״י קביעת מדדים ברורים, יצירת ערכות בדיקות מדידה והשלמת בדיקות איטרטיביות ושיטתיות, הן ידניות והן אוטומטיות.
צמצום נזקים – צמצם נזקים ע״י יישום כלים ואסטרטגיות כגון prompt engineering ושימוש Content filtering. יש חחזור על המדידה כדי לבדוק את היעילות לאחר שינויים.
אופרציה – הגדרה וביצוע של תוכנית פריסה ומוכנות מבצעית.
בנוסף להתאמתם לתקן הבינה המלאכותית האחראית של Microsoft, שלבים אלה תואמים באופן הדוק לפונקציות במסגרת ניהול סיכוני הבינה המלאכותית של NIST.
זיהוי
זיהוי נזקים פוטנציאליים שעלולים להתרחש במערכת בינה או להיגרם על ידה הוא השלב הראשון במחזור החיים של בינה מלאכותית אחראית. ככל שנתחיל לזהות את הנזקים הפוטנציאליים מוקדם יותר, כך נוכל להיות יעילים יותר בהפחתת הנזקים. בעת הערכת נזקים פוטנציאליים, חשוב לפתח הבנה של סוגי הנזקים שעלולים לנבוע משימוש בשירות Azure OpenAI בהקשרים הספציפיים.
ישנם המלצות ומשאבים שבהם ניתן להשתמש כדי לזהות נזקים באמצעות הערכת השפעה, בדיקות צוות אדום איטרטיביות, בדיקות מאמץ וניתוח. צוותים אדומים ובדיקות מאמץ הן גישות שבהן קבוצת בודקים נפגשת ובוחנת בכוונה מערכת כדי לזהות את מגבלותיה, משטח הסיכון שלה ונקודות התורפה שלה.
צעדים אלה נועדו לייצר רשימה מתעדפת של נזקים פוטנציאליים עבור כל תרחיש ספציפי.
לזהות נזקים רלוונטיים ליישום ולתרחיש הספציפיים שלך.
לזהות נזקים פוטנציאליים המשויכים ליכולות המודל, קרי, בין מודל GPT-3 לעומת מודל GPT-4 שבהם ישנו שימוש במערכת. חשוב לקחת זאת בחשבון מכיוון שלכל מודל יש יכולות, מגבלות וסיכונים שונים.
לזהות נזקים אחרים או היקף נזק מוגבר המוצג על ידי השימוש המיועד במערכת שנמצאת בפיתוח, ולכן יש לשקול או להשתמש בהערכת והשפעה של בינה מלאכותית (Responsible AI) כדי לזהות נזקים פוטנציאליים.
תעדוף נזקים בהתבסס על מרכיבי סיכון – יש להעריך את רמת הסיכון לכל נזק ואת הסבירות להתרחשותו של כל סיכון כדי לתעדף את רשימת הנזקים שנמצאו.
בצע בדיקות צוות אדום ובדיקות מאמץ מומלץ להתחיל מהנזקים בעדיפות הגבוהה ביותר, כדי לפתח הבנה טובה יותר של האם וכיצד הנזקים שזוהו מתרחשים בפועל בתרחיש שלך, כמו גם לזהות נזקים חדשים שלא נצפו בתחילה.
שיתוף מידע עם בעלי עניין רלוונטיים באמצעות תהליכי התאימות הפנימיים של הארגון.
בסוף שלב זיהוי זה, צריכה להיות רשימה מתועדת ומתועדפת של נזקים. כאשר פגיעויות חדשות ומקרים חדשים של נזקים צצים באמצעות בדיקות נוספות ושימוש במערכת, באפשרותך לעדכן ולשפר רשימה זו ע״י ביצוע התהליך שוב.
מדידת נזקים
לאחר שזוהתה רשימה של נזקים מתועדפים, השלב הבא כולל פיתוח גישה למדידה שיטתית של כל פגיעה וביצוע הערכות של מערכת הבינה המלאכותית. ישנן גישות ידניות ואוטומטיות למדידה. ולכן מומלץ לבצע את שניהם, החל ממדידה ידנית.
מדידה ידנית שימושית עבור
- מדידת התקדמות בקבוצה קטנה של נושאים בעלי עדיפות. בעת צמצום נזקים ספציפיים, לעתים קרובות מועיל ביותר להמשיך לבדוק באופן ידני את ההתקדמות מול מערך נתונים קטן עד שהנזק כבר לא נצפה לפני המעבר למדידה אוטומטית.
- הגדרה ודיווח של מדדים עד למדידה אוטומטית אמינה מספיק לשימוש בלבד.
- בדיקה נקודתית מעת לעת כדי למדוד את איכות המדידה האוטומטית.
מדידה אוטומטית שימושית עבור
- מדידה בקנה מידה גדול עם כיסוי מוגבר כדי לספק תוצאות מקיפות יותר.
- מדידה מתמשכת לניטור כל רגרסיה ככל שהמערכת, השימוש וההפחתה מתפתחים.
מומלץ להשלים תחילה תהליך זה באופן ידני ולאחר מכן לפתח תוכנית להפיכת התהליך לאוטומטי:
הערכת תפוקות המערכת ודיווח על התוצאות לבעלי העניין הרלוונטיים
הגדר מדדים ברורים עבור כל שימוש מיועד במערכת, קבע מדדים הבודקים את התדירות ואת דרגת החומרה של כל ממצא שעלול להזיק. צור הגדרות ברורות כדי לסווג תפוקות שייחשבו מזיקות או בעייתיות בהקשר של המערכת ותרחיש, עבור כל סוג של נזק מועדף שזיהית.
להעריך את התפוקות מול ההגדרות המטריות הברורות ולתעד ולכמת את ההתרחשויות של תפוקות מזיקות. יש לחזור על המדידות מעת לעת, כדי להעריך הקלות ולפקח על כל רגרסיה.
שיתוף מידע זה עם בעלי עניין רלוונטיים באמצעות תהליכי התאימות הפנימיים של הארגון שלך.
בסוף שלב מדידה זה, צריכה להיות לך גישת מדידה מוגדרת כדי לבחון את ביצועי המערכת עבור כל נזק פוטנציאלי, כמו גם קבוצה ראשונית של תוצאות מתועדות. ככל שממשיכים ליישם ולבדוק את ההפחתות, יש להמשיך לשכלל את המדדים ואת ערכות המדידה ולעדכן את התוצאות.
צמצום נזקים
צמצום הנזקים המוצגים ע״י מודלי שונים, כגון מודלי Azure OpenAI, דורש גישה איטרטיבית, מרובדת, הכוללת ניסויים ומדידה מתמשכת. ולכן מומלץ לפתח תוכנית הפחתה הכוללת ארבע שכבות של הפחתת הנזקים שזוהו בשלבים מוקדמים יותר של תהליכים.
ברמת המודל, חשוב להבין באילו מודלים ישנו שימוש ואילו צעדי כוונון ננקטו ע״י מפתחי המודל כדי להתאים את המודל לשימושים המיועדים ולהפחית את הסיכון לשימושים ולתוצאות שעלולים להיות מזיקים. לדוגמה, עבור GPT-4, מפתחי מודלים הצליחו להשתמש בשיטות למידה של חיזוק ככלי AI אחראי כדי להתאים טוב יותר את המודל למטרות המיועדות של המעצבים.
ברמת מערכת כדאי להבין את ההקלות ברמת הפלטפורמה שיושמו. כגון מסנני התוכן של Azure OpenAI שעוזרים לחסום פלט של תוכן מזיק.
ברמת היישום מפתחי יישומים יכולים ליישם עיצוב metaprompt וממוקד משתמש וצמצום חוויית משתמש. Metaprompts הן הוראות הניתנות למודל כדי להנחות את התנהגותו, והשימוש בהם יכול לעשות הבדל קריטי בהנחיית המערכת להתנהג בהתאם לציפיות. התערבויות עיצוב וחוויית משתמש (UX) ממוקדות משתמש הן גם כלי מפתח להפחתת השימוש למניעת שימוש לרעה והסתמכות יתר על בינה מלאכותית.
ברמת המיצוב ישנן דרכים רבות לחנך את פעולות המתבקשות ע״י אנשים שישתמשו או יושפעו מהמערכת לגבי יכולותיה ומגבלותיה.
אופרציות
לאחר ביצוע הערכות, מדידה והפחתת סיכונים, מומלץ להגדיר ולבצע תוכנית פריסה ומוכנות תפעולית. שלב זה כולל השלמת סקירות מתאימות של המערכת ותוכניות הפחתה עם בעלי עניין רלוונטיים, הקמת פייפךיינים לאיסוף טלמטריה ומשוב, ופיתוח תוכנית תגובה לאירועים וחזרה למצב קודם.
להלן כמה המלצות כיצד לפרוס ולהפעיל מערכת המשתמשת בשירות Azure OpenAI עם מזעור נזקים מתאים וממוקד:
עבוד עם צוותי תאימות בארגון שלך כדי להבין אילו סוגי ביקורות נדרשים עבור המערכת שלך ומתי הם נדרשים (לדוגמה, סקירה משפטית, סקירת פרטיות, סקירת אבטחה, סקירת נגישות וכו’).
לפתח וליישם את הדברים הבאים:
- לפתח תוכנית תגובה לאירוע וכן הערכת תגובה לאירועיםואת הזמן הדרוש כדי להגיב לאירוע.
- פיתוח תוכנית חזרה למצב קודם תצריך לוודא שניתן להחזיר את המערכת למצב קודם במהירות וביעילות במקרה של תקרית בלתי צפויה.
- פעולה מיידית לנזקים בלתי צפויים תצריך בניית תהליכים הדרושים כדי לחסום הנחיות ותגובות בעייתיות כאשר הן מתגלות וקרוב ככל האפשר לזמן אמת.
- מנגנון לחסימת בקשות ואנשים המשתמשים לרעה במערכת תצריך פיתוח מנגנון לזיהוי משתמשים המפרים את מדיניות התוכן במערכת באופן אחר למטרות לא מכוונות או מזיקות, ומשם נקיטת פעולה נגד שימוש לרעה נוסף.
- בניית משוב שמצריך הטמעת ערוצי משוב שדרכם בעלי עניין יכולים לשלוח משוב או לדווח על בעיות בתוכן שנוצר או שמתעוררות בדרך אחרת במהלך השימוש שלהם במערכת. תעד כיצד משוב כזה מעובד, נלקח בחשבון ומטופל.
- נתוני מדידת שימוש. זהה ותעד בהתאם לחוקים, למדיניות ולהתחייבויות הרלוונטיים בנושא פרטיות המעידים על שביעות רצון המשתמשים או על יכולתם להשתמש במערכת כמתוכנן. השתמש בנתוני מדידת שימוש כדי לזהות פערים ולשפר את המערכת.
בתחום השיפוט שבו אנו פועלים עשויות להיות דרישות רגולטוריות או משפטיות שונות החלות על מערכת הבינה המלאכותית, לכן יש להבין את ״הדברים הקטנים״ אם אינך בטוח לגבי חוקים או תקנות שעשויים לחול על המערכת, במיוחד אם החשיבה שהם עשויים להשפיע על המלצות כאלה או אחרות.
לדיונים ועדכונים בתחום הבינה אפשר להצטרף לקבוצת ווטס של GENAI
רפרנס
Announcing Microsoft’s AI Customer Commitments
Overview of Responsible AI practices for Azure OpenAI models
1 Response
[…] היבטי אבטחה בתשתית Azure Open AI […]