Gemini מגיע כברירת מחדל עם חלון הקשר של מיליון טוקנים. בעבר, מודלים גדולים של שפה (LLM) היו מוגבלים מאוד בכמות הטקסט (או האסימונים) שאפשר היה להעביר למודל בבת אחת. חלון ההקשר הארוך של Gemini, עם אחזור כמעט מושלם (>99%), פותח הרבה תרחישי שימוש חדשים ופרדיגמות חדשות למפתחים.
הקוד שאתם כבר משתמשים בו למקרים כמו יצירת תוכן או קלט מולטימודלי יעבוד באופן מיידי עם הקשר ארוך.
במדריך הזה נסביר בקצרה את העקרונות הבסיסיים של חלון ההקשר, איך מפתחים צריכים לחשוב על הקשר ארוך, תרחישי שימוש שונים בעולם האמיתי להקשר ארוך ודרכים לייעל את השימוש בהקשר ארוך.
מה זה חלון הקשר?
הדרך הבסיסית שבה משתמשים במודלים של Gemini היא העברת מידע (הקשר) למודל, ולאחר מכן המודל יוצר תשובה. אפשר להשוות את חלון ההקשר לזיכרון לטווח קצר. יש כמות מוגבלת של מידע שאפשר לאחסן בזיכרון לטווח קצר של מישהו, וזה נכון גם לגבי מודלים גנרטיביים.
מידע נוסף על אופן הפעולה של המודלים זמין במדריך למודלים גנרטיביים.
תחילת העבודה עם הקשר רחב
רוב המודלים הגנרטיביים שנוצרו בשנים האחרונות היו מסוגלים לעבד רק 8,000 טוקנים בכל פעם. בדגמים חדשים יותר, חלון ההקשר הורחב עוד יותר והוא יכול להכיל 32,000 או 128,000 טוקנים. Gemini הוא המודל הראשון שיכול לקבל מיליון טוקנים.
בפועל, מיליון טוקנים ייראו כך:
- 50,000 שורות קוד (עם 80 תווים סטנדרטיים בכל שורה)
- כל הודעות ה-SMS ששלחתם ב-5 השנים האחרונות
- 8 רומנים באנגלית באורך ממוצע
- תמלילים של יותר מ-200 פרקים של פודקאסטים באורך ממוצע
למרות שהמודלים יכולים לקבל יותר ויותר הקשר, הרבה מההנחות המקובלות לגבי השימוש במודלים גדולים של שפה מניחות את המגבלה המובנית הזו על המודל, אבל נכון לשנת 2024, זה כבר לא המצב.
כמה אסטרטגיות נפוצות להתמודדות עם המגבלה של חלונות הקשר הקטנים:
- הסרה שרירותית של הודעות או טקסט ישנים מחלון ההקשר כשמגיע טקסט חדש
- סיכום של תוכן קודם והחלפתו בסיכום כשהחלון ההקשר מתקרב למצב מלא
- שימוש ב-RAG עם חיפוש סמנטי כדי להעביר נתונים מחלון ההקשר למסד נתונים וקטורי
- שימוש במסננים דטרמיניסטיים או גנרטיביים כדי להסיר טקסט או תווים מסוימים מההנחיות כדי לחסוך באסימונים
הרבה מהשיטות האלה עדיין רלוונטיות במקרים מסוימים, אבל כברירת מחדל, עדיף פשוט להכניס את כל האסימונים לחלון ההקשר. המודלים של Gemini נבנו במיוחד עם חלון הקשר ארוך, ולכן הם מסוגלים ללמוד מתוך ההקשר בצורה טובה יותר.
הדוגמה הזו מדגישה איך אפשר להתחיל לחשוב על מה שאפשר לעשות עם הקשר ארוך ויכולות הלמידה בהקשר של Gemini.
תרחישי שימוש בהקשר ארוך
תרחיש השימוש הסטנדרטי ברוב המודלים הגנרטיביים הוא עדיין קלט טקסט, אבל משפחת המודלים של Gemini מאפשרת פרדיגמה חדשה של תרחישי שימוש מולטי-מודאליים. המודלים האלה יכולים להבין באופן טבעי טקסט, וידאו, אודיו ותמונות. לנוחיותכם, הם מגיעים עם Gemini Enterprise API ל-Gemini, שמקבל סוגי קבצים מולטי-מודאליים.
טקסט ארוך
הטקסט הוא שכבת האינטליגנציה שעומדת בבסיס רוב המומנטום סביב מודלים גדולים של שפה. כמו שציינתי קודם, הרבה מהמגבלות המעשיות של מודלים גדולים של שפה (LLM) נבעו מכך שלא היה להם חלון הקשר גדול מספיק כדי לבצע משימות מסוימות. זה הוביל לאימוץ מהיר של יצירה משולבת-אחזור (RAG) וטכניקות אחרות שמספקות למודל מידע הקשרי רלוונטי באופן דינמי. עכשיו, עם חלונות הקשר גדולים יותר ויותר, יש טכניקות חדשות שמאפשרות תרחישי שימוש חדשים.
הנה כמה תרחישי שימוש חדשים וסטנדרטיים בהקשר ארוך מבוסס-טקסט:
- סיכום של קורפוסים גדולים של טקסט
- כדי להשתמש באפשרויות סיכום קודמות עם מודלים קטנים יותר של הקשר, צריך להשתמש בחלון נע או בטכניקה אחרת כדי לשמור את המצב של הקטעים הקודמים כשמועברים טוקנים חדשים למודל.
- שאלות ותשובות
- בעבר, זה היה אפשרי רק באמצעות RAG, בהתחשב בכמות המוגבלת של ההקשר ובזיכרון העובדתי הנמוך של המודלים
- תהליכי עבודה אג'נטיים
- הטקסט הוא הבסיס לאופן שבו סוכנים שומרים את המצב של מה שהם עשו ומה שהם צריכים לעשות. חוסר מידע מספיק על העולם ועל המטרה של הסוכן הוא מגבלה על המהימנות של הסוכנים.
למידה בהקשר עם הרבה דוגמאות היא אחת מהיכולות הייחודיות ביותר שמתאפשרות בזכות מודלים עם הקשר ארוך. מחקרים הראו שאם לוקחים את הפרדיגמה הנפוצה של דוגמה אחת או כמה דוגמאות, שבהן המודל מקבל דוגמה אחת או כמה דוגמאות למשימה, ומרחיבים אותה למאות, אלפים או אפילו מאות אלפי דוגמאות, אפשר להגיע ליכולות חדשות של המודל. הוכח גם שהגישה הזו של למידה עם הרבה דוגמאות פועלת באופן דומה למודלים שעברו כוונון עדין למשימה ספציפית. בתרחישי שימוש שבהם הביצועים של מודל Gemini עדיין לא מספיקים להשקה בסביבת ייצור, אתם יכולים לנסות את הגישה של למידה עם הרבה דוגמאות. כפי שאפשר לראות בהמשך, בקטע על אופטימיזציה של הקשר ארוך הטווח, שמירת הקשר במטמון הופכת את סוג עומס העבודה הזה של טוקנים עם נתוני קלט רבים לכלכלי הרבה יותר, ובמקרים מסוימים גם מקצר את זמן האחזור.
סרטון ארוך
התועלת של קטע וידאו מוגבלת כבר זמן רב בגלל חוסר הנגישות של המדיום עצמו. היה קשה לסרוק את התוכן, התמלילים לרוב לא הצליחו לתעד את הניואנסים של סרטון, ורוב הכלים לא מעבדים תמונה, טקסט ואודיו ביחד. היכולות של Gemini לעיבוד טקסט עם הקשר ארוך מאפשרות לו להסיק מסקנות ולענות על שאלות לגבי קלט מולטי-מודאלי, תוך שמירה על רמת ביצועים גבוהה.
הנה כמה תרחישי שימוש חדשים ונפוצים בהקשר ארוך של סרטונים:
- שאלות ותשובות בסרטונים
- זיכרון הווידאו, כפי שמוצג ב-פרויקט Astra של Google
- כתוביות לסרטונים
- מערכות להמלצות על סרטונים, על ידי העשרת המטא-נתונים הקיימים באמצעות הבנה מולטי-מודאלית חדשה
- התאמה אישית של סרטונים על סמך ניתוח של מאגר נתונים ומטא-נתונים של סרטונים, והסרת חלקים בסרטונים שלא רלוונטיים לצופה
- בדיקת תוכן וידאו
- עיבוד סרטונים בזמן אמת
כשעובדים עם סרטונים, חשוב להבין איך הסרטונים מעובדים לטוקנים, כי זה משפיע על החיוב ועל מגבלות השימוש. מידע נוסף על יצירת הנחיות באמצעות קובצי וידאו זמין במדריך ליצירת הנחיות.
אודיו ארוך
המודלים של Gemini היו המודלים הגדולים של שפה (LLM) הראשונים שהיו מולטי-מודאליים באופן טבעי ויכלו להבין אודיו. בעבר, תהליך העבודה הטיפוסי של מפתחים כלל שרשור של כמה מודלים ספציפיים לתחום, כמו מודל של המרת דיבור לטקסט (STT) ומודל של יצירת טקסט על סמך טקסט, כדי לעבד אודיו. הדבר הוביל לזמן אחזור נוסף שנדרש לביצוע של כמה בקשות הלוך ושוב, ולירידה בביצועים שבד"כ משויכת לארכיטקטורות מנותקות של הגדרת כמה מודלים.
הנה כמה תרחישי שימוש חדשים וסטנדרטיים להקשר של אודיו:
- תמלול ותרגום בזמן אמת
- שאלות ותשובות לגבי פודקאסטים או סרטונים
- תמלול וסיכום של פגישות
- עוזרים קוליים
במדריך לכתיבת הנחיות מוסבר איך להשתמש בקובצי אודיו בהנחיות.
אופטימיזציות של הקשר ארוך
האופטימיזציה העיקרית כשעובדים עם הקשר ארוך ועם מודלים של Gemini היא שימוש בשמירת הקשר במטמון. מעבר לחוסר היכולת לעבד הרבה אסימונים בבקשה אחת, המגבלה העיקרית השנייה הייתה העלות. אם יש לכם אפליקציה שמאפשרת למשתמשים לשוחח עם הנתונים שלהם, והמשתמש מעלה 10 קובצי PDF, סרטון וכמה מסמכים שקשורים לעבודה, בעבר הייתם צריכים להשתמש בכלי או במסגרת מורכבים יותר של שליפה משופרת של מידע (RAG) כדי לעבד את הבקשות האלה, ולשלם סכום משמעותי על טוקנים שהועברו לחלון ההקשר. עכשיו אפשר לשמור במטמון את הקבצים שהמשתמש מעלה ולשלם על אחסון שלהם לפי שעה. עלות הקלט / פלט לכל בקשה נמוכה מעלות הקלט / פלט הרגילה, כך שאם המשתמש מתכתב בצ'אט עם הנתונים שלו מספיק פעמים, זה חוסך לכם כמפתחים הרבה כסף.
מגבלות של הקשר ארוך
בקטעים שונים במדריך הזה הסברנו איך מודלים של Gemini משיגים ביצועים גבוהים במגוון רחב של הערכות של שליפת מידע (needle-in-a-haystack). הבדיקות האלה מתייחסות להגדרה הבסיסית ביותר, שבה יש מחט אחת שאתם מחפשים. במקרים שבהם אתם מחפשים כמה 'מחטים' או פיסות מידע ספציפיות, המודל לא יפעל באותה רמת דיוק. הביצועים יכולים להשתנות במידה רבה בהתאם להקשר. חשוב להביא את זה בחשבון כי יש פשרה מובנית בין אחזור המידע הנכון לבין העלות. אפשר להגיע לדיוק של כ-99% בשאילתה אחת, אבל צריך לשלם את עלות הטוקן של הקלט בכל פעם ששולחים את השאילתה הזו. לכן, כדי לאחזר 100 פריטי מידע, אם נדרשים ביצועים של 99%, סביר להניח שתצטרכו לשלוח 100 בקשות. זו דוגמה טובה למצב שבו שמירת מטמון של ההקשר יכולה להפחית באופן משמעותי את העלות שקשורה לשימוש במודלים של Gemini, תוך שמירה על רמת ביצועים גבוהה.
המאמרים הבאים
הצגת רשימה של טוקנים וספירתם
אתם יכולים להשתמש ב-Google Gen AI SDK כדי לראות רשימה של האסימונים ומזהי האסימונים של הנחיה, ולקבל את המספר הכולל של האסימונים בהנחיה.