סקירה כללית על AI גנרטיבי

במאמר הזה מתוארות הפונקציות של בינה מלאכותית (AI) גנרטיבית שנתמכות ב-BigQuery. הפונקציות האלה מקבלות קלט בשפה טבעית ומשתמשות במודלים של Gemini Enterprise Agent Platform שעברו אימון מראש ובמודלים מובנים של BigQuery.

ב-BigQuery יש מגוון פונקציות מבוססות-AI שיכולות לעזור במשימות כמו:

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

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

  • פונקציות AI לשימוש כללי: הפונקציות האלה מאפשרות לכם שליטה מלאה ושקיפות בבחירת המודל, ההנחיה והפרמטרים לשימוש.

    • ביצוע הסקה של מודל שפה גדול (LLM), למשל כדי לענות על שאלות לגבי הנתונים

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

      • AI.GENERATE, כשמציינים סכימת פלט.
      • AI.GENERATE_TABLE היא גרסה של AI.GENERATE שמחזירה ערך של טבלה, קוראת למודל מרוחק ומאפשרת לציין סכימת פלט מותאמת אישית.
      • אם סכימת הפלט כוללת שדה יחיד, אפשר להשתמש באחת מהפונקציות הייעודיות: AI.GENERATE_BOOL,‏ AI.GENERATE_DOUBLE או AI.GENERATE_INT.
    • יצירת הטמעות לחיפוש סמנטי ולאשכול

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

    • AI.IF: סינון הנתונים באמצעות תנאים בשפה טבעית.

    • AI.SCORE: להזין דירוג, למשל לפי איכות או סנטימנט.

    • AI.CLASSIFY: סיווג קלט לקטגוריות שהוגדרו על ידי המשתמש.

    • AI.AGG: קלט מצטבר לסיכום או לניתוח הנתונים.

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

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

פונקציות AI לשימוש כללי

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

ביצוע הסקת מסקנות באמצעות LLM

הפונקציה AI.GENERATE היא פונקציית הסקה גמישה שפועלת על ידי שליחת בקשות למודל Gemini בפלטפורמת הסוכנים של Gemini Enterprise והחזרת התשובה של המודל הזה. אפשר להשתמש בפונקציה הזו כדי לנתח נתונים של טקסט, תמונה, אודיו, סרטון או PDF. לדוגמה, אפשר לנתח תמונות של ריהוט לבית כדי ליצור טקסט עבור design_typeעמוד, כך שלמק"ט הריהוט יהיה תיאור משויך, כמו mid-century modern או farmhouse.

אפשר לבצע משימות של AI גנרטיבי באמצעות מודלים מרוחקים ב-BigQuery ML כדי להפנות למודלים שנפרסו ב-Agent Platform או מתארחים בה, באמצעות הפונקציה AI.GENERATE_TEXT שמוחזרת כטבלה. אפשר להשתמש בסוגים הבאים של מודלים מרוחקים:

כדי לנסות ליצור טקסט ב-BigQuery ML, אפשר להיעזר בנושאים הבאים:

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

יצירת נתונים מובְנים

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

אפשר ליצור נתונים מובְנים בדרכים הבאות:

יצירת הטמעות

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

אלה כמה תרחישי שימוש נפוצים להטמעה של יצירה:

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

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

פונקציות מנוהלות של AI

פונקציות מנוהלות של AI מפשטות משימות שגרתיות, כמו סינון, סיווג או צבירה. הפונקציות האלה יכולות לנתח נתונים של טקסט, תמונה, אודיו, סרטון או PDF. הפונקציות האלה משתמשות ב-Gemini ולא דורשות התאמה אישית. ‫BigQuery משתמש בהנדסת הנחיות ויכול לבחור את המודל והפרמטרים המתאימים לשימוש במשימה הספציפית כדי לשפר את האיכות והעקביות של התוצאות. כל פונקציה מחזירה ערך סקלרי, כמו BOOL, FLOAT64 או STRING, ולא כוללת מידע נוסף על הסטטוס מהמודל. הפונקציות הבאות של AI מנוהל זמינות:

  • AI.IF: סינון טקסט או נתונים מולטי-מודאליים, למשל בסעיף WHERE או JOIN, על סמך הנחיה. לדוגמה, אפשר לסנן את תיאורי המוצרים לפי תיאורים של פריטים שיכולים להתאים כמתנה.
  • AI.SCORE: דירוג של קלט על סמך הנחיה, כדי לדרג שורות לפי איכות, דמיון או קריטריונים אחרים. אפשר להשתמש בפונקציה הזו בסעיף ORDER BY כדי לחלץ את K הפריטים המובילים לפי הניקוד. לדוגמה, אפשר למצוא את 10 ביקורות המשתמשים הכי חיוביות או הכי שליליות על מוצר מסוים.
  • AI.CLASSIFY: סיווג טקסט לקטגוריות שהוגדרו על ידי המשתמש. אפשר להשתמש בפונקציה הזו בסעיף GROUP BY כדי לקבץ קלט לפי הקטגוריות שמגדירים. לדוגמה, אפשר לסווג כרטיסי תמיכה לפי הנושאים שלהם: חיוב, משלוח, איכות המוצר או נושא אחר.
  • AI.AGG: סיכום או ניתוח של הנתונים על סמך הוראות בשפה טבעית. לדוגמה, אפשר לסרוק יומנים של סשנים של משתמשים באפליקציה כדי לזהות נקודות שבהן הלקוחות נתקלים בקשיים, או לסכם את התוכן של קבוצה גדולה של תמונות.

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

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

