כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | שירותי האינטרנט של אמזון

כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | שירותי האינטרנט של אמזון

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

לאחרונה, Meta פרסמה לאמה 2 הן עבור חוקרים והן עבור גופים מסחריים, והוספה לרשימת ה-LLMs האחרים, כולל MosaicML MPT ו בז. בפוסט הזה, נעבור על איך לכוונן את Llama 2 AWS Trainium, מאיץ ייעודי לאימון LLM, כדי להפחית את זמני האימון והעלויות. אנו בודקים את תסריטי הכוונון המסופקים על ידי AWS נוירון SDK (באמצעות NeMo Megatron-LM), התצורות השונות בהן השתמשנו ותוצאות התפוקה שראינו.

לגבי דגם ה-Llama 2

דומה לקודם לאמה 1 דגם ודגמים אחרים כמו GPT, Llama 2 משתמש בארכיטקטורת המפענח בלבד של ה-Transformer. זה מגיע בשלושה גדלים: 7 מיליארד, 13 מיליארד ו-70 מיליארד פרמטרים. בהשוואה ל-Llama 1, Llama 2 מכפיל את אורך ההקשר מ-2,000 ל-4,000, ומשתמש בקשב של שאילתות מקובצות (רק עבור 70B). הדגמים המאומנים מראש של Llama 2 מאומנים על 2 טריליון אסימונים, והדגמים המכוונים שלה הוכשרו על פי למעלה ממיליון הערות אנושיות.

אימון מבוזר של לאמה 2

כדי להתאים את לאמה 2 עם אורך רצף של 2,000 ו-4,000, יישמנו את הסקריפט באמצעות NeMo Megatron עבור Trainium התומך במקביליות נתונים (DP), מקביליות טנזור (TP) ומקביליות צינורות (PP). ליתר דיוק, עם היישום החדש של כמה תכונות כמו הטמעת מילים, הטמעה סיבובית, RMSNorm והפעלת Swiglu, אנו משתמשים בסקריפט הגנרי של GPT Neuron מגהטרון- LM כדי לתמוך בתסריט האימון של לאמה 2.

הליך ההכשרה ברמה הגבוהה שלנו הוא כדלקמן: עבור סביבת ההדרכה שלנו, אנו משתמשים באשכול מרובה מופעים המנוהל על ידי מערכת SLURM להדרכה ותזמון מבוזרות במסגרת NeMo.

ראשית, הורד את מודל ה-Llama 2 ואת מערכי ההדרכה ועבד אותם מראש באמצעות ה-Llama 2 tokenizer. לדוגמה, כדי להשתמש במערך הנתונים RedPajama, השתמש בפקודה הבאה:

wget https://data.together.xyz/redpajama-data-1T/v1.0.0/book/book.jsonl python nemo/scripts/nlp_language_modeling/preprocess_data_for_megatron.py

להנחיות מפורטות של הורדת מודלים והטיעון של סקריפט העיבוד המקדים, עיין ב הורד את מערך הנתונים והאסימון של LlamaV2.

לאחר מכן, הרכיב את המודל:

sbatch --nodes 4 compile.slurm ./llama_7b.sh

לאחר הידור המודל, הפעל את עבודת ההדרכה עם הסקריפט הבא שכבר עבר אופטימיזציה עם התצורה וההיפרפרמטרים הטובים ביותר עבור Llama 2 (כלול בקוד לדוגמה):

sbatch --nodes 4 run.slurm ./llama_7b.sh

לבסוף, אנו עוקבים אחר TensorBoard כדי לעקוב אחר התקדמות האימון:

tensorboard --logdir ./

לדוגמא המלאה של הקוד והתסריטים שהזכרנו, עיין ב-Llama 7B הדרכה ו קוד NeMo ב- Neuron SDK כדי לעבור על שלבים מפורטים יותר.

כוונון עדין של ניסויים

כוונון עדין של מודל 7B ב-OSCAR (Open Super-large Crawled ALMAnaCH coRpus) ו-QNLI (Question-answering NLI) בסביבת Neuron 2.12 (PyTorch). עבור כל אורך רצף של 2,000 ו-4,000, ביצענו אופטימיזציה של כמה תצורות, כגון batchsize ו gradient_accumulation, ליעילות האימון. כאסטרטגיית כוונון עדין, אימצנו כוונון מלא של כל הפרמטרים (כ-500 שלבים), אשר ניתן להרחיב לאימון מקדים עם שלבים ארוכים יותר ומערכי נתונים גדולים יותר (לדוגמה, 1T RedPajama). ניתן גם להפעיל מקביליות רצף כדי לאפשר ל-NeMo Megatron לכוון בהצלחה דגמים עם אורך רצף גדול יותר של 4,000. הטבלה הבאה מציגה את תוצאות התצורה והתפוקה של ניסוי הכוונון העדין של Llama 7B. התפוקה משתנה באופן כמעט ליניארי ככל שמספר המופעים עולה עד 4.

ספרייה מבוזרת מערכי נתונים אורך רצף מספר מופעים טנזור מקביל מקביל נתונים צינור מקביל גודל אצווה גלובלי תפוקה (seq/s)
Neuron NeMo Megatron OSCAR 4096 1 8 4 1 256 3.7
. . 4096 2 8 4 1 256 7.4
. . 4096 4 8 4 1 256 14.6
. QNLI 4096 4 8 4 1 256 14.1

השלב האחרון הוא לאמת את הדיוק עם מודל הבסיס. יישמנו סקריפט התייחסות לניסויי GPU ואישרנו את התאמת עקומות האימון עבור GPU ו-Trainium כפי שמוצג באיור הבא. האיור ממחיש עקומות אובדן על פני מספר שלבי האימון במערך הנתונים של QNLI. דיוק מעורב אומץ עבור GPU (כחול), ו-bf16 עם עיגול סטוכסטי ברירת מחדל עבור Trainium (כתום).

