גם ההערכות שלכם לא יציבות: הפסיקו לבטוח באחוז הצלחה שאינכם יכולים לשחזר
רוב האנשים יודעים שסוכני AI הם לא דטרמיניסטיים. אתם שולחים את אותו פרומפט, אבל מקבלים פלטים שונים.
קיבלנו את זה. התחלנו להשתמש ב-LLMs כשופטים כדי לדרג את הסוכנים האלו.
אבל עשינו טעות אדירה. הנחנו שהשופטים שלנו הם דטרמיניסטיים. הם לא.
ערכת ההערכה (eval suite) שלכם היא מערכת אקראית שבוחנת מערכת אקראית אחרת. אם אתם לא מודדים כמה המדרג שלכם מתנדנד, אין לכם שער איכות. יש לכם הטלת מטבע.
ראיתי את זה קורה עם סוכן תמיכה. הדאשבורד נשאר ירוק במשך שבועות. ואז, תלונות הלקוחות זינקו. הרצתי את אותה הערכה על 200 תגובות ישנות. ב-14 מהן השופט שינה את החלטתו. הסוכן לא השתנה. השופט שינה את דעתו.
שער לא יציב גרוע יותר מאין שער בכלל. הוא מעניק לכם ביטחון כוזב.
יש שלוש סיבות לכך שההערכות שלכם נכשלות:
- מודל השופט: לכל שופט LLM יש שונות (variance). אפילו בטמפרטורה 0, ספקים אינם מבטיחים את אותה תוצאה. עדכון מודל שקט יכול להרוס את ה-baseline שלכם בן לילה.
- ה-harness: אם ה-context או פלטי הכלים משתנים בין הרצות, השופט רואה שאלה אחרת. הקלט סטה (drifted).
- הרובריקה: כללים מעורפלים כמו "האם זה טוב?" יוצרים שונות. כללים הדוקים וספציפיים מפחיתים אותה.
עליכם להתייחס להערכות לא יציבות כמו לבדיקות תוכנה לא יציבות. אל תוציאו אותן לשימוש. הכניסו אותן לבידוד. מדדו את שיעור חוסר היציבות (flake rate).
הפסיקו לדווח על אחוז הצלחה בודד. התחילו לדווח על רמת ההסכמה (agreement).
הריצו כל קריאה לשופט מספר פעמים. אם השופט אינו יכול להסכים עם עצמו, הפסיקה אינה מהווה סיגנל. היא UNSTABLE.
תוצאה UNSTABLE צריכה להיות תוצאה בעלת מעמד ראשון ב-pipeline ה-CI/CD שלכם. היא צריכה להיכשל בצורה בולטת (fail loud).
כדי לתקן הערכה לא יציבה, אתם זקוקים לשני דברים:
- שכבת ניקוד (scoring layer): שכבה זו מחשבת יציבות והופכת את התוצאות ל-PASS, FAIL, או UNSTABLE.
- שכבת מעקב (tracing layer): עליכם לראות את הבייטים הגולמיים, את הפרומפט המדויק ואת פלטי הכלים עבור כל הרצה.
ללא traces, תחשבו שהמודל פשוט אקראי. תורידו את הטמפרטורה ותחשבו שתיקנתם. לא תיקנתם. רק הפכתם את הבאג לשקט יותר.
עקבו אחר הכללים הללו כדי לבנות איכות אמיתית:
- דווחו על הסכמה (agreement), לא רק על ממוצעים.
- הפכו את UNSTABLE למצב של כישלון ב-pipeline שלכם.
- קבעו (pin) את גרסאות מודל השופט שלכם.
- קראו את ה-traces כאשר בדיקה נכשלת.
דאשבורד ירוק שאינכם יכולים לשחזר אינו סיגנל. זה סיפור שאתם מספרים לעצמכם.
Optional learning community: https://t.me/GyaanSetuAi
