כדי ליצור מאגר נתונים ולהטמיע נתונים להמלצות בהתאמה אישית, עוברים לקטע שמתאים למקור שבו אתם מתכננים להשתמש:
BigQuery
יש שתי דרכים ליצור מאגרי נתונים מטבלאות BigQuery:
הטמעת נתונים חד-פעמית: מייבאים נתונים מטבלה ב-BigQuery למאגר נתונים. הנתונים במאגר הנתונים לא משתנים אלא אם מרעננים את הנתונים באופן ידני.
הטמעה תקופתית: מייבאים נתונים מטבלה אחת או יותר ב-BigQuery ומגדירים תדירות סנכרון שקובעת כמה פעמים מאגרי הנתונים מתעדכנים בנתונים העדכניים ביותר ממערך הנתונים ב-BigQuery.
בטבלה הבאה מוצגת השוואה בין שתי הדרכים לייבוא נתונים מ-BigQuery למאגרי נתונים של חיפוש מבוסס סוכנים.
| הוספה חד-פעמית | הטמעה תקופתית |
|---|---|
| צריך לרענן את הנתונים באופן ידני. | הנתונים מתעדכנים אוטומטית כל יום, כל 3 ימים או כל 5 ימים. אי אפשר לרענן את הנתונים באופן ידני. |
| חיפוש מבוסס סוכנים יוצר מאגר נתונים יחיד מטבלה אחת ב-BigQuery. | התכונה 'חיפוש מבוסס סוכנים' יוצרת מחבר נתונים לקבוצת נתונים של BigQuery ומאגר נתונים (שנקרא מאגר נתונים של ישויות) לכל טבלה שצוינה. לכל מחבר נתונים, הטבלאות צריכות להיות מאותו סוג נתונים (לדוגמה, מובנה) ולהיות באותו מערך נתונים של BigQuery. |
| אפשר לשלב נתונים מכמה טבלאות במאגר נתונים אחד. לשם כך, קודם מייבאים נתונים מטבלה אחת ואז מייבאים עוד נתונים ממקור אחר או מטבלה ב-BigQuery. | מכיוון שאין תמיכה בייבוא נתונים ידני, אפשר להשתמש בנתונים במאגר נתונים של ישות רק מטבלה אחת ב-BigQuery. |
| יש תמיכה בבקרת גישה למקורות נתונים. | אין תמיכה בבקרת גישה למקור הנתונים. הנתונים המיובאים יכולים לכלול אמצעי בקרה לגישה, אבל המערכת לא תתחשב בהם. |
| אפשר ליצור מאגר נתונים באמצעותGoogle Cloud המסוף או ה-API. | צריך להשתמש במסוף כדי ליצור מחברי נתונים ומאגרי נתונים של ישויות. |
| תואם ל-CMEK. | תואם ל-CMEK. |
לפני שמתחילים
כדי לייבא נתונים מ Google Cloud פרויקט מקור ששונה מהפרויקט עם מאגר הנתונים של חיפוש מבוסס סוכנים, צריך להקצות לחשבון השירות בפרויקט שמכיל את מאגר הנתונים של חיפוש מבוסס סוכנים את תפקידי ניהול הזהויות והרשאות הגישה (IAM) הבאים:service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.comGoogle Cloud
ייבוא חד-פעמי מ-BigQuery
כדי להטמיע נתונים מטבלה ב-BigQuery, צריך ליצור מאגר נתונים ולהטמיע נתונים באמצעות המסוף Google Cloud או API.
לפני שמייבאים את הנתונים, כדאי לעיין במאמר בנושא הכנת נתונים להעברה.
המסוף
כדי להשתמש במסוף להטמעת נתונים מ-BigQuery, פועלים לפי השלבים הבאים: Google Cloud
נכנסים לדף AI Applications במסוף Google Cloud .
עוברים לדף מאגרי נתונים.
לוחצים על יצירת מאגר נתונים.
בדף מקור, בוחרים באפשרות BigQuery.
בקטע איזה סוג נתונים מייבאים?, בוחרים את סוג הנתונים שרוצים לייבא.
בקטע תדירות הסנכרון, בוחרים באפשרות פעם אחת.
בשדה BigQuery path (נתיב BigQuery), לוחצים על Browse (עיון), בוחרים טבלה שהכנתם להעברה ואז לוחצים על Select (בחירה). אפשר גם להזין את מיקום הטבלה ישירות בשדה נתיב BigQuery.
לוחצים על Continue.
אם אתם מבצעים ייבוא חד-פעמי של נתונים מובְנים:
מיפוי שדות למאפייני מפתח.
אם חסרים בסכימה שדות חשובים, משתמשים באפשרות הוספת שדה חדש כדי להוסיף אותם.
מידע נוסף זמין במאמר מידע על זיהוי ועריכה אוטומטיים.
לוחצים על Continue.
בוחרים אזור למאגר הנתונים.
מזינים שם למאגר הנתונים.
לוחצים על יצירה.
כדי לבדוק את סטטוס ההטמעה, עוברים לדף מאגרי נתונים ולוחצים על השם של מאגר הנתונים כדי לראות את הפרטים שלו בדף נתונים. ההטמעה מסתיימת כשהסטטוס בעמודה סטטוס בכרטיסייה פעילות משתנה מבתהליך להייבוא הושלם.
בהתאם לגודל הנתונים, תהליך ההטמעה יכול להימשך כמה דקות עד כמה שעות.
REST
כדי ליצור מאגר נתונים ולייבא נתונים מ-BigQuery באמצעות שורת הפקודה, פועלים לפי השלבים הבאים.
יוצרים מאגר נתונים.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"] }'מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
DATA_STORE_ID: המזהה של מאגר הנתונים של חיפוש מבוסס סוכנים שרוצים ליצור. המזהה יכול להכיל רק אותיות קטנות, ספרות, קווים תחתונים ומקפים. -
DATA_STORE_DISPLAY_NAME: השם המוצג של מאגר הנתונים של חיפוש מבוסס סוכנים שרוצים ליצור.
-
ייבוא נתונים מ-BigQuery.
אם הגדרתם סכימה, ודאו שהנתונים תואמים לסכימה הזו.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "bigquerySource": { "projectId": "PROJECT_ID", "datasetId":"DATASET_ID", "tableId": "TABLE_ID", "dataSchema": "DATA_SCHEMA", "aclEnabled": "BOOLEAN" }, "reconciliationMode": "RECONCILIATION_MODE", "autoGenerateIds": "AUTO_GENERATE_IDS", "idField": "ID_FIELD", "errorConfig": { "gcsPrefix": "ERROR_DIRECTORY" } }'מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
DATA_STORE_ID: המזהה של מאגר הנתונים של חיפוש מבוסס סוכנים. -
DATASET_ID: המזהה של מערך הנתונים ב-BigQuery. -
TABLE_ID: המזהה של הטבלה ב-BigQuery.- אם הטבלה ב-BigQuery לא נמצאת ב-PROJECT_ID, צריך לתת לחשבון השירות
service-<project number>@gcp-sa-discoveryengine.iam.gserviceaccount.comהרשאה מסוג 'BigQuery Data Viewer' לטבלה ב-BigQuery. לדוגמה, אם מייבאים טבלה מ-BigQuery מפרויקט המקור '123' לפרויקט היעד '456', צריך לתת ל-service-456@gcp-sa-discoveryengine.iam.gserviceaccount.comהרשאות לטבלה ב-BigQuery בפרויקט '123'.
- אם הטבלה ב-BigQuery לא נמצאת ב-PROJECT_ID, צריך לתת לחשבון השירות
-
DATA_SCHEMA: אופציונלי. הערכים הםdocumentו-custom. ערך ברירת המחדל הואdocument.-
document: הטבלה ב-BigQuery שבה אתם משתמשים צריכה להתאים לסכימת ברירת המחדל של BigQuery שמופיעה במאמר הכנת נתונים להוספה. אתם יכולים להגדיר את המזהה של כל מסמך בעצמכם, כשכל הנתונים עטופים במחרוזת jsonData. -
custom: כל סכימת טבלה ב-BigQuery מתקבלת, וחיפוש מבוסס סוכנים יוצר באופן אוטומטי את המזהים לכל מסמך שמייבאים.
-
-
ERROR_DIRECTORY: אופציונלי. ספרייה ב-Cloud Storage למידע על שגיאות בייבוא – לדוגמה,gs://<your-gcs-bucket>/directory/import_errors. Google ממליצה להשאיר את השדה הזה ריק כדי שהתכונה 'חיפוש באמצעות סוכן' תיצור באופן אוטומטי ספריה זמנית. -
RECONCILIATION_MODE: אופציונלי. הערכים האפשריים הםFULLו-INCREMENTAL. ערך ברירת המחדל הואINCREMENTAL. הגדרה שלINCREMENTALגורמת לרענון מצטבר של הנתונים מ-BigQuery למאגר הנתונים. הפעולה הזו היא upsert, שמוסיפה מסמכים חדשים ומחליפה מסמכים קיימים במסמכים מעודכנים עם אותו מזהה. ציוןFULLגורם לשינוי בסיס מלא של המסמכים במאגר הנתונים. במילים אחרות, מסמכים חדשים ומעודכנים מתווספים למאגר הנתונים, ומסמכים שלא נמצאים ב-BigQuery מוסרים ממנו. מצבFULLשימושי אם רוצים למחוק באופן אוטומטי מסמכים שכבר לא צריכים.
AUTO_GENERATE_IDS: אופציונלי. ההגדרה קובעת אם מזהי המסמכים ייווצרו באופן אוטומטי. אם הערך הואtrue, מזהי המסמכים נוצרים על סמך גיבוב של מטען הייעודי (payload). שימו לב שמזהי המסמכים שנוצרו עשויים להשתנות בין ייבוא לייבוא. אם אתם יוצרים מזהים באופן אוטומטי בכמה ייבואים, מומלץ מאוד להגדיר אתreconciliationModeלערךFULLכדי לשמור על מזהי מסמכים עקביים.מציינים את
autoGenerateIdsרק כשbigquerySource.dataSchemaמוגדר לערךcustom. אחרת, מוחזרת שגיאהINVALID_ARGUMENT. אם לא מציינים אתautoGenerateIdsאו מגדירים אותו ל-false, צריך לציין אתidField. אחרת, הייבוא של המסמכים ייכשל.
ID_FIELD: אופציונלי. מציין אילו שדות הם מזהי המסמכים. בקבצים של מקורות BigQuery, idFieldמציין את שם העמודה בטבלת BigQuery שמכילה את מזהי המסמכים.מציינים את
idFieldרק אם: (1) הערך שלbigquerySource.dataSchemaהואcustom, וגם (2) הערך שלauto_generate_idsהואfalseאו שלא צוין ערך. אחרת, מוחזרת שגיאתINVALID_ARGUMENT.הערך של שם העמודה ב-BigQuery צריך להיות מסוג string, להכיל בין 1 ל-63 תווים ולעמוד בדרישות של RFC-1034. אחרת, ייבוא המסמכים ייכשל.
-
C#
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים C#.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Go
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Go.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Java
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Java.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Node.js
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Node.js.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Python
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Python.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Ruby
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Ruby.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
התחברות ל-BigQuery עם סנכרון תקופתי
לפני שמייבאים את הנתונים, כדאי לעיין במאמר בנושא הכנת נתונים להעברה.
במאמר הזה מוסבר איך ליצור מחבר נתונים שמקשר מערך נתונים ב-BigQuery למחבר נתונים של חיפוש בעזרת סוכן, ואיך מציינים טבלה במערך הנתונים לכל מאגר נתונים שרוצים ליצור. מאגרי נתונים שהם צאצאים של מחברי נתונים נקראים מאגרי נתונים של ישויות.
הנתונים ממערך הנתונים מסונכרנים מעת לעת עם מאגרי הנתונים של הישויות. אפשר לציין סנכרון יומי, כל שלושה ימים או כל חמישה ימים.
המסוף
כדי להשתמש במסוף Google Cloud כדי ליצור מחבר שמסנכרן נתונים ממערך נתונים ב-BigQuery לחיפוש מבוסס סוכנים באופן תקופתי, פועלים לפי השלבים הבאים:
נכנסים לדף AI Applications במסוף Google Cloud .
בתפריט הניווט, לוחצים על מאגרי נתונים.
לוחצים על יצירת מאגר נתונים.
בדף מקור, בוחרים באפשרות BigQuery.
בוחרים את סוג הנתונים שמייבאים.
לוחצים על תקופתי.
בוחרים את תדירות הסנכרון, כלומר כמה פעמים רוצים שמחבר Agent Search יסנכרן עם מערך הנתונים של BigQuery. אפשר לשנות את התדירות בהמשך.
בשדה נתיב למערך הנתונים ב-BigQuery, לוחצים על עיון, בוחרים את מערך הנתונים שמכיל את הטבלאות שהכנתם להעלאה. אפשרות אחרת היא להזין את מיקום הטבלה ישירות בשדה נתיב BigQuery. הפורמט של הנתיב הוא
projectname.datasetname.בשדה Tables to sync, לוחצים על Browse ובוחרים טבלה שמכילה את הנתונים שרוצים לאחסן במאגר הנתונים.
אם יש עוד טבלאות במערך הנתונים שרוצים להשתמש בהן במאגרי נתונים, לוחצים על הוספת טבלה ומציינים גם את הטבלאות האלה.
לוחצים על Continue.
בוחרים אזור לאחסון הנתונים, מזינים שם למחבר הנתונים ולוחצים על יצירה.
יצרתם מחבר נתונים שיסנכרן את הנתונים עם מערך הנתונים ב-BigQuery באופן תקופתי. בנוסף, יצרתם מאגרי נתונים של ישויות. למאגרי הנתונים יש את אותם שמות כמו לטבלאות ב-BigQuery.
כדי לבדוק את סטטוס ההטמעה, עוברים לדף מאגרי נתונים ולוחצים על השם של מחבר הנתונים כדי לראות את הפרטים שלו בדף נתונים > הכרטיסייה פעילות של הטמעת נתונים. כשהסטטוס בעמודה סטטוס בכרטיסייה פעילות משתנה מבתהליך להושלם, סימן שההטמעה הראשונה הסתיימה.
בהתאם לגודל הנתונים, תהליך ההטמעה יכול להימשך כמה דקות עד כמה שעות.
אחרי שמגדירים את מקור הנתונים ומייבאים נתונים בפעם הראשונה, מאגר הנתונים מסנכרן נתונים מהמקור הזה בתדירות שבוחרים במהלך ההגדרה. כשעה אחרי שיוצרים את מחבר הנתונים, מתבצע הסנכרון הראשון. הסנכרון הבא מתרחש כ-24 שעות, 72 שעות או 120 שעות לאחר מכן.
השלבים הבאים
כדי לצרף את מאגר הנתונים לאפליקציה, יוצרים אפליקציה ובוחרים את מאגר הנתונים לפי השלבים במאמר יצירת אפליקציה מותאמת אישית להמלצות.
כדי לראות תצוגה מקדימה או לקבל המלצות אחרי שמגדירים את האפליקציה ואת מאגר הנתונים, אפשר לעיין במאמר קבלת המלצות.
Cloud Storage
יש שתי דרכים ליצור מאגרי נתונים מטבלאות ב-Cloud Storage:
העברה חד-פעמית: מייבאים נתונים מתיקייה או מקובץ ב-Cloud Storage למאגר נתונים. הנתונים במאגר הנתונים לא משתנים אלא אם מרעננים את הנתונים באופן ידני.
הטמעה תקופתית: אתם מייבאים נתונים מתיקייה או מקובץ ב-Cloud Storage, ומגדירים תדירות סנכרון שקובעת כמה פעמים מאגר הנתונים מתעדכן בנתונים העדכניים ביותר ממיקום Cloud Storage הזה.
בטבלה הבאה מוצגות שתי הדרכים שבהן אפשר לייבא נתונים מ-Cloud Storage למאגרי נתונים של חיפוש מבוסס סוכנים.
| הוספה חד-פעמית | הטמעה תקופתית |
|---|---|
| צריך לרענן את הנתונים באופן ידני. | הנתונים מתעדכנים אוטומטית כל יום, כל שלושה ימים או כל חמישה ימים. אי אפשר לרענן את הנתונים באופן ידני. |
| חיפוש מבוסס סוכנים יוצר מאגר נתונים יחיד מתיקייה או מקובץ אחד ב-Cloud Storage. | התכונה 'חיפוש מבוסס סוכנים' יוצרת מחבר נתונים, ומקשרת אליו מאגר נתונים (שנקרא מאגר נתונים של ישויות) עבור הקובץ או התיקייה שצוינו. לכל מחבר נתונים של Cloud Storage יכול להיות מאגר נתונים של ישות אחת. |
| אפשר לשלב נתונים מכמה קבצים, תיקיות וקטגוריות במאגר נתונים אחד. לשם כך, קודם צריך להטמיע נתונים ממיקום אחד ב-Cloud Storage, ואז להטמיע עוד נתונים ממיקום אחר. | מכיוון שייבוא נתונים ידני לא אפשרי, אפשר להשתמש בנתונים במאגר נתונים של ישות רק מקובץ או מתיקייה אחת ב-Cloud Storage. |
| יש תמיכה בבקרת גישה למקורות נתונים. מידע נוסף מופיע במאמר בנושא בקרת גישה למקורות נתונים. | אין תמיכה בבקרת גישה למקור הנתונים. הנתונים המיובאים יכולים לכלול אמצעי בקרה לגישה, אבל המערכת לא תתחשב בהם. |
| אפשר ליצור מאגר נתונים באמצעותGoogle Cloud המסוף או ה-API. | צריך להשתמש במסוף כדי ליצור מחברי נתונים ומאגרי נתונים של ישויות. |
| תואם ל-CMEK. | תואם ל-CMEK. |
לפני שמתחילים
כדי לייבא נתונים מ Google Cloud פרויקט מקור ששונה מהפרויקט עם מאגר הנתונים של חיפוש מבוסס סוכנים, צריך להקצות לחשבון השירות בפרויקט שמכיל את מאגר הנתונים של חיפוש מבוסס סוכנים את תפקידי ניהול הזהויות והרשאות הגישה (IAM) הבאים:service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.comGoogle Cloud
- אדמין של אובייקטים באחסון (
roles/storage.objectAdmin) - צפייה באובייקטים באחסון (
roles/storage.objectViewer)
ייבוא חד-פעמי מ-Cloud Storage
כדי להטמיע נתונים מ-Cloud Storage, צריך ליצור מאגר נתונים ולהטמיע נתונים באמצעות Google Cloud המסוף או ה-API.
לפני שמייבאים את הנתונים, כדאי לעיין במאמר בנושא הכנת נתונים להעברה.
המסוף
כדי להשתמש במסוף להטמעת נתונים מקטגוריה של Cloud Storage, פועלים לפי השלבים הבאים:
נכנסים לדף AI Applications במסוף Google Cloud .
עוברים לדף מאגרי נתונים.
לוחצים על יצירת מאגר נתונים.
בדף מקור, בוחרים באפשרות Cloud Storage.
בקטע בחירת תיקייה או קובץ לייבוא, בוחרים באפשרות תיקייה או קובץ.
לוחצים על עיון, בוחרים את הנתונים שהכנתם להעלאה ולוחצים על בחירה. אפשר גם להזין את המיקום ישירות בשדה
gs://.בוחרים את סוג הנתונים שמייבאים.
לוחצים על Continue.
אם אתם מבצעים ייבוא חד-פעמי של נתונים מובְנים:
מיפוי שדות למאפייני מפתח.
אם חסרים בסכימה שדות חשובים, משתמשים באפשרות הוספת שדה חדש כדי להוסיף אותם.
מידע נוסף זמין במאמר מידע על זיהוי ועריכה אוטומטיים.
לוחצים על Continue.
בוחרים אזור למאגר הנתונים.
מזינים שם למאגר הנתונים.
אופציונלי: אם בחרתם מסמכים לא מובנים, אתם יכולים לבחור אפשרויות ניתוח וחלוקה למקטעים של המסמכים. כדי להשוות בין מנתחי נתונים, אפשר לעיין במאמר בנושא ניתוח מסמכים. מידע על חלוקה לחלקים זמין במאמר חלוקת מסמכים לחלקים לצורך RAG.
שימוש בכלי לניתוח OCR ובכלי לניתוח פריסה עלול לגרור עלויות נוספות. מידע על התמחור של התכונות ב-Document AI
כדי לבחור מנתח, מרחיבים את אפשרויות לעיבוד מסמכים ומציינים את אפשרויות המנתח שרוצים להשתמש בהן.
לוחצים על יצירה.
כדי לבדוק את סטטוס ההטמעה, עוברים לדף מאגרי נתונים ולוחצים על השם של מאגר הנתונים כדי לראות את הפרטים שלו בדף נתונים. ההטמעה מסתיימת כשהסטטוס בעמודה סטטוס בכרטיסייה פעילות משתנה מבתהליך להייבוא הושלם.
בהתאם לגודל הנתונים, תהליך ההטמעה יכול להימשך כמה דקות או כמה שעות.
REST
כדי ליצור מאגר נתונים ולהטמיע נתונים מ-Cloud Storage באמצעות שורת הפקודה, פועלים לפי השלבים הבאים.
יוצרים מאגר נתונים.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"] }'מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
DATA_STORE_ID: המזהה של מאגר הנתונים של חיפוש מבוסס סוכנים שרוצים ליצור. המזהה יכול להכיל רק אותיות קטנות, ספרות, קווים תחתונים ומקפים. -
DATA_STORE_DISPLAY_NAME: השם המוצג של מאגר הנתונים של חיפוש מבוסס סוכנים שרוצים ליצור.
-
ייבוא נתונים מ-Cloud Storage.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \ -d '{ "gcsSource": { "inputUris": ["INPUT_FILE_PATTERN_1", "INPUT_FILE_PATTERN_2"], "dataSchema": "DATA_SCHEMA", }, "reconciliationMode": "RECONCILIATION_MODE", "autoGenerateIds": "AUTO_GENERATE_IDS", "idField": "ID_FIELD", "errorConfig": { "gcsPrefix": "ERROR_DIRECTORY" } }'מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
DATA_STORE_ID: המזהה של מאגר הנתונים של חיפוש מבוסס סוכנים.
INPUT_FILE_PATTERN: תבנית קובץ ב-Cloud Storage שמכילה את המסמכים שלכם.לנתונים מובְנים או לנתונים לא מובְנים עם מטא-נתונים, דוגמה לתבנית של קובץ קלט היא
gs://<your-gcs-bucket>/directory/object.jsonודוגמה להתאמת תבנית לקובץ אחד או יותר היאgs://<your-gcs-bucket>/directory/*.json.דוגמה למסמך לא מובנה היא
gs://<your-gcs-bucket>/directory/*.pdf. כל קובץ שתואם לתבנית הופך למסמך.אם
<your-gcs-bucket>לא מופיע בקטע PROJECT_ID, צריך לתת לחשבון השירותservice-<project number>@gcp-sa-discoveryengine.iam.gserviceaccount.comהרשאות 'צפייה באובייקט אחסון' לקטגוריה של Cloud Storage. לדוגמה, אם מייבאים קטגוריה של Cloud Storage מפרויקט המקור '123' לפרויקט היעד '456', צריך לתת הרשאותservice-456@gcp-sa-discoveryengine.iam.gserviceaccount.comבקטגוריה של Cloud Storage בפרויקט '123'.
DATA_SCHEMA: אופציונלי. הערכים הםdocument,custom,csvו-content. ערך ברירת המחדל הואdocument.
document: העלאת נתונים לא מובנים עם מטא-נתונים עבור מסמכים לא מובנים. כל שורה בקובץ צריכה להיות באחד מהפורמטים הבאים. אפשר להגדיר את המזהה של כל מסמך:{ "id": "<your-id>", "jsonData": "<JSON string>", "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }{ "id": "<your-id>", "structData": <JSON object>, "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" } }
custom: העלאת JSON למסמכים מובנים. הנתונים מאורגנים לפי סכימה. אפשר לציין את הסכימה, אחרת המערכת תזהה אותה באופן אוטומטי. אפשר להזין את מחרוזת ה-JSON של המסמך בפורמט עקבי ישירות בכל שורה, ו'חיפוש מבוסס סוכנים' ייצור באופן אוטומטי את המזהים לכל מסמך שיובא.
content: העלאת מסמכים לא מובנים (PDF, HTML, DOC, TXT, PPTX). המזהה של כל מסמך נוצר אוטומטית בתור 128 הביטים הראשונים של SHA256(GCS_URI) שמקודדים כמחרוזת הקסדצימלית. אפשר לציין כמה תבניות של קובצי קלט, כל עוד מספר הקבצים התואמים לא חורג מהמגבלה של 100,000 קבצים.
csv: כוללים שורת כותרת בקובץ ה-CSV, כשכל כותרת ממופה לשדה במסמך. מציינים את הנתיב לקובץ ה-CSV באמצעות השדהinputUris.
ERROR_DIRECTORY: אופציונלי. ספרייה ב-Cloud Storage למידע על שגיאות בייבוא – לדוגמה,gs://<your-gcs-bucket>/directory/import_errors. Google ממליצה להשאיר את השדה הזה ריק כדי ש'חיפוש מבוסס סוכנים' ייצור באופן אוטומטי ספרייה זמנית.
RECONCILIATION_MODE: אופציונלי. הערכים הםFULLו-INCREMENTAL. ערך ברירת המחדל הואINCREMENTAL. הגדרה שלINCREMENTALגורמת לרענון מצטבר של נתונים מ-Cloud Storage למאגר הנתונים. הפעולה הזו מבצעת upsert, שמוסיף מסמכים חדשים ומחליף מסמכים קיימים במסמכים מעודכנים עם אותו מזהה. הגדרתFULLגורמת לשינוי בסיס מלא של המסמכים במאגר הנתונים. כלומר, מסמכים חדשים ומעודכנים מתווספים למאגר הנתונים, ומסמכים שלא נמצאים ב-Cloud Storage מוסרים ממנו. מצבFULLשימושי אם רוצים למחוק באופן אוטומטי מסמכים שכבר לא צריכים.
AUTO_GENERATE_IDS: אופציונלי. ההגדרה קובעת אם מזהי המסמכים ייווצרו באופן אוטומטי. אם המדיניות מוגדרת לערךtrue, מזהי המסמכים נוצרים על סמך גיבוב (hash) של מטען הייעודי. חשוב לדעת שמזהי מסמכים שנוצרו יכולים להשתנות בין ייבוא לייבוא. אם אתם יוצרים מזהים באופן אוטומטי בכמה ייבואים, מומלץ מאוד להגדיר אתreconciliationModeל-FULLכדי לשמור על מזהי מסמכים עקביים.מציינים את
autoGenerateIdsרק אם הערך שלgcsSource.dataSchemaהואcustomאוcsv. אחרת, מוחזרת שגיאתINVALID_ARGUMENT. אם לא מציינים אתautoGenerateIdsאו מגדירים אותו ל-false, צריך לציין אתidField. אחרת, ייבוא המסמכים ייכשל.
ID_FIELD: אופציונלי. מציינים אילו שדות הם מזהי המסמכים. במסמכי מקור של Cloud Storage, idFieldמציין את השם בשדות ה-JSON שהם מזהי מסמכים. לדוגמה, אם{"my_id":"some_uuid"}הוא שדה מזהה המסמך באחד מהמסמכים, מציינים"idField":"my_id". השדה הזה מזהה את כל שדות ה-JSON עם השם"my_id"כמזהי מסמכים.מציינים את השדה הזה רק אם: (1) הערך של
gcsSource.dataSchemaהואcustomאוcsv, ו-(2) הערך שלauto_generate_idsהואfalseאו שלא צוין ערך. אחרת, מוחזרת שגיאתINVALID_ARGUMENT.שימו לב: הערך של שדה ה-JSON ב-Cloud Storage חייב להיות מסוג מחרוזת, להכיל בין 1 ל-63 תווים ולעמוד בדרישות של RFC-1034. אחרת, ייבוא המסמכים ייכשל.
שימו לב ששם השדה ב-JSON שצוין על ידי
id_fieldחייב להיות מסוג מחרוזת, להכיל בין 1 ל-63 תווים ולעמוד בדרישות של RFC-1034. אחרת, ייבוא המסמכים ייכשל.
-
C#
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים C#.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Go
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Go.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Java
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Java.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Node.js
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Node.js.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Python
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Python.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
Ruby
מידע נוסף מופיע בתיעוד העזר של ה-API של חיפוש מבוסס סוכנים Ruby.
כדי לבצע אימות ב-חיפוש מבוסס סוכנים, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
יצירת מאגר נתונים
ייבוא מסמכים
חיבור ל-Cloud Storage עם סנכרון תקופתי
לפני שמייבאים את הנתונים, כדאי לעיין במאמר בנושא הכנת נתונים להעברה.
בקטע הבא מוסבר איך ליצור מחבר נתונים שמקשר בין מיקום ב-Cloud Storage לבין מחבר נתונים של Agent Search, ואיך לציין תיקייה או קובץ במיקום הזה בשביל מאגר הנתונים שרוצים ליצור. מאגרי נתונים שהם צאצאים של מחברי נתונים נקראים מאגרי נתונים של ישויות.
הנתונים מסתנכרנים מעת לעת עם מאגר נתוני הישות. אפשר לציין סנכרון יומי, כל שלושה ימים או כל חמישה ימים.
המסוף
נכנסים לדף AI Applications במסוף Google Cloud .
עוברים לדף מאגרי נתונים.
לוחצים על יצירת מאגר נתונים.
בדף מקור, בוחרים באפשרות Cloud Storage.
בוחרים את סוג הנתונים שמייבאים.
לוחצים על תקופתי.
בוחרים את תדירות הסנכרון, כלומר באיזו תדירות מחבר Agent Search יסנכרן עם המיקום ב-Cloud Storage. אפשר לשנות את התדירות בהמשך.
בקטע בחירת תיקייה או קובץ לייבוא, בוחרים באפשרות תיקייה או קובץ.
לוחצים על עיון, בוחרים את הנתונים שהכנתם להעלאה ולוחצים על בחירה. אפשר גם להזין את המיקום ישירות בשדה
gs://.לוחצים על Continue.
בוחרים אזור למחבר הנתונים.
מזינים שם למחבר הנתונים.
אופציונלי: אם בחרתם מסמכים לא מובנים, אתם יכולים לבחור אפשרויות ניתוח וחלוקה למקטעים של המסמכים. כדי להשוות בין מנתחי נתונים, אפשר לעיין במאמר בנושא ניתוח מסמכים. מידע על חלוקה לחלקים זמין במאמר חלוקת מסמכים לחלקים לצורך RAG.
כדי לבחור מנתח, מרחיבים את אפשרויות לעיבוד מסמכים ומציינים את אפשרויות המנתח שרוצים להשתמש בהן.
שימוש בכלי לניתוח OCR ובכלי לניתוח פריסה עלול לגרור עלויות נוספות. מידע על התמחור של התכונות ב-Document AI
לוחצים על יצירה.
יצרתם עכשיו מחבר נתונים, שיסנכרן נתונים באופן תקופתי עם המיקום ב-Cloud Storage. יצרתם גם מאגר נתוני ישויות בשם
gcs_store.כדי לבדוק את סטטוס ההטמעה, עוברים לדף מאגרי נתונים ולוחצים על השם של מחבר הנתונים כדי לראות את הפרטים שלו בדף נתונים.
הכרטיסייה פעילות של הטמעת נתונים. כשהסטטוס בעמודה Data ingestion activity (פעילות של הכנסת נתונים) משתנה מ-In progress (בתהליך) ל-succeeded (הושלם), ההכנסה הראשונה של הנתונים מסתיימת.
בהתאם לגודל הנתונים, תהליך ההטמעה יכול להימשך כמה דקות עד כמה שעות.
אחרי שמגדירים את מקור הנתונים ומייבאים נתונים בפעם הראשונה, הנתונים מסונכרנים מהמקור בתדירות שבוחרים במהלך ההגדרה. כשעה אחרי שיוצרים את מחבר הנתונים, מתבצע הסנכרון הראשון. הסנכרון הבא מתרחש כ-24 שעות, 72 שעות או 120 שעות לאחר מכן.
השלבים הבאים
כדי לצרף את מאגר הנתונים לאפליקציה, יוצרים אפליקציה ובוחרים את מאגר הנתונים לפי השלבים במאמר יצירת אפליקציה מותאמת אישית להמלצות.
כדי לראות תצוגה מקדימה או לקבל המלצות אחרי שמגדירים את האפליקציה ואת מאגר הנתונים, אפשר לעיין במאמר קבלת המלצות.
העלאת נתונים מובְנים בפורמט JSON באמצעות ה-API
כדי להעלות ישירות מסמך או אובייקט בפורמט JSON באמצעות ה-API, פועלים לפי השלבים הבאים.
לפני שמייבאים את הנתונים, צריך להכין את הנתונים להעברה.
REST
כדי להשתמש בשורת הפקודה כדי ליצור מאגר נתונים ולייבא נתוני JSON מובְנים, פועלים לפי השלבים הבאים:
יוצרים מאגר נתונים.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project: PROJECT_ID" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \ -d '{ "displayName": "DATA_STORE_DISPLAY_NAME", "industryVertical": "GENERIC", "solutionTypes": ["SOLUTION_TYPE_RECOMMENDATION"] }'מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
DATA_STORE_ID: המזהה של מאגר נתוני ההמלצות שרוצים ליצור. המזהה יכול להכיל רק אותיות קטנות, ספרות, קווים תחתונים ומקפים. -
DATA_STORE_DISPLAY_NAME: השם המוצג של מאגר נתוני ההמלצות שרוצים ליצור.
-
אופציונלי: אפשר לספק סכימה משלכם. בדרך כלל מקבלים תוצאות טובות יותר כשמספקים סכימה. מידע נוסף זמין במאמר בנושא הוספה או זיהוי אוטומטי של סכימה.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/schemas/default_schema" \ -d '{ "structSchema": JSON_SCHEMA_OBJECT }'מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
DATA_STORE_ID: המזהה של מאגר הנתונים של ההמלצות.
JSON_SCHEMA_OBJECT: סכימת ה-JSON שלכם כאובייקט JSON – לדוגמה:{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "title": { "type": "string", "keyPropertyMapping": "title" }, "categories": { "type": "array", "items": { "type": "string", "keyPropertyMapping": "category" } }, "uri": { "type": "string", "keyPropertyMapping": "uri" } } }
-
ייבוא נתונים מובְנים שתואמים לסכימה שהוגדרה.
יש כמה גישות להעלאת נתונים, כולל:
מעלים מסמך JSON.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents?documentId=DOCUMENT_ID" \ -d '{ "jsonData": "JSON_DOCUMENT_STRING" }'מחליפים את
JSON_DOCUMENT_STRINGבמסמך ה-JSON כמחרוזת אחת. הפורמט צריך להיות בהתאם לסכימת ה-JSON שסיפקתם בשלב הקודם – לדוגמה:```none { \"title\": \"test title\", \"categories\": [\"cat_1\", \"cat_2\"], \"uri\": \"test uri\"} ```מעלים אובייקט JSON.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents?documentId=DOCUMENT_ID" \ -d '{ "structData": JSON_DOCUMENT_OBJECT }'מחליפים את
JSON_DOCUMENT_OBJECTבמסמך ה-JSON כאובייקט JSON. הפורמט צריך להיות בהתאם לסכימת ה-JSON שסיפקתם בשלב הקודם – לדוגמה:```json { "title": "test title", "categories": [ "cat_1", "cat_2" ], "uri": "test uri" } ```עדכון באמצעות מסמך JSON.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID" \ -d '{ "jsonData": "JSON_DOCUMENT_STRING" }'עדכון באמצעות אובייקט JSON.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID" \ -d '{ "structData": JSON_DOCUMENT_OBJECT }'
השלבים הבאים
כדי לצרף את מאגר הנתונים לאפליקציה, יוצרים אפליקציה ובוחרים את מאגר הנתונים לפי השלבים במאמר יצירת אפליקציה מותאמת אישית להמלצות.
כדי לראות תצוגה מקדימה של ההמלצות אחרי שמגדירים את האפליקציה ואת מאגר הנתונים, אפשר לעיין במאמר קבלת המלצות.
יצירת מאגר נתונים באמצעות Terraform
אפשר להשתמש ב-Terraform כדי ליצור מאגר נתונים ריק. אחרי שמאגר הנתונים הריק נוצר, אפשר להטמיע בו נתונים באמצעות Google Cloud המסוף או פקודות API.
כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.
כדי ליצור מאגר נתונים ריק באמצעות Terraform, אפשר לעיין במאמר
google_discovery_engine_data_store.