עקומת אימון

סיכום

בפוסט זה, הראינו ש-Trainium מספק ביצועים גבוהים וכיוונון עדין חסכוני של Llama 2. למשאבים נוספים על שימוש ב-Trainium עבור אימון מקדים מבוזר וכיוונון עדין של דגמי הבינה המלאכותית הגנרטיבית שלך באמצעות NeMo Megatron, עיין ב- AWS Neuron Reference עבור NeMo Megatron.


על הכותבים

כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.האו ג'ו הוא מדען מחקר עם Amazon SageMaker. לפני כן, הוא עבד על פיתוח שיטות למידת מכונה לזיהוי הונאה עבור Amazon Fraud Detector. הוא נלהב ליישם למידת מכונה, אופטימיזציה וטכניקות בינה מלאכותית מחוללת לבעיות שונות בעולם האמיתי. הוא בעל תואר דוקטור בהנדסת חשמל מאוניברסיטת נורת'ווסטרן.

כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.Karthick Gopalswamy הוא מדען יישומי עם AWS. לפני AWS, הוא עבד כמדען במעבדות Uber ו-Walmart עם התמקדות גדולה באופטימיזציה של מספרים שלמים מעורבים. ב-Uber הוא התמקד באופטימיזציה של רשת התחבורה הציבורית עם מוצרי SaaS לפי דרישה ונסיעות משותפות. ב-Walmart Labs הוא עבד על אופטימיזציות של תמחור ואריזה. לקרת'יק יש דוקטורט בהנדסת תעשייה ומערכות עם קטין בחקר תפעול מאוניברסיטת צפון קרוליינה סטייט. המחקר שלו מתמקד במודלים ומתודולוגיות המשלבות חקר תפעול ולמידת מכונה.

כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.שין הואנג הוא מדען יישומי בכיר עבור האלגוריתמים המובנים של Amazon SageMaker JumpStart ו-Amazon SageMaker. הוא מתמקד בפיתוח אלגוריתמים של למידת מכונה ניתנים להרחבה. תחומי העניין שלו במחקר הם בתחום של עיבוד שפה טבעית, למידה עמוקה הניתנת להסבר על נתונים טבלאיים וניתוח חזק של צבירת מרחב-זמן לא פרמטרית. הוא פרסם מאמרים רבים בכנסים של ACL, ICDM, KDD וב-Royal Statistic Society: Series A.

כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.פארק יאנגסוק הוא Sr. Applied Scientist במעבדות AWS Annapurna, עובד על פיתוח והדרכה של מודלים בסיסיים על מאיצי בינה מלאכותית. לפני כן, ד"ר פארק עבד על מו"פ עבור Amazon Forecast במעבדות AWS AI כמדען מוביל. המחקר שלו טמון במשחק הגומלין בין למידת מכונה, מודלים בסיסיים, אופטימיזציה ולמידת חיזוק. הוא פרסם למעלה מ-20 מאמרים שנבדקו על ידי עמיתים במקומות מובילים, כולל ICLR, ICML, AISTATS ו-KDD, עם שירות של ארגון סדנאות והצגת הדרכות בתחום סדרות זמן והכשרה LLM. לפני שהצטרף ל-AWS, הוא השיג דוקטורט בהנדסת חשמל מאוניברסיטת סטנפורד.

כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.ידע וואנג הוא מדען ראשי בצוות AWS AI של אמזון. העניין המחקרי שלו הוא במערכות, מחשוב בעל ביצועים גבוהים וניתוח ביג דאטה. כיום הוא עובד על מערכות למידה עמוקה, תוך התמקדות בהרכבה ואופטימיזציה של מודלים של למידה עמוקה להדרכה יעילה והסקת מסקנות, במיוחד מודלים של בסיס בקנה מידה גדול. המשימה היא לגשר בין הדגמים ברמה הגבוהה ממסגרות שונות ופלטפורמות חומרה ברמה נמוכה כולל CPUs, GPUs ומאיצי AI, כך שדגמים שונים יוכלו לפעול בביצועים גבוהים במכשירים שונים.

כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.יוני (לוק) הואן הוא מדען ראשי במעבדות AI של AWS. ד"ר הואן עובד על AI ו-Data Science. הוא פרסם יותר מ-160 מאמרים בביקורת עמיתים בכנסים ובכתבי עת מובילים וסיים 11 דוקטורנטים. הוא זכה בפרס לפיתוח קריירה מוקדמת של הפקולטה ל-NSF בשנת 2009. לפני שהצטרף ל-AWS, הוא עבד ב-Baidu Research כמדען מכובד וראש מעבדת ה-Big Data של Baidu. הוא הקים את StylingAI Inc., סטארט-אפ בינה מלאכותית, ועבד כמנכ"ל וכמדען ראשי בשנים 2019–2021. לפני שהצטרף לתעשייה, הוא היה פרופסור צ'ארלס אי ומרי ג'יין ספר במחלקה ל-EECS באוניברסיטת קנזס. בין השנים 2015–2018, הוא עבד כמנהל תוכניות ב-NSF האמריקאי האחראי על תוכנית הביג דאטה שלה.

כוונון עדין של LLaMA 2 מהיר וחסכוני עם AWS Trainium | Amazon Web Services PlatoBlockchain Data Intelligence. חיפוש אנכי. איי.שרוטי קופרקאר הוא מנהל שיווק מוצר בכיר ב-AWS. היא עוזרת ללקוחות לחקור, להעריך ולאמץ תשתית מחשוב מואצת של Amazon EC2 לצרכי למידת המכונה שלהם.

בול זמן:

עוד מ למידת מכונות AWS