סקירה כללית על סיוע וקטורי

‫Vector assist הוא תוסף ל-Cloud SQL ל-PostgreSQL שמפשט את הפריסה והניהול של עומסי העבודה של וקטורים ב-Cloud SQL. הוא מספק מסגרת SQL דקלרטיבית שעוזרת להגדיר יכולות חיפוש וקטורי שמוכנות להטמעה בסביבת ייצור, כמו יצירת הטמעה, אופטימיזציה של שאילתות ויצירת אינדקסים. המסגרת הזו מפחיתה את המורכבות של עומסי עבודה של וקטורים באמצעות:

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

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

איך פועל העזר ליצירת וקטורים

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

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

מפרט של עזרה בווקטור

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

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

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

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

המלצות של Vector Assist

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

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

ההמלצות של Vector assist נשמרות בטבלה שנקראת vector_assist.recommendation, ואפשר לבדוק, לשנות וליישם אותן בנפרד או כקבוצה.

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

מגבלות

כשמשתמשים בעזרה וקטורית עם מופעי Cloud SQL ל-PostgreSQL, צריך לקחת בחשבון את המגבלות הבאות:

  • התכונה 'סיוע וקטורי' תומכת רק ב-PostgreSQL מגרסה 12 ואילך.
  • למרות שתכונת העזרה הווקטורית תומכת בכל הגרסאות של pgvector, מומלץ להשתמש בגרסה העדכנית ביותר כדי לקבל ביצועים אופטימליים ותמיכה בתכונות. מידע נוסף זמין בpgvectorיומן השינויים.
  • אם המופע שלכם משתמש בתוסף google_ml_integration כדי ליצור הטבעות, ההגבלות שלו חלות גם כשאתם משתמשים בעזרה וקטורית. מידע נוסף זמין במאמר סקירה כללית על ניהול נקודות קצה של מודלים.
  • התכונה 'סיוע וקטורי' תומכת רק בסוגי האינדקסים HNSW ו-IVFFlat.
  • התכונה 'סיוע וקטורי' תומכת רק במודלים של הטמעת טקסט ליצירה אוטומטית של הטמעות, והיא משתמשת ב-text_column_name כפרמטר הקלט. אם עומס העבודה של הווקטורים דורש מודל הטמעה רב-אופני, צריך להשתמש בתוסף google_ml_integration או בתוסף אחר כדי ליצור את ההטמעות האלה באופן ידני לפני שמשתמשים בעזרה בווקטורים כדי להפעיל חיפוש סמנטי בהטמעות האלה.

המאמרים הבאים