שימוש בעזרה בווקטורים

בדף הזה מוסבר איך להשתמש בעזרה בווקטורים כדי לפרוס ולנהל עומס עבודה של וקטורים במופע של Cloud SQL ל-PostgreSQL.

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

לפני שמתחילים

שימוש בעזרה בווקטורים כדי לפרוס עומס עבודה של וקטורים

כדי להשתמש ב-Vector Assist כדי לפרוס ולנהל עומס עבודה וקטורי, צריך לבצע את הפעולות הבאות:

הגדרת מפרט הווקטור

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

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

SELECT vector_assist.define_spec(
  table_name => 'TABLE_NAME',
  vector_column_name => 'VECTOR_COLUMN_NAME',
  target_recall => TARGET_RECALL,
  tune_vector_index => TUNE_INDEX
);

מחליפים את הפרמטרים הבאים:

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

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

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

צפייה בהמלצות של Vector Assist

כדי לראות את ההמלצות שנוצרו על ידי Vector Assist באמצעות מפרט הווקטורים, מריצים את הפונקציה vector_assist.get_recommendations:

SELECT vector_assist.get_recommendations(
  spec_id => 'SPEC_ID'
);

מחליפים את הפרמטרים הבאים:

  • SPEC_ID: מזהה המפרט של מפרט הווקטור שרוצים לראות המלצות לגביו.

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

איך מיישמים את ההמלצות של Vector Assist

אפשר ליישם את ההמלצות שנוצרו בנפרד או את כולן יחד.

כדי ליישם המלצה ספציפית, מריצים את הפונקציה vector_assist.apply_recommendation:

SELECT vector_assist.apply_recommendation(
  recommendation_id => 'RECOMMENATION_ID',
);

מחליפים את הפרמטרים הבאים:

  • RECOMMENDATION_ID: המזהה של ההמלצה לשימוש ב-Vector Assist שרוצים להחיל מתוך הטבלה vector_assist.RECOMMENDATIONS.

כדי להחיל את כל ההמלצות יחד, מריצים את הפונקציה vector_assist.apply_spec עם הפרמטר spec_id או table_name:

SELECT vector_assist.apply_spec(
  spec_id => 'SPEC_ID',
  table_name => 'TABLE_NAME'
);

מחליפים את הפרמטרים הבאים:

  • SPEC_ID: המזהה של מפרט הווקטור שרוצים להשתמש בו.
  • TABLE_NAME: השם של הטבלה שבה השתמשתם כדי להגדיר את מפרט הווקטור.

אפשר גם להזין את הפרמטרים schema_name או column_name.

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

יצירת שאילתות חיפוש

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

SELECT vector_assist.generate_query(
  spec_id => 'SPEC_ID',
  table_name => 'TABLE_NAME',
  column_name => 'COLUMN_NAME',
  search_text => 'SEARCH_TEXT',
  top_k => 'TOP_K_NAME',
  target_recall => TARGET_RECALL,
  filter_expression => 'FILTER_EXPRESSION'
);

מחליפים את הפרמטרים הבאים:

  • SPEC_ID: המזהה של המפרט שרוצים להשתמש בו.
  • TABLE_NAME: השם של הטבלה שבה השתמשתם כדי להגדיר את מפרט הווקטור.
  • COLUMN_NAME: השם של עמודת הטקסט המקורית שהגדרתם במפרט הווקטורים.
  • SEARCH_TEXT: הטקסט שרוצים לחפש בעמודה.
  • TOP_K: מספר השכנים הקרובים ביותר שיוחזרו.
  • TARGET_RECALL: רמת הדיוק של השליפה שרוצים להשיג באמצעות העזרה של וקטורים.
  • FILTER_EXPRESSION: כל המסננים של שאילתת החיפוש, למשל סינון לפי עמודות אחרות.

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

הפלט של הפונקציה הזו הוא טקסט שמכיל שאילתת SQL. אפשר להריץ או לשמור את שאילתת ה-SQL הזו לפי הצורך.

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