כדאי לשדרג את החיפוש באתר: תשובות לפי הקשר בעזרת בינה מלאכותית גנרטיבית

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

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

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

תוכלו ליצור ממשק שבו המשתמשים כותבים את השאלה שלהם, ואז נשלחים למודל שפה גדול (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 מילים, שמיוצג על ידי 1097 לאסימונים אישיים. מודלים גדולים של שפה (LLM) שונים עשויים לחשב אסימונים באופן שונה, ורובם מספקים API או נקודת קצה (endpoint) כדי לחשב את מספר האסימונים לקלט טקסט.

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

  1. מוסיפים את התוכן של כתבות מובילות כהקשר כשמריצים הנחיות ל-LLM.
  2. לחפש בתוכן מאמרים שקשורים לנושא "מהן התכונות שכלולות? Interop 2024?" .

אנחנו רוצים שהתוצאות של Gemini יחזירו תוכן על סמך המאמרים הבאים:

הקלט אמור להיראות כך:

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, שיטה מקובלת כדי לשפר את הסבירות לקבלת תשובות אמיתיות מכלים של בינה מלאכותית גנרטיבית.

למרות ששיטת ה-RAG יכולה לפעול עם חיפוש טקסט מלא רגיל, יש החסרונות של הגישה.

  • חיפוש של טקסט מלא עוזר ל-AI למצוא התאמות מדויקות למילות מפתח. עם זאת, מודלים גדולים של שפה לא יכולים כדי לקבוע את המשמעות הרצויה של השאילתה של המשתמש. המצב הזה יכול לגרום הפלט לא שלם או שגוי.
  • ייתכן שיהיו בעיות כאשר למילים יש מספר משמעויות או כאשר השאילתות משתמשות מילים נרדפות. לדוגמה, "bank" (מוסד פיננסי לעומת גדת נהר) לתוצאות לא רלוונטיות.
  • חיפוש של טקסט מלא עשוי להפיק תוצאות שקורות שכוללות את מילות המפתח, לא תואמות ליעד של המשתמש.

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

  • כוונת המחפש: מנסה להבין את הסיבה שבגללה משתמש מבצע חיפוש בשביל משהו. מה הם מנסים למצוא או להשיג?
  • משמעות הקשרית: הפירוש של מילים וביטויים שקשורים אליהם את הטקסט שמסביב, וכן גורמים אחרים כמו מיקום המשתמש או החיפוש שלו בהיסטוריה.
  • הקשר בין מושגים: חיפוש סמנטי משתמש בתרשימי ידע (גדולים רשתות של ישויות קשורות) ועיבוד שפה טבעית (NLP) כדי להבין האופן שבו מילים ורעיונות מחוברים.

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

בשלב זה, ניתן להטמיע שני כלי חיפוש המשתמשים בחיפוש סמנטי: בחיפוש מבוסס-Vertex AI וגם חיפוש מבוסס-AI ב-Algolia.

שליפת תשובות מהתוכן שפורסם

למדתם איך להשתמש בהנדסת הנחיות כדי לאפשר ל-LLM לספק תשובות. שקשורה לתוכן שהוא אף פעם לא רואה, על ידי הוספת הקשר להנחיה. וגם למדו איך להתאים את הגישה הזו ממאמרים בודדים לקורפוס שלם של תוכן באמצעות Retrieval-Augmented Generation (RAG) לעיבוד טקסט. למדת איך חיפוש סמנטי יכול לשפר עוד יותר את התוצאות של משתמשים שאילתות חיפוש, יישום טוב יותר של RAG במוצר.

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