מודל-שפה פתוח בגודל GPT-3, בלי לחכות לאף אחד
GPT-J-6B הוא מודל-שפה אוטורגרסיבי בן שישה מיליארד פרמטרים, ששחררה EleutherAI ב-9 ביוני 2021 תחת רישיון פתוח לחלוטין, Apache 2.0 — כולל לשימוש מסחרי, בלי בקשת-גישה ובלי תשלום. EleutherAI עצמה מתארת אותו כמודל-הקוד-הפתוח הגדול בעולם בסגנון GPT-3 בזמן שחרורו, כלומר: לא רק פתוח, אלא גם הגדול ביותר מבין המודלים הפתוחים שהיו קיימים אז. השם "J" מציין את ספריית-האימון ששימשה לבנייתו, JAX של Google — בניגוד ל"Neo" שקדם לו, שאומן בכלים אחרים. הארכיטקטורה עצמה מחקה במפורש את זו של GPT-3: טרנספורמר אוטורגרסיבי מסוג decoder-only, שמייצר מילה אחרי מילה מתוך ההקשר שקדם לה, בדיוק כמו המודל הסגור של OpenAI שהוא נועד להוות לו חלופה נגישה לכל מפתח.
המבנה הטכני, בקצרה
המודל בנוי מ-28 שכבות-טרנספורמר, ממד-פנימי של 4,096, ו-16 ראשי-קשב (Attention Heads) בני 256 מימדים כל אחד, עם שכבת feed-forward ברוחב 16,384. אוצר-המילים שלו זהה לזה של GPT-2 — 50,257 טוקנים — וחלון-ההקשר מוגבל ל-2,048 טוקנים, קטן משמעותית מהתקנים של היום. האימון עצמו בוצע באמצעות ספריית Mesh Transformer JAX, שפיתחו בן וואנג ואראן קומאצוזאקי ופרסמו כפרויקט קוד-פתוח נפרד עוד לפני שחרור המודל עצמו, על גבי חומרת TPU v3-256 של גוגל — 402 מיליארד טוקנים לאורך 383,500 צעדי-אימון, היקף שהיה נדיר אז מחוץ למעבדות של חברות גדולות.
The Pile: מאגר-הנתונים שבנתה EleutherAI בעצמה
GPT-J אומן על The Pile — מאגר-טקסט אנגלי מגוון בהיקף של כ-825 ג'יגה-בייט, שהרכיבה EleutherAI עצמה במיוחד לצורך אימון מודלי-שפה פתוחים, ולא נלקח ממאגר קיים של חברה מסחרית. המאגר מורכב מ-22 תת-מאגרים שונים — ספרים, מאמרים אקדמיים, קוד, ופורומים — שנבחרו כדי לתת גיוון רחב יותר מאשר טקסט-אינטרנט גולמי בלבד. הוא שימש מאוחר יותר גם לאימון GPT-NeoX-20B, המודל הבא בסדרת EleutherAI, והפך בעצמו לאחד ממאגרי-האימון הפתוחים המצוטטים ביותר בתחום, מעבר לשימוש הספציפי הזה.
לא מודל בודד: משפחת GPT-Neo
GPT-J לא נולד בוואקום. EleutherAI קמה ביולי 2020 כקהילת-מחקר מבוזרת, בידי קונור ליהי, ליאו גאו וסיד בלאק, כתגובה ישירה לכך ש-OpenAI הציגה את GPT-3 לעולם בלי לשחרר אותו לציבור — קבוצת מתנדבים שהחליטה לבנות שקול-נגד פתוח בלי חברה ובלי מימון מסחרי מאחוריה. GPT-Neo, ממרץ 2021, בגרסאות של 125 מיליון, 1.3 מיליארד ו-2.7 מיליארד פרמטרים, קדם ל-GPT-J בכמה חודשים; GPT-NeoX-20B, מפברואר 2022, עשרים מיליארד פרמטרים, בא אחריו. שלושתם שוחררו תחת Apache 2.0, והיו במשך תקופה המודלים הפתוחים הגדולים ביותר שהיו זמינים לכל מפתח, עוד לפני ש-EleutherAI התאגדה רשמית כמכון-מחקר ללא-מטרות-רווח בתחילת 2023.
התוצאה שנכנסה לספרות: 11.4 אחוזים ב-HumanEval
כשהציגה OpenAI ביולי 2021 את אמת-המידה HumanEval יחד עם מודל Codex, נבדק GPT-J כאחד משלושה קווי-בסיס להשוואה על 164 בעיות-התכנות בפייתון של המבחן. Codex, שאומן ייעודית על קוד, פתר 28.8 אחוזים מהן ב-pass@1; GPT-3 הרגיל, שלא אומן על קוד כלל, פתר 0 אחוזים; ו-GPT-J, שגם הוא לא אומן ייעודית לתכנות, הגיע בכל זאת ל-11.4 אחוזים. המספר הזה נמוך בהרבה מ-Codex הייעודי, אבל הוא הוכחה לכך שמודל-שפה כללי ופתוח בשישה מיליארד פרמטרים בלבד — הרבה פחות מ-175 מיליארד הפרמטרים של הגרסה הגדולה ביותר של GPT-3 — מסוגל בכלל לכתוב קוד פייתון עובד בלי אימון ייעודי לכך. זו נקודת-ייחוס פתוחה ועצמאית לכל מי שרוצה למדוד יכולת-קוד של מודל בלי לפנות ל-OpenAI.
הצד האפל של הפתיחות: GPT-4chan
באותה מידה שאפשרה ל-GPT-J לשמש בסיס למחקר אקדמי חופשי, היא איפשרה גם שימוש לרעה. ביוני 2022 כיוונן יאניק קילכר, יוטיובר וחוקר-AI, גרסה של GPT-J על יותר ממאה מיליון הודעות מלוח /pol/ של 4chan, שנאספו בין יוני 2016 לנובמבר 2019 במאגר שנקרא "Raiders of the Lost Kek", והפעיל אותה כבוט אוטונומי שפרסם ישירות בלוח עצמו — לצד שחרור המשקלים ב-Hugging Face. עצומה שגינתה את המהלך אספה למעלה מ-300 חתימות של אנשי-מקצוע בתחום, ומנכ"ל Hugging Face התערב אישית בהחלטה, מהלך חריג עבור פלטפורמת-אירוח שבדרך-כלל לא שופטת תוכן מודלים — הגישה נחסמה ולבסוף הושבתה לגמרי. המקרה נשאר דוגמה מוקדמת ומצוטטת למתח שבין פתיחות-מודלים לאחריות על מה שנעשה איתם.