AICODEAgentic Programming · 67723 · 2026-7

Week 2 · video 2 of 8 · transcript

Inside the Box: the Model's Role

תרגום שנעשה בעזרת בינה מלאכותית.AI translation, not reviewed by a person.

0:00

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

0:37

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

0:54

הרתמה אוספת את המשימה שלכם ומידע רלוונטי על הפרויקט, ואז שולחת בקשה למודל דרך הרשת. במערך הזה, המודל רץ על שרת מרוחק. שווה לדייק בנקודה הזאת. המודל לא נמצא על המחשב שלכם, והוא לא יכול לראות את המחשב שלכם. כל מה שהוא יודע, הרתמה הייתה צריכה לשלוח לו.

1:14

המודל שוקל את הבקשה, ומשיב. התשובה הזאת היא לעיתים קרובות לא תשובה שאתם אמורים לקרוא. במקום זאת היא בקשה משלו, לקריאה לכלי. כלי הוא משהו קונקרטי שאפשר לעשות בפרויקט שלכם, כמו לקרוא קובץ, לערוך קוד, או להריץ פקודה. המודל יכול לבקש כלי, אבל הוא לא יכול להפעיל אותו.

1:37

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

1:53

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

2:11

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

2:38

מודל אף פעם לא רואה את הטקסט שלכם כמו שאתם רואים אותו. הדבר הראשון שקורה הוא שהטקסט הגולמי שלכם מפורק לחתיכות שנקראות טוקנים. הנה הביטוי tokenization is simple, לפני שפירקנו אותו.

2:52

והנה התוצאה של הפירוק. שימו לב שהמילה tokenization הפכה לשני טוקנים, token ו-ization, בעוד שהמילה simple נשארה שלמה. אז טוקנים הם לא אותו דבר כמו מילים. הם חתיכות של טקסט, ומילים נפוצות נוטות להיות חתיכה אחת, בעוד שמילים נדירות יותר מתפרקות לכמה. אפשר אפילו לראות שחלק מהטוקנים בדוגמה שלנו כוללים את תו הרווח שמפריד בין מילים בטקסט.

3:18

לטוקנייזר יש אוצר מילים: אוסף הטוקנים שבהם הוא מייצג טקסט. למספרים קונקרטיים לאורך הסרטון נשתמש ב-Llama 3, כי המשקולות שלו פורסמו בפומבי, ולכן הגדלים והתכנון שלו מתועדים בגלוי. אוצר המילים שלו מכיל בערך מאה עשרים ושמונה אלף טוקנים. המודל עובד עם טוקנים. טוקן יכול לייצג מילה שלמה, חלק ממילה, סימן פיסוק, או חתיכות טקסט אחרות.

3:47

הטוקנים עוזרים להסביר למה ספירת אותיות יכולה להיות מסובכת למודל שפה, גם כשהשאלה נראית לנו פשוטה. כמה פעמים מופיעה האות r במילה strawberry? תשובה שגויה מוכרת ממודלי שפה היא שתיים. התשובה הנכונה היא שלוש. מודלים חדשים יותר בדרך כלל מצליחים דווקא במילה הזאת. השאלה התפרסמה כל כך, שהיא כבר מופיעה בנתוני האימון שלהם, כך שתשובה נכונה עשויה להיות שינון ולא חישוב.

4:18

כשאתם קוראים את המילה, אתם רואים עשר אותיות נפרדות פרושות לפניכם. אפשר להצביע על כל r בתורו ולספור אותם, ומקבלים שלוש.

4:28

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

4:50

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

5:17

איך אפשר להפוך משימת ספירה לאמינה יותר? גישה אחת היא להכניס את האותיות לתוך הטקסט עצמו. מודל שקודם כותב את המילה אות אחרי אות, מקבל משהו שהוא באמת יכול לספור. כתיבת האותיות יכולה לעזור, אבל היא לא מבטיחה את הספירה. המודל עשוי לאיית את המילה נכון ועדיין לספור לא נכון. לספירה מדויקת, הסוכן יכול להריץ שורת קוד. אפשר לבחון את המחרוזת ואת פעולת הספירה, ואז לבדוק את התוצאה. זה שימוש מועיל בכלים: מודל יכול לבקש מתוכנית לבצע פעולה מדויקת. כשאנחנו יודעים איך הטקסט מיוצג, קל לנו יותר לבחור דרך טובה יותר לבצע את המשימה.