פונקציות ספציפיות למשימות

בנוסף לפונקציות הכלליות יותר שמתוארות בקטעים הקודמים, אפשר לפתח פתרונות ספציפיים למשימות ב-BigQuery ML באמצעות ממשקי Cloud AI. דוגמאות למשימות שנתמכות:

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

מיקומים

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

‫BigQuery תומך במודלים gemini-3.1-flash-lite ו-gemini-3.5-flash. פלטפורמת הסוכנים תומכת רק בנקודות קצה מרובות אזורים עבור המודלים האלה. אין תמיכה בנקודות קצה אזוריות. אם מציינים שם קצר לנקודת קצה בלי האזור, כמו gemini-3.5-flash, BigQuery בוחר נקודת קצה לפי הכללים הבאים:

  • אם השאילתה מורצת באזור us או בכל אזור יחיד בארה"ב, BigQuery משתמש בנקודת הקצה us.
  • אם השאילתה מורצת באזור eu או בכל אזור יחיד באיחוד האירופי מלבד europe-west2 או europe-west6, מערכת BigQuery משתמשת בנקודת הקצה eu.
  • בכל המיקומים האחרים, כולל europe-west2 ו-europe-west6, נעשה שימוש בנקודת הקצה global של BigQuery.
כדי לציין נקודת קצה ספציפית, משתמשים בשם נקודת קצה רב-אזורית מוגדר במלואו באחד מהפורמטים הבאים:
  • https://aiplatform.us.rep.googleapis.com/v1/projects/PROJECT_ID/locations/us/publishers/google/models/MODEL_ID
  • https://aiplatform.eu.rep.googleapis.com/v1/projects/PROJECT_ID/locations/eu/publishers/google/models/MODEL_ID
  • https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/MODEL_ID
אם השאילתה שלכם פועלת באזור asia-south1, אתם צריכים להשתמש בשם נקודת הקצה הגלובלית המוגדר במלואו.

מגבלות

בתוך היקף של VPC Service Controls, פונקציות AI לא יכולות לעבד ערכים של ObjectRef שמשתמשים בגישה שהוקצתה. גישה בהרשאת אדמין יוצרת כתובת URL חתומה מסוג HTTPS לאובייקט, ו-Agent Platform חוסמת אחזור של HTTP ו-HTTPS עבור פרויקטים בתוך גבולות גזרה. הפונקציה כותבת את השגיאה הבאה בשדה status של הפלט שלה:

INVALID_ARGUMENT: HTTP links are not supported for requests restricted by VPCSC.

מכיוון שהעמודה ref של טבלת אובייקטים תמיד משתמשת בחיבור של טבלת האובייקטים כמאשר, העברת ref לפונקציית AI בתוך גבולות גזרה תמיד מחזירה את השגיאה הזו. כדי לנתח את האובייקט, מעבירים ערך של OBJ.MAKE_REF(uri) עם ארגומנט יחיד, שמשתמש בגישה ישירה ושולח את ה-URI של Cloud Storage למודל בלי ליצור כתובת URL חתומה.

תמחור

אתם מחויבים על משאבי החישוב שבהם אתם משתמשים כדי להריץ שאילתות על מודלים. מודלים מרוחקים מבצעים קריאות למודלים של Agent Platform, ולכן גם שאילתות שמופנות למודלים מרוחקים כרוכות בחיובים מ-Agent Platform.

מידע נוסף על התמחור של BigQuery ML

מעקב אחר השימוש בטוקנים

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

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

מעקב אחרי עלויות

