יצירת הטמעות טקסט באמצעות מודל פתוח והפונקציה AI.GENERATE_EMBEDDING
במדריך הזה נסביר איך ליצור מודל מרוחק שמבוסס על מודל הטמעת הטקסט בקוד פתוח Qwen3-Embedding-0.6B, ואיך להשתמש במודל הזה עם הפונקציה AI.GENERATE_EMBEDDING כדי להטמיע ביקורות על סרטים מהטבלה שזמינה לכולם bigquery-public-data.imdb.reviews.
ההרשאות הנדרשות
כדי להריץ את המדריך הזה, אתם צריכים את התפקידים הבאים בניהול הזהויות והרשאות הגישה (IAM):
- יצירה ושימוש במערכי נתונים, בחיבורים ובמודלים של BigQuery:
אדמין ב-BigQuery (
roles/bigquery.admin). - נותנים הרשאות לחשבון השירות של החיבור: אדמין IAM של פרויקט (
roles/resourcemanager.projectIamAdmin). - פריסה וביטול פריסה של מודלים ב-Gemini Enterprise Agent Platform: אדמין של Agent Platform (
roles/aiplatform.admin).
התפקידים המוגדרים מראש האלה מכילים את ההרשאות שנדרשות כדי לבצע את המשימות שמפורטות במאמר הזה. כדי לראות את ההרשאות הנדרשות, מרחיבים את הקטע Required Permissions:
ההרשאות הנדרשות
- יוצרים מערך נתונים:
bigquery.datasets.create - יצירה, הקצאה ושימוש בחיבור:
bigquery.connections.* - מגדירים את חיבור ברירת המחדל:
bigquery.config.* - מגדירים את ההרשאות של חשבון השירות:
resourcemanager.projects.getIamPolicyוגםresourcemanager.projects.setIamPolicy - פריסה וביטול פריסה של מודל ב-Agent Platform:
aiplatform.endpoints.deployaiplatform.endpoints.undeploy
- יוצרים מודל ומריצים הסקה:
bigquery.jobs.createbigquery.models.createbigquery.models.getDatabigquery.models.updateDatabigquery.models.updateMetadata
יכול להיות שתוכלו לקבל את ההרשאות האלה גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
עלויות
במסמך הזה משתמשים ברכיבים הבאים של Google Cloud, והשימוש בהם כרוך בתשלום:
- BigQuery ML: You incur costs for the data that you process in BigQuery.
- Gemini Enterprise Agent Platform: You incur costs for calls to the Agent Platform model that's represented by the remote model.
בעזרת מחשבון העלויות אתם יכולים להעריך את העלויות בהתאם לשימוש הצפוי.
למידע נוסף על התמחור של BigQuery, קראו את המאמר התמחור של BigQuery במרכז העזרה של BigQuery.
מודלים פתוחים שאתם פורסים ב-Agent Platform מחויבים לפי שעת מכונה. כלומר, החיוב מתחיל ברגע שהגדרת נקודת הקצה מסתיימת, ונמשך עד שמבטלים את הפריסה שלה. למידע נוסף על התמחור של Agent Platform, קראו את המאמר התמחור של Agent Platform.
לפני שמתחילים
-
בדף לבחירת הפרויקט במסוף Google Cloud , בוחרים פרויקט ב- Google Cloud או יוצרים אותו.
התפקידים שנדרשים כדי לבחור או ליצור פרויקט
- בחירת פרויקט: כדי לבחור פרויקט לא נדרש תפקיד IAM ספציפי – אתם יכולים לבחור כל פרויקט שקיבלתם בו תפקיד.
-
יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד "יצירת פרויקטים" (
roles/resourcemanager.projectCreator), שכולל את ההרשאהresourcemanager.projects.create. איך מקצים תפקידים?
-
מפעילים את ממשקי ה-API הבאים, אם הם עדיין לא מופעלים: BigQuery, BigQuery Connection ו-Agent Platform API.
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם אתם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, אתם יכולים לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים?
יצירת קבוצת נתונים
כדי ליצור מערך נתונים ב-BigQuery, בוחרים אחת מהאפשרויות הבאות:
המסוף
נכנסים לדף BigQuery במסוף Google Cloud .
בחלונית הימנית, לוחצים על Explorer:

