מנטיום היא ספקית פלטפורמת ענן גלובלית לבניית יישומי AI וניהולם בקנה מידה. פלטפורמת הפיתוח מקצה לקצה של Mantium מאפשרת לארגונים ועסקים מכל הגדלים לבנות יישומי AI ואוטומציה מהר וקלה יותר ממה שהיה אפשרי באופן מסורתי. עם Mantium, צוותים טכניים ולא טכניים יכולים ליצור אבטיפוס, לפתח, לבדוק ולפרוס יישומי בינה מלאכותית, והכל בגישה של קוד נמוך. באמצעות רישום, ניטור ותכונות בטיחות אוטומטיות, Mantium משחררת גם תוכנה ומהנדסי DevOps מבלי לבזבז את זמנם בהמצאת הגלגל מחדש. ברמה גבוהה, Mantium מספק:
- AI חדיש - ניסוי ופיתוח עם מבחר נרחב של קוד פתוח ודגמי שפות פרטיים גדולים עם ממשק משתמש פשוט או API.
- אוטומציה של תהליכי AI – בנה בקלות יישומים מונעי בינה מלאכותית עם ספרייה הולכת וגדלה של אינטגרציות ובונה הבינה המלאכותית הגרפית של Mantium.
- פריסה מהירה - קצר את ציר הזמן של הייצור מחודשים לשבועות או אפילו ימים עם פריסה בלחיצה אחת. תכונה זו הופכת יישומי AI לאפליקציות אינטרנט הניתנות לשיתוף בלחיצה אחת.
- בטיחות ורגולציה - הבטחת בטיחות ועמידה במדיניות ממשל ותמיכה בתהליכים של אדם בתוך הלולאה.
עם Mantium AI Builder, אתה יכול לפתח זרימות עבודה מתוחכמות המשלבות ממשקי API חיצוניים, פעולות לוגיות ומודלים של AI. צילום המסך הבא מציג דוגמה לאפליקציית Mantium AI, אשר משלבת יחד קלט Twilio, מדיניות ממשל, בלוק AI (שיכול להסתמך על מודל קוד פתוח כמו GPT-J) ופלט Twilio.
כדי לתמוך באפליקציה זו, Mantium מספקת גישה מקיפה ואחידה לא רק לממשקי API של מודלים מספקי בינה מלאכותית כמו Open AI, Co:here ו-AI21, אלא גם למודלים מתקדמים של קוד פתוח. ב-Mantium, אנו מאמינים שכל אחד צריך להיות מסוגל לבנות יישומי AI מודרניים שבבעלותו, מקצה לקצה, ואנו תומכים בכך על ידי מתן גישה ללא קוד וקוד נמוך למודלים של קוד פתוח מותאמים לביצועים.
לדוגמה, אחד מדגמי הליבה של Mantium של קוד פתוח הוא GPT-J, מודל מתקדם של עיבוד שפה טבעית (NLP) שפותח על ידי Eleether AI. עם 6 מיליארד פרמטרים, GPT-J הוא אחד המודלים הגדולים ביותר ובעלי הביצועים הטובים ביותר ליצירת טקסט פתוח. משתמשי Mantium יכולים לשלב את GPT-J ביישומי הבינה המלאכותית שלהם באמצעות בונה הבינה המלאכותית של Mantium. במקרה של GPT-J, הדבר כרוך בציון א הפקודה (ייצוג שפה טבעית של מה שהמודל צריך לעשות) והגדרת כמה פרמטרים אופציונליים.
לדוגמה, צילום המסך הבא מציג הדגמה מקוצרת של הנחיה לניתוח סנטימנט שמייצרת הסברים ותחזיות סנטימנט. בדוגמה זו, המחבר כתב כי "האוכל היה נפלא" וכי "השירות שלהם היה יוצא דופן". לכן, טקסט זה מבטא סנטימנט חיובי.
עם זאת, אתגר אחד עם מודלים של קוד פתוח הוא שהם רק לעתים רחוקות מתוכננים לביצועים ברמת ייצור. במקרה של דגמים גדולים כמו GPT-J, זה יכול להפוך את פריסת הייצור לבלתי מעשית ואף בלתי ישימה, בהתאם למקרה השימוש.
כדי להבטיח שלמשתמשים שלנו תהיה גישה לביצועים מהסוג הטוב ביותר, אנחנו תמיד מחפשים דרכים להפחית את זמן האחזור של דגמי הליבה שלנו. בפוסט זה, אנו מתארים את התוצאות של ניסוי אופטימיזציה של הסקת מסקנות, שבו אנו משתמשים במנוע ההסקה של DeepSpeed כדי להגדיל את מהירות ההסקה של GPT-J בכ-116%. אנו גם מתארים כיצד פרסנו את היישום Hugging Face Transformers של GPT-J עם DeepSpeed ב- אמזון SageMaker מסקנות קצה.
סקירה כללית של דגם GPT-J
GPT-J הוא מודל שפה מיומן מראש (GPT), ומבחינת הארכיטקטורה שלו, ניתן להשוות אותו לדגמי שפה פופולריים, פרטיים וגדולים כמו GPT-3 של Open AI. כפי שצוין קודם לכן, הוא מורכב מכ-6 מיליארד פרמטרים ו-28 שכבות, המורכבות מבלוק הזנה קדימה ובלוק תשומת לב עצמית. כאשר הוא שוחרר לראשונה, GPT-J היה אחד מדגמי השפה הגדולים הראשונים שהשתמשו בהם הטבעות סיבוביות, אסטרטגיית קידוד מיקום חדשה המאחדת מקודד מיקום מוחלט ויחסי. היא גם משתמשת באסטרטגיית הקבלה חדשנית שבה שכבות צפופות והזנה קדימה משולבות בשכבה אחת, מה שממזער את תקורה של תקשורת.
למרות ש-GPT-J אולי לא ממש מתאים לגדול בסטנדרטים של היום - דגמים גדולים מורכבים בדרך כלל מיותר מ-100 מיליארד פרמטרים - הוא עדיין בעל ביצועים מרשימים, ועם קצת הנדסה מהירה או כוונון עדין מינימלי, אתה יכול להשתמש בו כדי לפתור בעיות רבות. יתר על כן, גודלו הצנוע יחסית אומר שאתה יכול לפרוס אותו מהר יותר ובעלות נמוכה בהרבה מדגמים גדולים יותר.
עם זאת, GPT-J עדיין די גדול. לדוגמה, אימון GPT-J ב-FP32 עם עדכוני משקל מלא והאופטימיזר של Adam דורשים מעל 200 ג'יגה-בייט זיכרון: 24 ג'יגה-בייט לפרמטרים של הדגם, 24 ג'יגה-בייט עבור השיפועים, 24 ג'יגה-בייט עבור שיפועים בריבוע של אדם, 24 ג'יגה-בייט עבור מצבי האופטימיזציה, ודרישות הזיכרון הנוספות לטעינת קבוצות אימון ואחסון הפעלות. כמובן, אימון ב-FP16 מפחית את דרישות הזיכרון הללו כמעט בחצי, אך טביעת זיכרון של למעלה מ-100 GB עדיין מחייבת אסטרטגיות אימון חדשניות. לדוגמה, בשיתוף עם SageMaker, צוות ה-NLP של Mantium פיתח א זרימת עבודה לאימון (כיוונון עדין) של GPT-J באמצעות ספריית המודלים המקבילים המבוזרים של SageMaker.
לעומת זאת, להגשת GPT-J להסקה יש דרישות זיכרון נמוכות בהרבה - ב-FP16, משקלי הדגם תופסים פחות מ-13 GB, מה שאומר שניתן לבצע הסקה בקלות על GPU יחיד של 16 GB. עם זאת, מסקנות עם יישומים מחוץ לקופסה של GPT-J, כגון ה-Huging Face Transformers הפעלה שאנו משתמשים בו, הוא איטי יחסית. כדי לתמוך במקרים של שימוש הדורשים יצירת טקסט מגיב מאוד, התמקדנו בהפחתת זמן ההסקה של GPT-J.
אתגרי השהיית תגובה של GPT-J
השהיית תגובה היא מכשול מרכזי עבור השנאים המאומנים מראש (GPTs) כגון GPT-J המניעים יצירת טקסט מודרני. מודלים של GPT יוצרים טקסט באמצעות רצפים של שלבי מסקנות. בכל שלב מסקנות, המודל מקבל טקסט כקלט, ובתנאי לקלט זה, הוא דוגם מילה מאוצר המילים שלו כדי לצרף לטקסט. לדוגמה, בהתחשב ברצף האסימונים "אני צריך מטריה כי היא", האסימון הבא בסבירות גבוהה עשוי להיות "יורד גשם". עם זאת, זה יכול להיות גם "שמשי" או "קשור", וזה יכול להיות הצעד הראשון לקראת רצף טקסט כמו "אני צריך מטריה כי צפוי להתחיל לרדת גשם".
תרחישים כמו זה מעלים כמה אתגרים מעניינים לפריסת מודלים של GPT מכיוון שמקרי שימוש בעולם האמיתי עשויים לכלול עשרות, מאות או אפילו אלפי שלבים להסיק. לדוגמה, יצירת תגובה של 1,000 אסימונים דורשת 1,000 צעדי הסקה! בהתאם לכך, על אף שמודל עשוי להציע מהירויות הסקה שנראות מהירות מספיק בבידוד, קל לזמן ההשהיה להגיע לרמות בלתי נסבלות כאשר נוצרים טקסטים ארוכים. ראינו זמן השהייה ממוצע של 280 מילישניות לכל שלב מסקנות ב-V100 GPU. זה אולי נראה מהיר עבור מודל של 6.7 מיליארד פרמטרים, אבל עם השהיות כאלה, לוקח בערך 30 שניות ליצור תגובה של 500 אסימונים, שאינה אידיאלית מנקודת מבט של חווית משתמש.
אופטימיזציה של מהירויות מסקנות באמצעות DeepSpeed Inference
DeepSpeed היא ספריית אופטימיזציה ללמידה עמוקה בקוד פתוח שפותחה על ידי מיקרוסופט. למרות שהיא מתמקדת בעיקר באופטימיזציה של אימון דגמים גדולים, DeepSpeed מספקת גם מסגרת לאופטימיזציה של הסקות התומכת בסט נבחר של דגמים, כולל BERT, Megatron, GPT-Neo, GPT2 ו-GPT-J. DeepSpeed Inference מאפשר הסקת הסקת ביצועים גבוהים עם ארכיטקטורות גדולות מבוססות שנאי באמצעות שילוב של מקביליות מודל, גרעיני CUDA מותאמים להסקת מסקנות וקונטיזציה.
כדי להגביר את מהירות ההסקה עם GPT-J, אנו משתמשים במנוע ההסקה של DeepSpeed כדי להזריק ליבות CUDA מותאמות למימוש Hugging Face Transformers GPT-J.
כדי להעריך את יתרונות המהירות של מנוע ההסקה של DeepSpeed, ערכנו סדרה של מבחני חביון שבהם תזמנו את GPT-J בתצורות שונות. באופן ספציפי, שינינו האם נעשה שימוש ב-DeepSpeed או לא, החומרה, אורך רצף הפלט ואורך רצף הקלט. התמקדנו הן בפלט והן באורך רצף הקלט, מכיוון ששניהם משפיעים על מהירות ההסקה. כדי ליצור רצף פלט של 50 אסימונים, המודל חייב לבצע 50 שלבי הסקה. יתר על כן, הזמן הדרוש לביצוע שלב מסקנות תלוי בגודל רצף הקלט - תשומות גדולות יותר דורשות יותר זמן עיבוד. למרות שההשפעה של גודל רצף הפלט גדולה בהרבה מהשפעת גודל רצף הקלט, עדיין יש צורך לקחת בחשבון את שני הגורמים.
בניסוי שלנו, השתמשנו בעיצוב הבא:
- מנוע מסקנות DeepSpeed - דולק כבוי
- חומרה – T4 (ml.g4dn.2xlarge), V100 (ml.p3.2xlarge)
- אורך רצף קלט - 50, 200, 500, 1000
- אורך רצף פלט - 50, 100, 150, 200
בסך הכל, לעיצוב הזה יש 64 שילובים של ארבעת הגורמים הללו, ולכל שילוב, הרצנו 20 מבחני חביון. כל בדיקה בוצעה על נקודת קצה מסקנת SageMaker מאתחל מראש, מה שמבטיח שמבחני ההשהיה שלנו משקפים את זמני הייצור, כולל חילופי API ועיבוד מקדים.
הבדיקות שלנו מוכיחות שמנוע ההסקת GPT-J של DeepSpeed מהיר משמעותית מהיישום הבסיסי של Hugging Face Transformers PyTorch. האיור הבא ממחיש את זמן השהיה הממוצע ליצירת טקסט עבור GPT-J עם ובלי האצת DeepSpeed על נקודות קצה של ml.g4dn.2xlarge ו-ml.p3.2xlarge SageMaker.
במופע ml.g4dn.2xlarge, המצויד ב-NVIDIA T16 GPU בנפח 4 ג'יגה-בתים, ראינו הפחתה ממוצעת של זמן השהייה של כ-24% [Standard Deviation (SD) = 0.05]. זה תואם לעלייה מממוצע של 12.5 (SD = 0.91) אסימונים לשנייה לממוצע של 16.5 (SD = 2.13) אסימונים לשנייה. יש לציין כי השפעת ההאצה של DeepSpeed הייתה חזקה עוד יותר במופע ml.p3.2xlarge, המצויד ב-NVIDIA V100 GPU. בחומרה זו, ראינו הפחתה ממוצעת של 53% (SD = .07). במונחים של אסימונים לשנייה, זה תואם לעלייה מממוצע של 21.9 (SD = 1.97) אסימונים לשנייה לממוצע של 47.5 (SD = 5.8) אסימונים לשנייה.
ראינו גם שההאצה שמציעה DeepSpeed נחלשה מעט בשתי תצורות החומרה ככל שגודל רצפי הקלט גדל. עם זאת, בכל התנאים, ההסקה עם אופטימיזציות GPT-J של DeepSpeed עדיין הייתה מהירה משמעותית מהקו הבסיסי. לדוגמה, במופע g4dn, הפחתת זמן ההשהיה המקסימלית והמינימלית הייתה 31% (גודל רצף קלט = 50) ו-15% (גודל רצף קלט = 1000), בהתאמה. ובמופע p3, הפחתת זמן ההשהיה המקסימלית והמינימלית הייתה 62% (גודל רצף קלט = 50) ו-40% (גודל רצף קלט = 1000), בהתאמה.
פריסת GPT-J עם DeepSpeed בנקודת קצה של מסקנות של SageMaker
בנוסף להגדלה דרמטית של מהירויות יצירת טקסט עבור GPT-J, מנוע ההסקות של DeepSpeed קל לשילוב בנקודת קצה של מסקנות של SageMaker. לפני הוספת DeepSpeed למחסנית ההסקות שלנו, נקודות הקצה שלנו פעלו על תמונת Docker מותאמת אישית המבוססת על תמונת PyTorch רשמית. SageMaker מקל מאוד על פריסת נקודות קצה מותאמות אישית, ושילוב DeepSpeed היה פשוט כמו הכללת התלות וכתיבת כמה שורות קוד. המדריך בקוד פתוח לזרימת העבודה של הפריסה לפריסת GPT-J עם DeepSpeed זמין ב- GitHub.
סיכום
Mantium מחויב להוביל חדשנות כך שכולם יוכלו לבנות במהירות עם AI. מאוטומציית תהליכים מונעת בינה מלאכותית ועד להגדרות בטיחות ותאימות מחמירות, הפלטפורמה המלאה שלנו מספקת את כל הכלים הדרושים לפיתוח וניהול יישומי בינה מלאכותית איתנה ואחראית בקנה מידה ומקטינה את מחסום הכניסה. SageMaker עוזרת לחברות כמו Mantium לצאת לשוק במהירות.
כדי ללמוד כיצד Mantium יכול לעזור לך לבנות זרימות עבודה מורכבות מונעות בינה מלאכותית עבור הארגון שלך, בקר www.mantiumai.com.
על המחברים
ג'ו הובר הוא מדען יישומי בכיר בצוות מחקר ופיתוח AI של Mantium. הוא נלהב בפיתוח מודלים, שיטות ותשתיות שעוזרים לאנשים לפתור בעיות בעולם האמיתי עם מערכות NLP מתקדמות. בזמנו הפנוי, הוא נהנה לעשות תרמילאים, לגננות, לבשל ולבלות עם משפחתו.
דוואל פאטל הוא אדריכל ראשי למידת מכונה ב-AWS. הוא עבד עם ארגונים החל מארגונים גדולים ועד סטארט-אפים בינוניים על בעיות הקשורות למחשוב מבוזר ובינה מלאכותית. הוא מתמקד בלמידה עמוקה כולל תחומי NLP ו-Computer Vision. הוא עוזר ללקוחות להשיג מסקנות מודל עם ביצועים גבוהים על SageMaker.
סוניל פדמנאבהן הוא אדריכל פתרונות סטארט-אפ ב-AWS. כמייסד סטארט-אפ ו-CTO לשעבר, הוא נלהב מלמידת מכונה ומתמקד בסיוע לסטארט-אפים למנף AI/ML לתוצאות העסקיות שלהם ולתכנן ולפרוס פתרונות ML/AI בקנה מידה.
- "
- 000
- 100
- 28
- 7
- 9
- a
- אודות
- מוּחלָט
- גישה
- לפיכך
- חֶשְׁבּוֹן
- להשיג
- לרוחב
- תוספת
- נוסף
- להשפיע על
- AI
- תעשיות
- למרות
- תמיד
- אמזון בעברית
- אנליזה
- כל אחד
- API
- ממשקי API
- האפליקציה
- יישומים
- יישומית
- גישה
- בערך
- אפליקציות
- ארכיטקטורה
- מלאכותי
- בינה מלאכותית
- מכני עם סלילה אוטומטית
- אוטומציה
- זמין
- מְמוּצָע
- AWS
- מחסום
- Baseline
- כי
- לפני
- הטבות
- B
- לחסום
- לִבנוֹת
- בונה
- בִּניָן
- עסקים
- עסקים
- מקרים
- לאתגר
- האתגרים
- ענן
- פלטפורמת ענן
- קוד
- שיתוף פעולה
- שילוב
- שילובים
- משולב
- תקשורת
- חברות
- להשלים
- מורכב
- הענות
- מַקִיף
- המחשב
- מחשוב
- תנאים
- ליבה
- יכול
- ראש אגף טכנולוגיה
- מנהג
- לקוחות
- שיא הטכנולוגיה
- מוקדש
- עמוק
- מספק
- להפגין
- תלוי
- תלוי
- לפרוס
- פרס
- פריסה
- פריסה
- לתאר
- עיצוב
- מעוצב
- לפתח
- מפותח
- מתפתח
- צעצועי התפתחות
- מופץ
- מחשוב מבוזר
- סַוָר
- תחומים
- באופן דרמטי
- בקלות
- השפעה
- מעסיקה
- מאפשר
- מקצה לקצה
- נקודת קצה
- מנוע
- הנדסה
- מהנדסים
- הבטחתי
- חברות
- מְצוּיָד
- להעריך
- כולם
- דוגמה
- בורסות
- ניסיון
- לְנַסוֹת
- נרחב
- יוצא דופן
- פָּנִים
- גורמים
- משפחה
- מהר
- מהר יותר
- מאפיין
- תכונות
- תרשים
- ראשון
- מרוכז
- מתמקד
- הבא
- עָקֵב
- מייסד
- מסגרת
- החל מ-
- מלא
- יתר על כן
- ליצור
- יצירת
- דור
- גנרטטיבית
- גלוֹבָּלִי
- ממשל
- GPU
- גדל
- מדריך
- חומרה
- לעזור
- עזרה
- עוזר
- כאן
- גָבוֹהַ
- מאוד
- איך
- אולם
- HTTPS
- מאות
- אידאל
- תמונה
- הפעלה
- כולל
- להגדיל
- גדל
- חדשנות
- חדשני
- קלט
- למשל
- לשלב
- ואינטגרציות
- מוֹדִיעִין
- בדידות
- IT
- שפה
- גָדוֹל
- גדול יותר
- הגדול ביותר
- שכבה
- מוביל
- לִלמוֹד
- למידה
- רמה
- רמות
- תנופה
- סִפְרִיָה
- קווים
- טוען
- ארוך
- הסתכלות
- מכונה
- למידת מכונה
- לעשות
- עושה
- לנהל
- ניהול
- שוק
- אומר
- זכרון
- שיטות
- מיקרוסופט
- יכול
- מינימום
- ML
- מודל
- מודלים
- ניטור
- חודשים
- יותר
- טבעי
- הכרחי
- Nvidia
- מכשול
- הַצָעָה
- מוצע
- רשמי
- לפתוח
- קוד פתוח
- תפעול
- אופטימיזציה
- אופטימיזציה
- מיטוב
- ארגון
- ארגונים
- שֶׁלוֹ
- לוהט
- אֲנָשִׁים
- ביצועים
- פרספקטיבה
- פלטפורמה
- מדיניות
- מדיניות
- פופולרי
- עמדה
- חיובי
- אפשרי
- כּוֹחַ
- התחזיות
- יפה
- מנהל
- פְּרָטִי
- בעיות
- תהליך
- אוטומציה של תהליכים
- תהליכים
- תהליך
- הפקה
- ספק
- ספקים
- מספק
- מתן
- זכאי
- מהירות
- R & D
- להעלות
- טִוּוּחַ
- לְהַגִיעַ
- הפחתה
- לשקף
- שוחרר
- עיתונות
- נציגות
- לדרוש
- נדרש
- דרישות
- דורש
- תגובה
- אחראי
- תוצאות
- הפעלה
- ריצה
- בְּטִיחוּת
- אמר
- סולם
- מַדְעָן
- שניות
- מבחר
- רגש
- סדרה
- הגשה
- סט
- פָּשׁוּט
- יחיד
- מידה
- So
- תוכנה
- פתרונות
- לפתור
- כמה
- מתוחכם
- במיוחד
- מְהִירוּת
- מהירויות
- הוצאה
- לערום
- תֶקֶן
- התחלה
- סטארט - אפ
- חברות סטארט
- מדינה-of-the-art
- הברית
- עוד
- אסטרטגיות
- אִסטרָטֶגִיָה
- חזק יותר
- תמיכה
- תומך
- מערכות
- נבחרת
- טכני
- מונחים
- מבחן
- בדיקות
- השמיים
- לכן
- אלפים
- דרך
- זמן
- פִּי
- של היום
- יַחַד
- אסימון
- מטבעות
- כלים
- באופן מסורתי
- הדרכה
- בדרך כלל
- ui
- תחת
- עדכונים
- להשתמש
- משתמשים
- שונים
- חזון
- דרכים
- אינטרנט
- מה
- גַלגַל
- אם
- לְלֹא
- עבד
- זרימות עבודה
- כתיבה