בינה מלאכותית גנרטיבית היא שימוש בבינה מלאכותית ליצירת תוכן חדש, כמו טקסט, תמונות, מוזיקה, אודיו וסרטונים. בינה מלאכותית גנרטיבית מסתמכת על מודל למידת מכונה (ML) כדי ללמוד את הדפוסים והיחסים במערך נתונים של תוכן שנוצר על ידי בני אדם.
הטכנולוגיה הזו הוכיחה יכולות מדהימות באמצעות אפליקציות כמו Gemini. אולי אתם תוהים איך מטמיעים כלים של AI גנרטיבי במוצרי האינטרנט שלכם.
דוגמה נפוצה לשימוש היא מתן ממשק משופר למשתמשים לשליחת שאלות לגבי תוכן האתר. בעזרת למידת מכונה תוכלו לשפר באופן משמעותי את תוצאות החיפוש של המשתמשים.
יצירת חיפוש ספציפי לאתר משופר
אפשר ליצור ממשק שבו המשתמשים כותבים את השאלה שלהם, ולאחר מכן היא נשלחת למודל שפה גדול (LLM), כמו Gemini, ואז מוצגות התשובות למשתמשים.
נניח שתכונה כזו הייתה קיימת באתר הזה. משתמש רוצה לדעת אילו ממשקי API כלולים ב-Interop 2024, והוא מזין את השאילתה הבאה:
What are the features included in Interop 24?
לצערנו, סביר להניח שהפלט יהיה שגוי מכמה סיבות:
- המשתמש נתן ל-LLM הקשר מועט לגבי השאלה, ולכן ה-LLM נוטה יותר להחזיר תשובות שגויות או "הזיות" (hallucination).
- סביר להניח שה-LLM עבר אימון לפני יצירת יכולת הפעולה ההדדית ב-2024 או שהתכונות שלו החליטו, ולכן הוא לא מודע למידע הזה.
אומנם יכול להיות שמודלים מסוג LLM יכולים למצוא מידע עדכני יותר, אבל מערכי נתונים של אימון ב-LLM הם מיושנים מטבעם. תחזוקה של תוצאות עדכניות יכולה להיות מאוד זמן-גוזלת ויקרה.
שימוש בהנדסת הנחיות
הנדסת הנחיות היא קבוצה של טכניקות שמאפשרות לקבל את הפלט הטוב ביותר מ-LLM.
אחת השיטות היא לספק הקשר נוסף בהנחיה, וכך יש סיכוי גבוה יותר שה-LLM יפיק תוכן שקשור להקשר.
בהמשך לדוגמה שלנו בנושא יכולת פעולה הדדית, השלב הראשון הוא לספק את התוכן המלא של המאמר כרקע. לאחר מכן מוסיפים את השאלה כקלט ל-LLM כדי לתת תשובה. לדוגמה:
Context:
Following on from the success of Interop 2022 and Interop 2023, we
are excited about the opportunity to collaborate once again with
all key browser vendors and other relevant stakeholders...
(trimmed to fit in this article)
Input:
What are the features included in Interop 2024?
הפלט הצפוי מ-Gemini נראה בערך כך:
The features included in Interop 24 are Accessibility, CSS Nesting, Custom
Properties, Declarative Shadow DOM, font-size-adjust, HTTPS URLs for
WebSocket, IndexedDB, Layout, Pointer and Mouse Events, Popover, Relative
Color Syntax, requestVideoFrameCallback, Scrollbar Styling, @starting-style
and, transition-behavior, Text Directionality, text-wrap: balance,URL
סביר להניח שהתשובה הזו תהיה טובה בהרבה מאשר תשובה להנחיה ללא הקשר, כי התשובה מבוססת על ההקשר שסיפקתם.
גדלים ומתרחבים עם RAG
לדוגמה, במקום לענות על שאלה לגבי מאמר יחיד, אנחנו רוצים שה-LLM יענה על שאלות נוספות לגבי web.dev, תוך שימוש בכל מאמר כהקשר נוסף. יכול להיות שזה אפשרי באתרים קטנים יותר, בגלל חלון ההקשר של מיליון אסימונים ב-Gemini 1.5, אבל ההרצה של הנחיות גדולות יותר איטית יותר ויקרות יותר.
אורכי הקלט והפלט של מודלי שפה גדולים נמדדים ומחויבים באסימונים, והם מאפשרים לייצג רצף משותף של תווים שנמצא בקלט טקסט. בדרך כלל, מספר האסימונים יהיה גדול יותר ממספר המילים. לדוגמה, הקלט בדוגמה הראשונה כלל 775 מילים, שמיוצגות על ידי 1,097 אסימונים. מודלים שונים של שפה גדולה עשויים לחשב אסימונים באופן שונה, ורובם מספקים API או נקודת קצה לחישוב מספר האסימונים של קלט טקסט.
פתרון אחד הוא לספק ל-LLM כתבות שרלוונטיות להנחיה. המשימה הזו צריכה להתחלק לשני חלקים:
- מוסיפים את התוכן של המאמרים המובילים כהקשר כשמפעילים את ה-LLM.
- מחפשים בתוכן מאמרים שקשורים לשאלה "מהן התכונות שכלולות ב-Interop 2024?".
אנחנו רוצים שהתוצאות של Gemini יחזירו תוכן על סמך המאמרים הבאים:
- מאמר 1: web.dev/blog/submit-your-proposals-for-interop-2024
- מאמר 2: web.dev/blog/interop-2023-wrapup
- סעיף 3: web.dev/blog/interop-2024
הקלט אמור להיראות כך:
Context:
Article 1:
Over the past two years... (trimmed)
Article 2:
At the end of last year Interop 2023 wrapped up. This effort... (trimmed)
Article 3:
Following on from the success of Interop 2022... (trimmed)
Input:
What are the features included in Interop 2024?
ההקשר הזה מניב את הפלט הצפוי.
* Accessibility * CSS Nesting * Custom Properties
* Declarative Shadow DOM * font-size-adjust
* HTTPS URLs for WebSocket * IndexedDB * Layout
* Pointer and Mouse Events * Popover * Relative Color Syntax
* requestVideoFrameCallback * Scrollbar Styling
* @starting-style and transition-behavior * Text Directionality
* text-wrap: balance * URL
לאנשים שמכירים שיטות של AI, הגישה הזו מבוססת על RAG, שיטה נפוצה לשיפור הסבירות לקבלת תשובות אמיתיות מכלים של AI גנרטיבי.
שיפור הפלט באמצעות חיפוש סמנטי
אפשר להשתמש בשיטת RAG בחיפוש טקסט מלא רגיל, אבל יש לה חסרונות.
- חיפוש טקסט מלא עוזר ל-AI למצוא התאמות מדויקות למילות מפתח. עם זאת, מודלים מסוג LLM לא יכולים לקבוע מה המשמעות של השאילתה של המשתמש. כתוצאה מכך, הפלט עשוי להיות חלקי או שגוי.
- יכולות להיות בעיות כשלמילים יש כמה משמעויות או כשמשתמשים בשאילתות במילים נרדפות. לדוגמה, המילה 'bank' (מוסד פיננסי לעומת גדת נהר) יכולה להוביל לתוצאות לא רלוונטיות.
- חיפוש טקסט מלא עשוי להניב תוצאות שמכילות את מילות המפתח, אבל לא תואמות ליעד של המשתמש.
חיפוש סמנטי הוא שיטה לשיפור הדיוק של החיפוש, באמצעות התמקדות בהיבטים המרכזיים הבאים:
- כוונת החיפוש: המערכת מנסה להבין למה המשתמש מחפש משהו. מה הם מנסים למצוא או להשיג?
- משמעות לפי הקשר: הפרשנות של מילים וביטויים ביחס לטקסט שמקיף אותם, וגם גורמים אחרים כמו המיקום של המשתמש או היסטוריית החיפושים שלו.
- הקשר בין מושגים: בחיפוש סמנטי נעשה שימוש ב-Knowledge Graph (רשתות גדולות של ישויות קשורות) ובעיבוד שפה טבעית כדי להבין איך מילים ורעיונות קשורים זה לזה.
כתוצאה מכך, כשאתם יוצרים כלים עם חיפוש סמנטי, תוצאת החיפוש מבוססת על המטרה הכוללת של השאילתה, במקום על מילות מפתח. כך כלי יכול לקבוע מסמכים רלוונטיים, גם אם מילת המפתח המדויקת לא קיימת. כך אפשר גם להימנע מתוצאות שבהן המילה קיימת, אבל יש לה משמעות שונה.
בשלב הזה, אפשר להטמיע שני כלים לחיפוש שמשתמשים בחיפוש סמנטי: Vertex AI Search ו-Algolia AI Search.
קבלת תשובות מתוכן שפורסם
למדתם איך להשתמש בתכנון הנחיות כדי לאפשר ל-LLM לספק תשובות שקשורות לתוכן שהוא מעולם לא ראה, על ידי הוספת הקשר להנחיה. בנוסף, למדתם איך להתאים את הגישה הזו ממאמרים בודדים לקובץ תוכן שלם באמצעות השיטה יצירה שמועשרת על ידי אחזור (RAG). למדתם איך חיפוש סמנטי יכול לשפר עוד יותר את התוצאות של שאילתות החיפוש של המשתמשים, וכך להטמיע בצורה טובה יותר את RAG במוצר שלכם.
ידוע שכלי AI גנרטיביים יכולים "להזות", ולכן לפעמים הם לא מהימנים, ובמקרים חמורים הם עלולים להזיק לעסק. בעזרת הטכניקות האלה, גם המשתמשים וגם המפתחים יכולים לשפר את האמינות, ואולי גם לבנות אמון בפלט מהאפליקציות האלה.