6:00

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

6:20

כדי להפוך טוקן למספרים, פשוט מחפשים את השורה שלו בטבלה. כאן אנחנו מוצאים את השורה ששייכת ל-ization ושולפים אותה.

6:29

השורה הזאת היא רשימה של מספרים, וקטור, והווקטור הזה נקרא האמבדינג של הטוקן. יש המון מספרים לכל טוקן. במודל הגדול ביותר של Llama 3, כל וקטור אמבדינג מחזיק בערך שישה עשר אלף מספרים.

6:44

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

7:12

אז מה המודל בעצם עושה עם כל הווקטורים האלה? לצורך ייצור טקסט, המודל מנבא איזה טוקן יכול לבוא אחר כך. הדוגמה שלנו מתחילה במילים the cat sat on the.

7:25

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

7:34

מה שיוצא הוא לא תשובה יחידה. זו הסתברות לכל טוקן הבא אפשרי באוצר המילים. באיור הזה, ל-mat יש ההסתברות הגבוהה ביותר, ארבעים אחוז, ואחריה chair, hat ו-rug. אנחנו מציגים כמה מועמדים מתוך התפלגות על כל אוצר המילים. כדי לייצר טקסט, בוחרים טוקן מההתפלגות הזאת, מוסיפים אותו, ומבקשים את הניבוי הבא. חזרה על התהליך הזה מייצרת את התשובה.

8:04

בואו נפתח את הקופסה השחורה, ברמת האינטואיציה, כי בקורס הזה אנחנו משתמשים במודלים האלה, ולא בונים אותם בצורה מדוקדקת. מתחילים מטוקני הקלט שלנו פרושים משמאל לימין. The cat sat on the hat.

8:18

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

8:29

מעל כל טוקן אנחנו בונים מגדל גבוה של שכבות, עם אותו מבנה שחוזר על עצמו. יש שני סוגים של שכבות, והן מתחלפות. שכבות attention מוצגות בצבע אחד, ושכבות feed-forward מצוירות כסמלי הרשת הקטנים בצבע השני. מודלים אמיתיים בנויים מהרבה מאוד שכבות כאלה. כאן אנחנו מציגים רק שתיים מכל סוג, כדי שהתמונה תישאר קריאה.

8:52

החלק שמשלב מידע בין מיקומי הטוקנים נקרא attention head. שכבות ה-feed-forward מעבדות כל מיקום בנפרד. שכבות ה-attention שונות. הן מאפשרות לטוקן להסתכל אחורה על הטוקנים הקודמים ולשאוב מהם מידע. כך המודל מביא בחשבון את ההקשר שמסביב. לא נרחיב כאן על attention heads. הנקודה היא שכל מיקום יכול להשתמש במידע מכל הטוקנים שלפניו.

9:22

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

9:34

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

9:48

טקסט הופך לטוקנים, וכל טוקן הופך לווקטור נלמד. מהווקטורים האלה, המודל מנבא איזה טוקן יכול לבוא אחר כך.

9:57

שכבות attention משלבות מידע מהמיקום הנוכחי ומהמיקומים הקודמים, בעוד ששכבות feed-forward מעבדות כל מיקום בנפרד. יחד, השכבות מחשבות את הניבוי של הטוקן הבא.

10:08

זה הבסיס. כל מה שהסוכן עושה, כל תשובה וכל קריאה לכלי, עובר דרך המנבא היחיד הזה. בסרטון הבא נעקוב אחרי הניבוי הזה הלאה, דרך לולאת היצירה, אל הצ'אט, ועד לגבולות של חלון ההקשר.

10:24 of video · 1,295 words · 31 slides← Back to the video