
קבלת מודלים זקוקה לסטטוס בלתי פתור
החלטה על קבלת מודל בינה מלאכותית חייבת להגדיר אילו ראיות מתירות לארטיפקט להתקדם. כאשר טעינה אינה מפיקה שום אירוע חסום אך בדיקה סטטית עדיין מזהה רכיב גלובלי מסוכן, אישור דוחס שני ממצאים שונים לתשובה מרגיעה אחת. אני רוצה שהממצא הבלתי פתור ישרוד את ההחלטה, בליווי דיווח ברור על מה שנותר לבסס.
בנינו את Crucible, הדגמת Model Vetting Firewall המקומית שלנו, סביב הבחנה זו. היא משתמשת בארטיפקטים סינתטיים, כולל קובץ שסורק חתימות אינו מסמן אך טעינתו מנסה לבצע פעולת מסד נתונים, וקובץ נוסף עם הסתעפות מותנית שאינה מופעלת. המקרה הראשון ממחיש מדוע ניסיון שנצפה הוא בעל חשיבות. המקרה השני חושף את בעיית התכנון הקשה יותר: להחליט מה לעשות כאשר הבדיקות הזמינות אינן תמימות דעים, מבלי להעמיד פנים שהמחלוקת יושבה.
הראיות משנות את ההחלטה
בדוגמת מסד הנתונים הסינתטי, PickleScan אינו מסמן את הארטיפקט. במהלך הטעינה, audit hook מוגדר של CPython רושם וחוסם ניסיון לפעולת מסד נתונים ב-SQLite. צינור העיבוד המקומי מחזיר QUARANTINE ואינו מנפיק חתימה. פעולת מסד הנתונים לא הצליחה; הראיה המועילה היא ההשפעה שניסו לבצע והחסימה המתועדת שלה.
זה מעניק להחלטת הקבלה סיבה שתוצאת סריקה נקייה אינה יכולה לספק. צוות יכול להצביע על הפעולה האסורה במקום לדרוש מתווית הסורק לענות על כל שאלה לגבי הטעינה. הסורק נותר שימושי כהשוואה, אך היעדר סימון אינו מבטל ניסיון חסום שנצפה.

אני מעדיף הפרדה זו מכיוון שהיא הופכת את ההחלטה לניתנת לבדיקה. סוקר צריך להיות מסוגל לעקוב אחר הקשר בין ממצא לתוצאה. 'ה-hook המוגדר חסם ניסיון פעולת מסד נתונים זו' היא הצהרה מוגדרת היטב. היא מזהה את הראיה, את המנגנון ואת הסיבה לפסק הדין המקומי. תווית בטיחות רחבה הייתה מותירה קשרים אלה מוסתרים.
תצפית יוצרת גם גבול אמון משלה. כאן, תהליך העבודה מנסה טעינה בתת-תהליך של Python ועוקב אחר אירועי ביקורת מוגדרים. זהו מכשור הדגמה, עם הפרדת תהליכים, ולא הכלה ברמת מערכת ההפעלה או הקונטיינר. תכנון סביבת ייצור יידרש לקבוע כיצד תהליך התצפית עצמו מבודד לפני שנותנים בו אמון עם ארטיפקטים לא מהימנים. הוספת ראיות התנהגותיות אינה מסירה את החובה לבחון בקפדנות את הסביבה שאוספת אותן.
טעינה שקטה מותירה שאלה קשה יותר
הפיקסטורה הסינתטית המותנית מגיעה לתוצאה שונה. בדיקה סטטית מוצאת את builtins.eval, רכיב גלובלי ברשימה המסוכנת המוגדרת בהדגמה. הטעינה שנצפתה אינה רושמת כל אירוע מסוכן שנחסם מכיוון שההסתעפות המותנית אינה מופעלת בסביבה זו. צינור העיבוד מנתב את הארטיפקט ל-REVIEW, ללא חתימה. שום חקירה אנושית לא הושלמה באמצעות נתיב זה.

