פיתוח אפליקציה של AI גנרטיבי
במאמר הזה נסביר איך להתמודד עם האתגרים בכל שלב בפיתוח אפליקציה של AI גנרטיבי. הוא מתאר איך לבחור מודל, להתאים אישית את הפלט של המודל בהתאם לצרכים שלכם, להעריך את ההתאמות האישיות ולפרוס את המודל. במסמך הזה אנחנו מניחים שכבר יש לכם תרחיש לדוגמה, ושהוא מתאים ל-AI גנרטיבי. במאמר הערכה והגדרה של תרחיש שימוש עסקי של AI גנרטיבי מוסבר איך לפתח תרחיש שימוש.
לפני שמתחילים לפתח אפליקציית AI גנרטיבי, צריך להעריך את המוכנות הטכנית של הארגון (היכולות והתשתית). במאמר סדנה בנושא מוכנות ל-AI מוסבר איך להעריך את יכולות ה-AI שלכם וליצור תוכנית עבודה כדי לנצל את הפוטנציאל שלהן. אם אתם מתכננים לפתח תהליכי עבודה אוטומטיים באמצעות AI גנרטיבי, כדאי לבדוק אם צריך לכלול בני אדם בשלבים קריטיים של קבלת החלטות. בדיקה אנושית יכולה לעזור בקבלת החלטות כמו הבטחת שימוש אחראי, עמידה בדרישות ספציפיות של בקרת איכות או מעקב אחרי תוכן שנוצר.
מודלים של AI גנרטיבי
מודלי הבסיס של AI גנרטיבי מאומנים על מערכי נתונים בגודל של כמה טרה-בייטים, שמכילים טקסט, תמונות, קוד או מולטימדיה אחרת. הנתונים והארכיטקטורה של המודל מאפשרים למודלים לזהות דפוסים מורכבים, להבין לעומק את ההקשר וליצור תוכן חדש כמו טקסט, תמונות, מוזיקה או סרטונים על סמך נתוני האימון.
מודלי בסיס הם הליבה שעליה נבנים יישומים רבים של AI גנרטיבי. היכולות של המודלים מתורגמות ליכולות חדשות: באמצעות הוראה פשוטה של פרומפט טקסטואלי, מודלים בסיסיים של AI גנרטיבי יכולים ללמוד לבצע מגוון משימות – כמו לתרגם שפות, לענות על שאלות, לכתוב שיר או לכתוב קוד – בלי אימון מפורש לכל משימה. מודלים בסיסיים של AI גנרטיבי יכולים גם להתאים את עצמם לביצוע משימות ספציפיות באמצעות טכניקות מסוימות של הנחיות, או שאפשר לכוונן אותם באמצעות כמות מינימלית של נתוני אימון נוספים.
מודלים גדולים של שפה (LLM) מאומנים על טקסט, והם דוגמה אחת למודלים בסיסיים שבדרך כלל מבוססים על ארכיטקטורות של למידה עמוקה, כמו Transformer שפותח על ידי Google ב-2017. אפשר לאמן מודלי LLM על מיליארדי דוגמאות טקסט ותכנים אחרים, ולהתאים אותם אישית לדומיינים ספציפיים.
מודלים מולטי-מודאליים אחרים מרחיבים את היכולת של אפליקציית AI גנרטיבי לעבד מידע מכמה קטגוריות, כולל תמונות, סרטונים, אודיו וטקסט. פרומפטים מולטי-מודאליים משלבים כמה פורמטים של קלט, כמו טקסט, תמונות ואודיו. לדוגמה, אתם יכולים להזין תמונה ולבקש מאפליקציית AI גנרטיבי לפרט או לתאר את האובייקטים שבתמונה. המודלים של Gemini של Google בנויים מהיסוד למולטי-מודאליות, והם יכולים להסיק מסקנות בצורה חלקה מטקסט, תמונות, וידאו, אודיו וקוד. בעזרת Model Garden ו-Vertex AI של Google Cloud, אתם יכולים למצוא ולהתאים אישית מגוון מודלים בסיסיים של Google, של קוד פתוח ושל צד שלישי.
בחירת מודל
כשבוחרים מודל, חשוב להביא בחשבון את המודאליות, הגודל והעלות שלו. בחרו את המודל הכי משתלם שעדיין עומד בדרישות שלכם לגבי איכות התשובות וזמן האחזור.
- מודאליות: כפי שמתואר בסעיף הקודם, המודאליות של מודל תואמת לקטגוריות נתונים ברמה גבוהה שהמודל מאומן עבורן, כמו טקסט, תמונות ווידאו. בדרך כלל, התרחיש לדוגמה והמודאליות של המודל קשורים זה לזה באופן הדוק. אם אתם רוצים ליצור תמונות לפי טקסט, אתם צריכים למצוא מודל שאומן על נתוני טקסט ותמונות. אם אתם צריכים את הגמישות של כמה מודלים, כמו בחיפוש מולטימודלי, יש מודלים שתומכים גם בתרחישי שימוש מולטימודליים, אבל העלות והזמן האחזור עשויים להיות גבוהים יותר.
- ב-Vertex AI יש רשימה גדולה של מודלים של AI גנרטיבי שאפשר להשתמש בהם.
- ב-Model Garden יש רשימה של מודלים של למידת מכונה (ML) של Google ושל קוד פתוח ב-Google Cloud.
- גודל: הגודל של מודל נמדד בדרך כלל לפי מספר הפרמטרים. באופן כללי, מודל גדול יותר יכול ללמוד דפוסים וקשרים מורכבים יותר בנתונים, וכך לספק תשובות באיכות גבוהה יותר. למודלים גדולים יותר באותה משפחה יכולים להיות זמן אחזור ועלויות גבוהים יותר, לכן יכול להיות שתצטרכו להתנסות במודלים ולהעריך אותם כדי לקבוע איזה גודל מודל הכי מתאים לתרחיש לדוגמה שלכם.
עלות: העלות של מודל קשורה ליכולות שלו, שבדרך כלל קשורות למספר הפרמטרים של המודל. גם המדידה והחיוב של המודלים יכולים להיות שונים. לדוגמה, במודלים מסוימים החיוב מבוסס על מספר הטוקנים של הקלט והפלט. במודלים אחרים, החיוב מבוסס על מספר שעות השימוש בצומת בזמן שהמודל פרוס.
למידע על מחירי המודלים של AI גנרטיבי ב-Vertex AI, קראו את המאמר התמחור של Vertex AI.
למידע על עלות פריסת המודלים ב-Google Kubernetes Engine (GKE), קראו את המאמר תמחור GKE.
תכונות: לא כל המודלים תומכים בתכונות כמו כוונון וזיקוק. אם היכולות האלה חשובות לכם, כדאי לבדוק אילו תכונות נתמכות בכל מודל.
פרומפטים לעיצוב
עיצוב פרומפטים הוא תהליך של יצירת צמדים של פרומפטים ותשובות כדי לתת למודלי שפה הקשר והוראות נוספים. אחרי שיוצרים את ההנחיות, מזינים אותן במודל כמערך נתונים של הנחיות לאימון מקדים. כשהמודל מציג תחזיות, הוא מגיב בהתאם להוראות שהגדרתם.
אם אתם רוצים לקבל פלט ספציפי, אתם יכולים להשתמש באסטרטגיות לעיצוב הנחיות, כמו להורות למודל להשלים קלט חלקי או לתת למודל דוגמאות לתשובות אידיאליות. מידע נוסף זמין במאמר הנדסת פרומפטים ל-AI אקטיבי.
התאמה אישית של מודל
אחרי תכנון ההנחיות, יכול להיות שתגלו שהתשובות של המודל מספיק טובות, ולא תצטרכו להתאים אותו אישית. אם המודל לא פועל כמו שצריך, למשל אם הוא יוצר הזיות, אתם יכולים להשתמש בשיטות נוספות להתאמה אישית. בקטעים הבאים נציג את השיטות האלה ונסביר איך האפשרויות האלה משפיעות על הפלט של המודל.
קריאה להפעלת פונקציות ותוספים
קריאה להפעלת פונקציות ותוספים ל-Vertex AI מרחיבים את היכולות של המודל. חשבו על התרחישים לדוגמה של האפליקציה שלכם, ועל המקרים שבהם שימוש במודל בלבד לא מספיק. כדי לעזור למודל, אתם יכולים להוסיף קריאה להפעלת פונקציות או תוספים. לדוגמה, המודל יכול לחלץ מידע על לוח זמנים מטקסט, ואז להשתמש בתוסף כדי למצוא מקום ולהזמין אותו.
אפשר להשתמש בקריאה להפעלת פונקציות ובתוספים באופן דומה, אבל יש כמה הבדלים ברמה גבוהה. קריאה להפעלת פונקציות היא פעולה אסינכרונית, ואין צורך לכלול פרטי כניסה בקוד. בתוספים של Vertex AI יש אפשרויות מובנות שאפשר להשתמש בהן למשימות מורכבות, כדי שלא תצטרכו לכתוב פונקציות משלכם. עם זאת, מכיוון שתוספי Vertex AI מחזירים פונקציות וקוראים להן בשבילכם, אתם צריכים לכלול פרטי כניסה בקוד.
עיגון
עיגון הוא תהליך שבו התשובות של המודל מועשרות על ידי קישור שלהן למקורות מידע שאפשר לאמת. כדי לבסס מודל, מחברים אותו למקור נתונים. העיגון של המודל עוזר לשפר את האמינות של התוכן שנוצר על ידי צמצום ההזיות.
יצירה משולבת-אחזור (RAG) היא טכניקת עיגון נפוצה. RAG משתמש בפונקציונליות של חיפוש כדי למצוא מידע רלוונטי, ואז מוסיף את המידע הזה להנחיה של המודל. כשמשתמשים ב-RAG, הפלט מבוסס על עובדות ועל המידע העדכני ביותר. חיפוש RAG משתמש בהטמעות וקטורים ובמסדי נתונים וקטוריים, שמאחסנים נתונים כייצוגים מספריים של נתונים לא מובְנים כמו טקסט ותמונות. מידע נוסף זמין במאמר מהו מסד נתונים וקטורי.
למידע ולמידה על עיגון ב-Vertex AI, ראו סקירה כללית על עיגון ב-Vertex AI. בדוגמה לתהליך עבודה של הטמעה מוסבר איך מגדירים תהליך עבודה של הטמעה ב-AlloyDB ל-PostgreSQL.
כוונון המודל
משימות מיוחדות, כמו אימון של מודל שפה על טרמינולוגיה ספציפית, עשויות לדרוש יותר אימון ממה שאפשר לעשות באמצעות עיצוב הנחיות בלבד. במצב כזה, אתם יכולים להשתמש בכוונון מודל כדי לשפר את הביצועים ולגרום למודל לעמוד בדרישות פלט ספציפיות.
כדי לכוונן מודל, צריך ליצור מערך נתונים לאימון ואז לבחור שיטת כוונון, כמו כוונון בפיקוח, למידה ממשוב אנושי (RLHF) או זיקוק מודל. הגודל של קבוצת הנתונים ושיטות הכוונון תלויים במודל ובמטרה של האופטימיזציה. לדוגמה, משימות ספציפיות ונישתיות דורשות מערך נתונים קטן יותר כדי להשיג שיפורים משמעותיים. מידע נוסף על כוונון מודלים זמין במאמר כוונון מודלים בסיסיים של שפה.
הערכת מודל
הערכת מודלים עוזרת לכם לבדוק איך ההנחיות וההתאמות האישיות משפיעות על ביצועי המודל. לכל שיטת הערכה יש יתרונות וחסרונות משלה שצריך להביא בחשבון. לדוגמה, אפשר להפוך הערכות שמבוססות על מדדים לאוטומטיות ולהרחיב אותן במהירות, באמצעות דרך שניתן לכמת כדי למדוד את הביצועים. עם זאת, מדדים יכולים לפשט את התוצאות יותר מדי, ולפספס את ההקשר ואת הניואנסים של השפה הטבעית. כדי להתגבר על החסרונות האלה, כדאי להשתמש במגוון רחב של מדדים בשילוב עם הערכות אנושיות.
בינה מלאכותית גנרטיבית ב-Vertex AI מציעה הערכה מקבילה אוטומטית, שמאפשרת להשוות את הפלט של שני מודלים לאמת קרקע (ground truth). מודל שלישי עוזר לכם לבחור את התשובות האיכותיות יותר. הערכה אוטומטית מקבילה היא כמו הערכה של בודקים אנושיים, אבל היא מהירה יותר וזמינה על פי דרישה. עם זאת, כדי לבצע את ההשוואות, השיטה הזו דורשת מודל גדול יותר מהמודלים שאתם מעריכים, מה שעלול להוביל להטיות מובנות. לכן, עדיין כדאי לבצע הערכות אנושיות.
בכל שיטות ההערכה, צריך מערך נתונים להערכה. קבוצת נתונים להערכה כוללת צמדים של הנחיות ואמת קרקע (ground truth) (התשובה האידיאלית) שאתם יוצרים. כדי לקבל תוצאות משמעותיות, כשאתם יוצרים את מערך הנתונים, כדאי לכלול מגוון דוגמאות שמתאימות למשימה שאתם מעריכים.
פריסת מודל
פריסת מודל משייכת נקודת קצה ומשאבי מכונה פיזיים למודל, כדי להציג חיזויים אונליין עם זמן אחזור קצר. לא כל המודלים דורשים פריסה. לדוגמה, למודלים הבסיסיים של Google שזמינים ב-AI גנרטיבי ב-Vertex AI כבר יש נקודות קצה. נקודות הקצה הן ספציפיות לפרויקט ב- Google Cloud , ואפשר להשתמש בהן באופן מיידי. עם זאת, אם אתם מכווננים את אחד מהמודלים האלה, אתם צריכים לפרוס אותם בנקודת קצה.
כשפורסים מודל, צריך להחליט אם לפרוס אותו בסביבה מנוהלת או בסביבה בניהול עצמי. בסביבה מנוהלת לחלוטין, אתם בוחרים את המשאבים הפיזיים שאתם צריכים, כמו סוג המכונה וסוג המאיץ, ואז Vertex AI יוצר ומנהל את המשאבים בשבילכם. לדוגמה, כדי להפעיל חיזויים אונליין שבהם Vertex AI מנהל בשבילכם את משאבי הפריסה, קראו את המאמר פריסת מודל בנקודת קצה (endpoint). בסביבה בניהול עצמי יש לכם שליטה מדויקת יותר על המשאבים, אבל אתם צריכים לנהל אותם בעצמכם. בסביבות בניהול עצמי, אתם יכולים להפעיל מודלים בפלטפורמות כמו GKE.
אחרי שתחליטו באיזה סוג סביבה אתם רוצים לפרוס, כדאי להביא בחשבון את התנועה הצפויה, את דרישות זמן האחזור ואת התקציב. צריך לאזן בין הגורמים האלה לבין המשאבים הפיזיים שלכם. לדוגמה, אם עלות נמוכה היא בעדיפות גבוהה, יכול להיות שתוכלו לסבול זמן אחזור ארוך יותר עם מכונות בעלות נמוכה יותר. סביבות בדיקה הן דוגמה טובה לפשרה הזו. למידע נוסף על בחירת סוג מכונה, קראו את ה-notebook Determining the ideal machine type to use for Vertex AI endpoints.
אתיקה של בינה מלאכותית
ה-AI הגנרטיבי ב-Vertex AI תוכנן בהתאם לעקרונות ה-AI של Google. עם זאת, חשוב לבדוק את המודלים כדי לוודא שהשימוש בהם בטוח ואחראי. בגלל הרבגוניות המדהימה של מודלי LLM, קשה לחזות תשובות לא מכוונות או בלתי צפויות.
כשאתם מפתחים אפליקציות לתרחיש לדוגמה שלכם, חשוב להביא בחשבון את המגבלות של מודלים של AI גנרטיבי כדי שתוכלו לצמצם כראוי את הסיכוי לשימוש לרעה ולבעיות לא מכוונות. דוגמה אחת למגבלה של מודל היא שהמודל טוב רק כמו הנתונים שבהם משתמשים. אם תספקו למודל נתונים לא אופטימליים, כמו נתונים לא מדויקים או חלקיים, לא תוכלו לצפות לביצועים אופטימליים. חשוב לוודא שההנחיות ונתוני הקלט מדויקים. אחרת, המודל עלול להניב ביצועים לא אופטימליים או פלט שגוי. מידע נוסף על המגבלות של מודלים של AI גנרטיבי זמין במאמר בינה מלאכותית (AI) אחראית.