הפונקציות של הבינה המלאכותית הגנרטיבית ב-BigQuery פועלות על ידי שליחת בקשות ל-Gemini Enterprise Agent Platform, מה שיכול לגרום לעלויות. כדי להעריך את כמות הטוקנים של הקלט לפני שמריצים שאילתה, משתמשים בפונקציה AI.COUNT_TOKENS. כדי לעקוב אחרי העלויות של Agent Platform שנובעות ממשימה שמריצים ב-BigQuery, פועלים לפי השלבים הבאים:

  1. הצגת דוחות החיוב בחיוב ב-Cloud.
  2. משתמשים במסננים כדי לצמצם את התוצאות.

    בשדה 'שירותים', בוחרים באפשרות Vertex AI.

  3. כדי לראות את החיובים על עבודה ספציפית, מסננים לפי תווית.

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

יכול להיות שיחלפו עד 24 שעות עד שחלק מהחיובים יופיעו בחיוב ב-Cloud.

מעקב

כדי להבין טוב יותר את ההתנהגות של פונקציות AI שאתם קוראים להן ב-BigQuery, אתם יכולים להפעיל רישום ביומן של בקשות ותשובות. כדי לרשום ביומן את כל הבקשה והתשובה שנשלחו אל Agent Platform והתקבלו ממנה, פועלים לפי השלבים הבאים:

  1. הפעלת יומני בקשות ותשובות ב-Gemini Enterprise Agent Platform. היומנים מאוחסנים ב-BigQuery. צריך להפעיל בנפרד את הרישום ביומן לכל מודל בסיסי ואזור שונים. כדי לרשום ביומן שאילתות שמופעלות באזור us, צריך לציין את האזור us-central1 בבקשה. כדי לרשום ביומן שאילתות שמופעלות באזור eu, צריך לציין את האזור europe-west4 בבקשה.

  2. מריצים שאילתה באמצעות פונקציית AI שמבצעת קריאה ל-Agent Platform באמצעות המודל שהפעלתם עבורו רישום ביומן בשלב הקודם.

  3. כדי לראות את הבקשה והתגובה המלאות של Agent Platform, צריך לשלוח שאילתה לטבלת הרישום כדי למצוא שורות שבהן הערך בשדה labels.bigquery_job_id_prefix בעמודה full_request תואם ל-63 התווים הראשונים של מזהה המשימה. אפשר גם להשתמש בתווית שאילתה מותאמת אישית כדי לחפש את השאילתה ביומנים.

    לדוגמה, אפשר להשתמש בשאילתה דומה לזו:

    SELECT *
    FROM `my_project.my_dataset.request_response_logging`
    WHERE JSON_VALUE(full_request, '$.labels.bigquery_job_id_prefix') = 'bquxjob_123456...';
    

ניהול שגיאות

שגיאות ברמת השורה, כמו RESOURCE_EXHAUSTED, יכולות להתרחש אם פונקציית AI חורגת מהמכסה או מהמגבלות של השירות המרוחק. כשמתרחשת שגיאה ברמת השורה, הפונקציה מחזירה NULL עבור השורה הזו, מה שיכול לגרום לתוצאות לא מלאות של השאילתה.

יכול להיות שתיתקלו בשגיאות האלה בכל הפונקציות של ה-AI. עם זאת, פונקציות ה-AI המנוהלות (AI.IF,‏ AI.CLASSIFY ו-AI.SCORE) תומכות בארגומנט max_error_ratio כדי לעזור לכם לנהל אותן. משתמשים בארגומנט הזה כדי להגדיר סף של כשלים שיאפשר לשאילתה להצליח למרות כשלים ברמת השורה.

ערך ברירת המחדל של max_error_ratio הוא 1.0. כדי להקטין את סף השגיאות, צריך להגדיר ערך קטן יותר (לדוגמה, 0.2) כך שהשאילתה תיכשל במקום להצליח עם שגיאות חלקיות. פרטים על התחביר מופיעים במסמכי העזרה של AI.IF,‏ AI.CLASSIFY או AI.SCORE.

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

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

לדוגמה, נניח שהשאילתה כוללת פסקה LIMIT 10 ו-max_error_ratio של 0.2. יכול להיות שהמודל יעבד 20 שורות לפני שהמגבלה תחול. אם 3 מתוך 20 השורות האלה נכשלות, יחס השגיאות הוא 0.15 (15%), שהוא מתחת לסף של 20%. עם זאת, אם קבוצת המשנה של השורות שנבחרה על ידי פסוקית LIMIT כוללת את כל 3 השורות שנכשלו, הפלט שיוצג יכיל ערכים של 30% NULL.

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