ישנן שלוש תגובות מבוססות לשקול, וכל אחת מהן גובה מחיר שונה. אישור מקבל את חוסר הוודאות. דחייה נמנעת משימוש בארטיפקט זה, אך עלולה לפסול משהו שחקירה ממוקדת יותר יכולה להסביר. בדיקה נוספת מעכבת את ההחלטה ומחייבת להגדיר אילו ראיות נוספות עשויות לשנות אותה.
במקרה זה, אני מעדיף בדיקה מכיוון שאי-הוודאות היא ספציפית. ישנו חשש סטטי שזוהה ופער תצפיתי שזוהה. הריצה השקטה אינה מסבירה מדוע הרכיב הגלובלי המסוכן קיים או מה קורה אם מגיעים להסתעפות. אישור ידרוש קבלת פער זה. דחייה מיידית עשויה להיות מדיניות ארגונית סבירה, אך היא תהווה בחירה לפסול את הארטיפקט על סמך ראיות סטטיות בלתי פתורות, ולא הוכחה לכך שהתרחשה השפעה אסורה.
ההבחנה חשובה כאשר צוות כותב את מדיניות הקבלה שלו. כישלון בצפייה בהשפעה אינו אמור להפוך בשתיקה לממצא לפיו ההשפעה אינה יכולה להתרחש. באופן דומה, חשד אינו אמור להפוך בשתיקה להוכחה למתקפה מוצלחת. REVIEW מספק מקום לשמר את שתי העובדות הללו בעוד הארגון בוחר עם כמה חוסר ודאות הוא מוכן להתמודד.
REVIEW זקוק לקריטריון יציאה
סטטוס בדיקה בלבד עלול להפוך לאזור השהיה יקר. הוא מצדיק את מקומו רק כאשר הרשומה מסבירה את השאלה הבלתי פתורה ואת ההחלטה הבאה שמישהו צריך לקבל. בדוגמה זו, השאלה נוגעת לרכיב הגלובלי הסטטי ולהסתעפות שלא הופעלה. חזרה על אותה טעינה שקטה מבלי לשנות את מה שנחקר תוסיף תצפית נוספת מבלי לענות על אותה שאלה.
בתהליך ארגוני היפותטי, צוות עשוי לבדוק את ההסתעפות, לבקש הסבר אמין מספק הארטיפקט, או לבחור ארטיפקט חלופי בעל נתיב טעינה שניתן לבחון ביתר קלות. אלו תגובות מוצעות, לא תהליכי עבודה שהדגמה זו משלימה. לכל אחת יש מחיר: בדיקה עמוקה יותר דורשת מומחיות, ראיות מהספק דורשות אימות משלהן, והחלפה עלולה להקריב פונקציונליות נדרשת. הבחירה תלויה באילו ראיות הצוות יכול להשיג ואיזו רמת אי-ודאות המדיניות שלו מתירה.
אני רוצה שהבחירה הזו תהיה מפורשת. אם שום חקירה זמינה אינה יכולה ליישב את החשש במסגרת מגבלות הצוות, דחיית הארטיפקט עשויה להיות הסיום המתאים של הבדיקה. REVIEW אינו אמור להבטיח שכל קובץ יזכה בסופו של דבר לאישור. מטרתו היא למנוע משאלה בלתי פתורה להיעלם בתוך פסק דין ולהבטיח שההחלטה הסופית תיתן דין וחשבון למדיניות מוצהרת.
אותה משמעת חלה על הסברי בינה מלאכותית. בהדגמה, ייעוץ משולב של אנליסט ומאתגר יכול להוסיף זהירות ולהעביר תוצאת בסיס של ALLOW ל-REVIEW; הוא אינו יכול להסיר QUARANTINE. המצגת המוקלטת משתמשת בהמלצות Codex שמורות במטמון לצד בדיקות שהוגדרו לאחרונה. רשומת ייחוס סינתטית אחת ממחישה את הסכנה שבטיפול בנרטיב כסמכות: ההמלצה שלה מייעצת לחתום ולקדם, בעוד שהתוצאה המבנית הסופית היא REVIEW ולא מונפקת שום חתימה.
צרכן קבלה צריך אפוא לקרוא את פסק הדין המבני, סיבת השער ושדה החתימה בפועל. ניסוח מועיל יכול להסביר החלטה, אך אינו רשאי להפוך להרשאה שנייה וסותרת לקדם ארטיפקט. תהליך בדיקה שבוטח במשפט ההמלצה יותר מאשר בשער הסופי איבד את ההבחנה שנועד לשמר.
גם לאישור יש גבול
מילון המשקלים הנקי הסינתטי מקבל ALLOW וחתימה על שם המודל, גיבוב הארטיפקט ומטען המלאי באמצעות מפתח פיתוח מקומי. מקור נתוני האימון שלו והיסטוריית הכוונון העדין נותרים UNKNOWN. רק ALLOW מקבל חתימה זו; REVIEW ו-QUARANTINE אינם מקבלים אותה.
זה חשוב ליציאה מהבדיקה בדיוק כפי שזה חשוב לנתיב הנקי. פתרון חשש לגבי טעינה לא יבסס, כשלעצמו, היסטוריית אימון. חתימה יכולה לאמת את המטען המקומי שצוין ביחס למפתח שלו בעוד ששאלה מוקדמת יותר נותרת ללא מענה. צוות צריך לשאול בנפרד האם ראיות הקבלה מספיקות להחלטת הטעינה והאם המקור החסר מקובל לשימוש המיועד. בדיקה מאושרת אחת אינה אמורה ליישב שאלה שמעולם לא בחנה.
ה-Crucible explainer מציג דוגמאות מקומיות אלו ואת הראיות שלהן. אינטגרציה עם מרשמים, אכיפת קבלה ארגונית ומשמורת על חתימות בסביבת ייצור נותרות משימות מעבר להדגמה זו. ערכה טמון בגבול ההחלטה שהיא ממחישה, ולא בטענה שהיישום המקומי מספק את כל מנגנוני הבקרה שארגון יזדקק להם.
הנה סרטון המייסד המציג את הדגמת סינון המודלים הסינתטי המקומי.
עבור צוות פלטפורמה שמעריך תכנון קבלה, הייתי מתחיל במקרה שבו הראיות אינן מסתדרות בצורה חלקה. שאלו מה שומר על הממצא הבלתי פתור גלוי, מי מחליט האם חקירה נוספת שווה את עלותה, ואילו ראיות יכולות לשנות את התוצאה. נתיב נקי קל לתאר. הנתיב הבלתי פתור חושף האם המערכת משמרת חוסר ודאות למשך זמן מספיק כדי לאפשר קבלת החלטה אחראית.