אם החלונית הימנית לא מוצגת, לוחצים על Expand left pane כדי לפתוח אותה.
ב-Explorer, מרחיבים את הפרויקט ולוחצים על Datasets.
בדף Datasets, לוחצים על Create dataset.
בחלונית Create dataset:
בשדה Dataset ID, מזינים
bqml_tutorial.בקטע Data location (מיקום הנתונים), בוחרים באפשרות US (ארה"ב).
משאירים את שאר הגדרות ברירת המחדל כמו שהן.
לוחצים על Create dataset.
BQ
כדי ליצור קבוצת נתונים חדשה, משתמשים בפקודה bq mk --dataset.
יוצרים מערך נתונים בשם
bqml_tutorialומגדירים את מיקום הנתונים ל-US:bq mk --dataset \ --location=US \ --description "BigQuery ML tutorial dataset." \ bqml_tutorial
מוודאים שמערך הנתונים נוצר:
bq ls
API
מפעילים את השיטה datasets.insert עם משאב של מערך נתונים מוגדר:
{ "datasetReference": { "datasetId": "bqml_tutorial" } }
יצירת המודל המרוחק
יוצרים מודל מרוחק שמייצג מודל של Agent Platform באירוח:
נכנסים לדף BigQuery במסוף Google Cloud .
בעורך השאילתות, מריצים את ההצהרה הבאה:
CREATE OR REPLACE MODEL `bqml_tutorial.qwen3_embedding_model` REMOTE WITH CONNECTION DEFAULT OPTIONS ( HUGGING_FACE_MODEL_ID = 'Qwen/Qwen3-Embedding-0.6B' );
השאילתה מסתיימת תוך 20 דקות, ואז המודל qwen3_embedding_model מופיע במערך הנתונים bqml_tutorial בחלונית Explorer. בגלל שהשאילתה משתמשת בהצהרת CREATE MODEL כדי ליצור מודל, אין תוצאות לשאילתה.
הטמעת טקסט
מבצעים הטמעת טקסט בביקורות על סרטים ב-IMDB באמצעות המודל המרוחק והפונקציה AI.GENERATE_EMBEDDING:
נכנסים לדף BigQuery במסוף Google Cloud .
בעורך השאילתות, מזינים את ההצהרה הבאה כדי לבצע הטמעת טקסט בחמש ביקורות על סרטים:
SELECT * FROM AI.GENERATE_EMBEDDING( MODEL `bqml_tutorial.qwen3_embedding_model`, ( SELECT review AS content, * FROM `bigquery-public-data.imdb.reviews` LIMIT 5 ) );
התוצאות כוללות את העמודות הבאות:
-
embedding: מערך של ערכים מסוג double שמייצג את ההטמעות שנוצרו. -
status: סטטוס התגובה מה-API בשורה המתאימה. אם הפעולה הצליחה, הערך הזה ריק. -
content: טקסט הקלט שממנו רוצים לחלץ את ההטמעות. - כל העמודות מהטבלה
bigquery-public-data.imdb.reviews.
-
ביטול הפריסה של המודל
אם אתם בוחרים לא למחוק את הפרויקט כמו שמומלץ, אתם צריכים לבטל את הפריסה של מודל ההטמעה Qwen3 ב-Agent Platform כדי להימנע מהמשך החיוב עליו. BigQuery מבטל באופן אוטומטי את פריסת המודל אחרי תקופה מסוימת של חוסר פעילות (6.5 שעות כברירת מחדל).
לחלופין, אתם יכולים לבטל את הפריסה של המודל באופן מיידי באמצעות ההצהרה ALTER MODEL, כמו בדוגמה הבאה:
ALTER MODEL `bqml_tutorial.qwen3_embedding_model` SET OPTIONS (deploy_model = false);
מידע נוסף מופיע במאמר ביטול פריסה אוטומטי או מיידי של מודלים פתוחים.
הסרת המשאבים
- במסוף Google Cloud , נכנסים לדף Manage resources.
- ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
- כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.