אימות והתחברות למקור נתונים באמצעות Conversational Analytics API

מפתחים יכולים להשתמש ב-Conversational Analytics API, שאפשר לגשת אליו דרך geminidataanalytics.googleapis.com, כדי ליצור ממשק צ'אט מבוסס-בינה מלאכותית (AI) או סוכן נתונים, שמשיב על שאלות לגבי נתונים מובנים ב-BigQuery, ב-Looker וב-Looker Studio באמצעות שפה טבעית.

בדף הזה מוסבר איך לבצע אימות ל-Conversational Analytics API. בנוסף, מוסבר במאמר איך להגדיר חיבורים לנתונים ב-Looker, ב-BigQuery, ב-Looker Studio ובמסדי נתונים בענן (AlloyDB,‏ GoogleSQL for Spanner,‏ Cloud SQL ו-Cloud SQL ל-PostgreSQL) באמצעות בקשות HTTP ישירות או ה-SDK. ב-Conversational Analytics API נעשה שימוש בשיטות אימות סטנדרטיות שלGoogle Cloud .

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

לפני שמאמתים את Conversational Analytics API ומגדירים קישורים לנתונים, צריך להשלים את הדרישות המוקדמות ולהפעיל את ממשקי ה-API הנדרשים עבור פרויקט Google Cloud , כמו שמתואר במאמר הפעלת Conversational Analytics API.

אימות ל-Conversational Analytics API

בקטע הזה מוסבר איך לבצע אימות ל-Conversational Analytics API (באמצעות geminidataanalytics.googleapis.com) באמצעות שיטות HTTP ו-Python כדי לקבל את אסימוני ההרשאה הנדרשים.

‫HTTP curl

פקודת curl הדוגמה הבאה שולחת בקשה ל-Conversational Analytics API. הפקודה gcloud auth print-identity-token מספקת אסימון גישה שמשמש להרשאה. בדוגמה לקוד, מחליפים את בנתיב המתאים למשאב ה-API.

curl  -H "Authorization: Bearer $(gcloud auth print-identity-token)" \
https://geminidataanalytics.googleapis.com/

‫HTTP באמצעות Python

בדוגמה הבאה של קוד Python אפשר לראות איך מקבלים אסימון גישה לאימות HTTP באמצעות Google Cloud CLI ו-Python.

  billing_project = 'YOUR_BILLING_PROJECT'
  access_token = !gcloud auth application-default print-access-token
  url = f"https://geminidataanalytics.googleapis.com/v1beta/projects/{billing_project}:method"
  headers = {"Authorization": f'Bearer {access_token[0]}'}

מחליפים את הערכים לדוגמה באופן הבא:

  • YOUR_BILLING_PROJECT: המזהה של פרויקט החיוב שבו מופעלים ממשקי ה-API הנדרשים.
  • method: נתיב המשאב של נקודת הקצה של היעד. לדוגמה:
    • כדי ליצור סוכן נתונים, משתמשים ב-method ‏POST ובנתיב המשאב /v1beta/projects/{billing_project}/locations/global/dataAgents.
    • כדי להציג רשימה של סוכני נתונים קיימים, משתמשים בשיטה GET ובנתיב המשאב /v1beta/projects/{billing_project}/locations/global/dataAgents.

Python SDK

בדוגמת הקוד הבאה ב-Python אפשר לראות איך מאמתים את חשבון Google כדי לקבל גישה ל-Conversational Analytics API ב-Colaboratory:

from google.colab import auth
auth.authenticate_user()

חיבור ל-Looker באמצעות Conversational Analytics API

כדי להתחבר ל-Looker באמצעות Conversational Analytics API, צריך לספק את הפרטים הבאים:

  • כתובת ה-URL של המופע ב-Looker
  • מודל LookML ספציפי וLooker Explore שרוצים להשתמש בהם כמקור נתונים

בנוסף, מופע Looker צריך לעמוד בדרישות ספציפיות:

בנוסף, למשתמש המאומת או לחשבון השירות צריכות להיות ההרשאות הנדרשות ב-Looker.

בחירת שיטת האימות המתאימה

אחרי כן, תוכלו לבחור אם לבצע אימות באמצעות מפתחות Looker API (מזהה לקוח וסוד לקוח) או באמצעות אסימון גישה. לקוחות שמשתמשים ב-Looker (Google Cloud core) עם חיבורים פרטיים בלבד צריכים לבצע אימות באמצעות אסימון גישה.

הטבלה הבאה תעזור לכם לבחור את שיטת האימות המתאימה.

סוג המשתמש שיטת אימות ב-Looker (המקורי) ב-Looker (Google Cloud Core) ל-Looker (Google Cloud Core)‎ שמשתמש רק בחיבורים פרטיים תיאור
הטמעת משתמשים טוקן גישה login_user login_user login_user ההרשאות מכבדות את ההרשאות ברמת השורה והעמודה ב-LookML (לדוגמה, access_filters, ‏ access_grants, ‏ sql_always_where) של access_token משתמש היעד.
משתמשים רגילים טוקן גישה

login_user

או

לקוח OAuth

לקוח OAuth לקוח OAuth ההרשאות מכבדות את ההרשאות ברמת השורה והעמודה ב-LookML (לדוגמה, access_filters, ‏ access_grants, ‏ sql_always_where) של access_token משתמש היעד.
חשבון שירות עם גישה ל-Looker API בלבד מפתח API Client ID וסוד Client ID וסוד לא רלוונטי לכל המשתמשים יש את אותה רמת גישה ל-Looker.

מפתחות API משתמשים בהרשאות וברמות הגישה של המשתמש. מפתחות API יכולים להיות שימושיים אם אתם מפתחים אפליקציה שבה לכולם יש את אותה רמת גישה.

אסימון גישה מאפשר לכם להשתמש בהרשאות ברמת השורה והעמוד ב-LookML (לדוגמה,access_filters, ‏ access_grants, ‏ sql_always_where) של access_token של משתמש היעד. טוקן גישה שימושי לאפליקציה עם מספר דיירים.

ההרשאות הנדרשות ב-Looker

למשתמש או לחשבון השירות שהאישורים שלהם משמשים לאימות, צריך להיות מוקצה תפקיד ב-Looker שכולל את ההרשאות הבאות עבור המודלים שרוצים לשלוח להם שאילתות:

אפשר להגדיר את ההרשאות האלה בקטע Admin > Roles במופע Looker.

אימות באמצעות מפתחות Looker API

בקטע הזה מוסבר איך ליצור את מפתחות ה-API ולהגדיר את Conversational Analytics API כדי להתחבר ל-Looker באמצעות בקשות HTTP ישירות או באמצעות ה-SDK.

כדי ליצור חיבור למכונה של Looker, צריך מפתחות Looker API תקינים, שנוצרים על ידי Looker ומורכבים ממזהה לקוח ומסוד לקוח. ‫Looker משתמש במפתחות האלה כדי לאשר בקשות ל-Looker API.

מידע נוסף על יצירת מפתחות Looker API חדשים זמין במאמר הגדרות אדמין – משתמשים. מידע נוסף על שיטות אימות ועל ניהול מפתחות Looker API זמין במאמר אימות Looker API.

‫HTTP באמצעות Python

אחרי שיוצרים את מפתחות ה-API (מזהה לקוח וסוד), אפשר להגדיר את Conversational Analytics API כדי להתחבר ל-Looker באמצעות בקשות HTTP ישירות. בדוגמת הקוד הבאה אפשר לראות איך מציינים את פרטי מקור הנתונים של Looker ואת מפתחות ה-API בגוף של בקשת ה-HTTP.


looker_credentials = {
  "oauth": {
      "secret": {
        "client_id": "your_looker_client_id",
        "client_secret": "your_looker_client_secret",
      }
  }
}

looker_data_source = {
  "looker": {
    "explore_references": {
        "looker_instance_uri": "https://your_company.looker.com",
        "lookml_model": "your_model",
        "explore": "your_explore",
    }
  }
}

מחליפים את הערכים לדוגמה באופן הבא:

  • your_looker_client_id: מזהה הלקוח של מפתח Looker API שנוצר
  • your_looker_client_secret: סוד הלקוח של מפתח Looker API שנוצר
  • https://your_company.looker.com: כתובת ה-URL המלאה של מופע Looker
  • your_model: השם של מודל LookML שבו רוצים להשתמש
  • your_explore: השם של התכונה 'חיפוש והשוואה' במודל שצוין שרוצים להשתמש בו

Python SDK

אחרי שיוצרים את מפתחות ה-API (מזהה לקוח וסוד), אפשר להגדיר את Conversational Analytics API להתחבר ל-Looker באמצעות Python. בדוגמת הקוד הבאה ב-Python אפשר לראות איך מציינים את פרטי מקור הנתונים של Looker ואת מפתחות ה-API של Conversational Analytics API.

looker_client_id = "YOUR-LOOKER-CLIENT-ID" # @param {type:"string"}
looker_client_secret = "YOUR-LOOKER-CLIENT-SECRET" # @param {type:"string"}
looker_instance_uri = "YOUR-LOOKER-INSTANCE-URI" # @param {type:"string"}
lookml_model = "YOUR-LOOKER-MODEL" # @param {type:"string"}
explore = "YOUR-LOOKER-EXPLORE" # @param {type:"string"}

# Looker data source
looker_explore_reference = geminidataanalytics.LookerExploreReference()
looker_explore_reference.looker_instance_uri = looker_instance_uri
looker_explore_reference.lookml_model = lookml_model
looker_explore_reference.explore = explore

credentials = geminidataanalytics.Credentials()
credentials.oauth.secret.client_id = looker_client_id
credentials.oauth.secret.client_secret = looker_client_secret

# Connect to your data source
datasource_references = geminidataanalytics.DatasourceReferences()
datasource_references.looker.explore_references = [looker_explore_reference]

מחליפים את הערכים לדוגמה באופן הבא:

  • YOUR-LOOKER-CLIENT-ID: מזהה הלקוח של מפתח Looker API שנוצר
  • YOUR-LOOKER-CLIENT-SECRET: סוד הלקוח של מפתח Looker API שנוצר
  • YOUR-LOOKER-INSTANCE-URI: כתובת ה-URL המלאה של מופע Looker
  • YOUR-LOOKER-MODEL: השם של מודל Looker שרוצים להשתמש בו
  • YOUR-LOOKER-EXPLORE: השם של התכונה 'ניתוח נתונים' ב-Looker שבה רוצים להשתמש

אימות באמצעות טוקן גישה

בקטע הזה מוסבר איך להגדיר את Conversational Analytics API כדי להתחבר ל-Looker באמצעות אסימון גישה.

כדי ליצור חיבור למופע Looker, צריך ערך OAuth2 access_token תקין, שנוצר על ידי בקשה מוצלחת לנקודת קצה ל-Looker API‏ login.

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

‫HTTP באמצעות Python

קוד לדוגמה הבא מדגים איך לציין את הפרטים של מקור הנתונים ב-Looker ואת טוקן הגישה בגוף של בקשת ה-HTTP.

כדי לשפר את האבטחה, מומלץ לאחסן את טוקן הגישה של Looker‏ (access_token) כמשתנה סביבתי.

looker_credentials = {
  "oauth": {
    "token": {
      "access_token": "YOUR-TOKEN",
    }
  }
}

looker_data_source = {
  "looker": {
    "explore_references": {
        "looker_instance_uri": "https://your_company.looker.com",
        "lookml_model": "your_model",
        "explore": "your_explore",
    }
  }
}

מחליפים את הערכים לדוגמה באופן הבא:

  • YOUR-TOKEN: הערך access_token שיוצרים כדי לבצע אימות ל-Looker.
  • https://your_company.looker.com: כתובת ה-URL המלאה של מופע Looker
  • your_model: השם של מודל LookML שבו רוצים להשתמש
  • your_explore: השם של התכונה 'חיפוש והשוואה' במודל שצוין שרוצים להשתמש בו

Python SDK

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

כדי לשפר את האבטחה, מומלץ לאחסן את טוקן הגישה של Looker‏ (access_token) כמשתנה סביבתי.

looker_access_token = "YOUR-TOKEN"
looker_instance_uri = "YOUR-LOOKER-INSTANCE-URI"
lookml_model = "YOUR-LOOKER-MODEL"
explore = "YOUR-LOOKER-EXPLORE"

# Looker data source
looker_explore_reference = geminidataanalytics.LookerExploreReference()
looker_explore_reference.looker_instance_uri = looker_instance_uri
looker_explore_reference.lookml_model = lookml_model
looker_explore_reference.explore = explore

credentials = geminidataanalytics.Credentials()
credentials.oauth.token.access_token = looker_access_token

# Connect to your data source
datasource_references = geminidataanalytics.DatasourceReferences()
datasource_references.looker.explore_references = [looker_explore_reference]

מחליפים את הערכים לדוגמה באופן הבא:

  • YOUR-TOKEN: הערך access_token שבו אתם משתמשים כדי לבצע אימות ל-Looker
  • YOUR-LOOKER-INSTANCE-URI: כתובת ה-URL המלאה של מופע Looker
  • YOUR-LOOKER-MODEL: השם של מודל Looker שרוצים להשתמש בו
  • YOUR-LOOKER-EXPLORE: השם של התכונה 'ניתוח נתונים' ב-Looker שבה רוצים להשתמש

‫HTTP באמצעות JavaScript

קוד לדוגמה הבא מדגים איך לציין את הפרטים של מקור הנתונים ב-Looker ואת טוקן הגישה בגוף של בקשת ה-HTTP.

כדי לשפר את האבטחה, מומלץ לאחסן את טוקן הגישה של Looker‏ (access_token) כמשתנה סביבתי.

const requestBody = {
  project: GCP_PROJECT,
  messages: [
    {
      user_message: {
        text: inputWithPreviousMessages,
      },
    },
  ],
  context: {
    system_instruction: agentConfig.system_instructions,
    datasource_references: {
      looker: {
        explore_references: [
          {
            looker_instance_uri: YOUR-LOOKER-INSTANCE-URI,
            lookml_model: YOUR-LOOKER-MODEL,
            explore: YOUR-LOOKER-EXPLORE,
          },
        ],
        credentials: {
          oauth: {
            token: {
              access_token: YOUR-TOKEN,
            },
          },
        },
      },
    },
  },
}

מחליפים את הערכים לדוגמה באופן הבא:

  • YOUR-LOOKER-INSTANCE-URI: כתובת ה-URL המלאה של מופע Looker
  • YOUR-LOOKER-MODEL: השם של מודל LookML שבו רוצים להשתמש
  • YOUR-LOOKER-EXPLORE: השם של התכונה 'חיפוש והשוואה' במודל שצוין שרוצים להשתמש בו
  • YOUR-TOKEN: הערך access_token שיוצרים כדי לבצע אימות ל-Looker.

התחברות ל-BigQuery באמצעות Conversational Analytics API

כדי להתחבר לטבלה אחת או יותר ב-BigQuery באמצעות Conversational Analytics API, צריך לאמת את עצמכם בפרויקט הרלוונטי ב-BigQuery עבור כל טבלה. לכל טבלה, צריך לספק את הפרטים הבאים:

  • מזהה הפרויקט ב-BigQuery
  • מזהה מערך הנתונים ב-BigQuery
  • מזהה הטבלה ב-BigQuery

ב-Conversational Analytics API, אין מגבלות קשיחות על מספר הטבלאות ב-BigQuery שאפשר להתחבר אליהן. עם זאת, חיבור למספר גדול של טבלאות עלול להפחית את רמת הדיוק או לגרום לחריגה ממגבלת הטוקנים של Gemini. גם שאילתות שמצריכות צירופים מורכבים בין כמה טבלאות עלולות להניב תשובות פחות מדויקות.

בקטע הזה מוסבר איך להגדיר את Conversational Analytics API כדי להתחבר ל-BigQuery באמצעות בקשות HTTP ישירות או SDK.

‫HTTP באמצעות Python

קוד לדוגמה הבא מגדיר חיבור לכמה טבלאות ב-BigQuery.

bigquery_data_sources = {
    "bq": {
      "tableReferences": [
        {
          "projectId": "my_project_id",
          "datasetId": "my_dataset_id",
          "tableId": "my_table_id"
        },
        {
          "projectId": "my_project_id_2",
          "datasetId": "my_dataset_id_2",
          "tableId": "my_table_id_2"
        },
        {
          "projectId": "my_project_id_3",
          "datasetId": "my_dataset_id_3",
          "tableId": "my_table_id_3"
        },
      ]
    }
}

מחליפים את הערכים לדוגמה באופן הבא:

  • my_project_id: המזהה של הפרויקט Google Cloud שמכיל את מערך הנתונים והטבלה ב-BigQuery שאליהם רוצים להתחבר. כדי להתחבר למערך נתונים ציבורי, מציינים bigquery-public-data.
  • my_dataset_id: המזהה של מערך הנתונים ב-BigQuery.
  • my_table_id: המזהה של הטבלה ב-BigQuery.

Python SDK

אפשר להשתמש ב-auth SDK מ-Colaboratory כדי לבצע אימות ב-BigQuery באמצעות פרטי הכניסה של המשתמש שאומת ב-Colaboratory.

קוד Python לדוגמה שמופיע בהמשך מגדיר חיבור לכמה טבלאות BigQuery ומדגים איך לאמת את חשבון Google שלכם ב-BigQuery בתוך Colaboratory.

from google.colab import auth
auth.authenticate_user()

# BigQuery data source
bigquery_table_reference = geminidataanalytics.BigQueryTableReference()
bigquery_table_reference.project_id = "my_project_id"
bigquery_table_reference.dataset_id = "my_dataset_id"
bigquery_table_reference.table_id = "my_table_id"

bigquery_table_reference_2 = geminidataanalytics.BigQueryTableReference()
bigquery_table_reference_2.project_id = "my_project_id_2"
bigquery_table_reference_2.dataset_id = "my_dataset_id_2"
bigquery_table_reference_2.table_id = "my_table_id_2"

bigquery_table_reference_3 = geminidataanalytics.BigQueryTableReference()
bigquery_table_reference_3.project_id = "my_project_id_3"
bigquery_table_reference_3.dataset_id = "my_dataset_id_3"
bigquery_table_reference_3.table_id = "my_table_id_3"

# Connect to your data source
datasource_references = geminidataanalytics.DatasourceReferences()
datasource_references.bq.table_references = [bigquery_table_reference, bigquery_table_reference_2, bigquery_table_reference_3]

מחליפים את הערכים לדוגמה באופן הבא:

  • my_project_id: המזהה של הפרויקט Google Cloud שמכיל את מערך הנתונים והטבלה ב-BigQuery שאליהם רוצים להתחבר. כדי להתחבר למערך נתונים ציבורי, מציינים bigquery-public-data.
  • my_dataset_id: המזהה של מערך הנתונים ב-BigQuery. לדוגמה, san_francisco.
  • my_table_id: המזהה של הטבלה ב-BigQuery. לדוגמה, street_trees.

חיבור ל-Looker Studio באמצעות Conversational Analytics API

כדי להתחבר ל-Looker Studio באמצעות Conversational Analytics API, קודם צריך להפעיל את Looker Studio API. בקטע הזה מוסבר איך להגדיר את Conversational Analytics API כדי להתחבר ל-Looker Studio באמצעות בקשות HTTP ישירות או SDK.

כדי להשתמש בממשק ה-API לניתוח נתונים שיחותיים עם Looker Studio Pro, המינוי שלכם ל-Pro צריך להיות מחוץ להיקף של VPC-SC.

הפעלת Looker Studio API

כדי להפעיל את Looker Studio API, פועלים לפי ההוראות במאמר הפעלת ה-API.

אימות ב-Looker Studio

כדי להתחבר ל-Looker Studio באמצעות Conversational Analytics API, צריך לעבור אימות ב-Looker Studio ולספק את מזהה מקור הנתונים ב-Looker Studio.

‫HTTP באמצעות Python

אחרי שמפעילים את Looker Studio API, אפשר לבצע אימות ל-Looker Studio על ידי שליחת בקשות HTTP curl באמצעות Python. קוד לדוגמה הבא מדגים איך מציינים את פרטי מקור הנתונים של Looker בגוף של בקשת ה-HTTP.

אתם יכולים לבצע אימות ל-Looker Studio על ידי שליחת בקשות HTTP ישירות. בדוגמה הבאה מוצגת קריאת HTTP לדוגמה בבלוק קוד.

looker_studio_data_source = {
    "studio":{
        "studio_references":
        [
            {
              "datasource_id": "your_studio_datasource_id"
            }
        ]
    }
}

מחליפים את your_studio_datasource_id במזהה בפועל של מקור הנתונים ב-Looker Studio שבו רוצים להשתמש.

Python SDK

אחרי שמפעילים את Looker Studio API, אפשר לבצע אימות ל-Looker Studio באמצעות SDK. בדוגמת הקוד הבאה ב-Python אפשר לראות איך מציינים את פרטי מקור הנתונים של Looker ומבצעים אימות ב-Looker Studio.


datasource_id = "STUDIO-DATASOURCE-ID"

# Looker Studio
studio_references = geminidataanalytics.StudioDatasourceReference()
studio_references.datasource_id = studio_datasource_id

# Connect to your data source
datasource_references = geminidataanalytics.DatasourceReferences()
datasource_references.studio.studio_references = [studio_references]

מחליפים את STUDIO-DATASOURCE-ID במזהה בפועל של מקור הנתונים ב-Looker Studio שבו רוצים להשתמש.

חיבור למסדי נתונים באמצעות Conversational Analytics API

כדי להתחבר למסדי נתונים באמצעות Conversational Analytics API, צריכות להיות לכם הרשאות IAM הנדרשות למופע מסד הנתונים.

קישור ל-AlloyDB ל-PostgreSQL

למשתמש או לחשבון השירות צריך להיות התפקיד alloydb.databaseUser. מידע נוסף זמין במאמר AlloyDB, אימות מסד נתונים של IAM.

‫HTTP באמצעות Python

בדוגמת הקוד הבאה אפשר לראות איך מציינים את הפרטים של AlloyDB ומקור הנתונים בגוף של בקשת ה-HTTP לנקודת הקצה queryData.

alloydb_data_source = {
    "alloydbReference": {
        "databaseReference": {
            "tableId": [
                "your_table_id_1",
                "your_table_id_2"
            ]
        },
        "agentContextReference": {
            "context_set_id": "your_context_set_id"
        }
    }
}

מחליפים את הערכים לדוגמה באופן הבא:

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

Python SDK

בדוגמת הקוד הבאה ב-Python אפשר לראות איך מגדירים את הפרטים של AlloyDB ומקור הנתונים באמצעות Python SDK.

# AlloyDB data source
alloydb_table_ids = ["your_table_id_1", "your_table_id_2"]
alloydb_context_set_id = "your_context_set_id"

alloydb_reference = geminidataanalytics.AlloyDbReference()
alloydb_reference.database_reference.table_id = alloydb_table_ids
alloydb_reference.agent_context_reference.context_set_id = alloydb_context_set_id

# Connect to your data source
datasource_references = geminidataanalytics.DatasourceReferences()
datasource_references.alloydb.alloydb_reference = alloydb_reference

מחליפים את הערכים לדוגמה באופן הבא:

  • your_table_id_1: המזהה של הטבלה הראשונה במופע AlloyDB.
  • your_table_id_2: המזהה של הטבלה השנייה במופע AlloyDB.
  • your_context_set_id: המזהה המלא של קבוצת ההקשר שרוצים לאחזר. מידע נוסף על איתור מזהה קבוצת ההקשר זמין במאמר איתור מזהה הקשר של הסוכן ב-AlloyDB.

חיבור ל-GoogleSQL for Spanner

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

‫HTTP באמצעות Python

בדוגמת הקוד הבאה אפשר לראות איך מציינים את פרטי מקור הנתונים של GoogleSQL ל-Spanner בגוף של בקשת ה-HTTP לנקודת הקצה queryData.

spanner_data_source = {
    "spannerReference": {
        "databaseReference": {
            "tableId": [
                "your_table_id_1",
                "your_table_id_2"
            ]
        },
        "agentContextReference": {
            "context_set_id": "your_context_set_id"
        }
    }
}

מחליפים את הערכים לדוגמה באופן הבא:

  • your_table_id_1: המזהה של הטבלה הראשונה במופע GoogleSQL for Spanner.
  • your_table_id_2: המזהה של הטבלה השנייה במופע GoogleSQL for Spanner.
  • your_context_set_id: המזהה המלא של קבוצת ההקשר שרוצים לאחזר. למידע נוסף על איתור מזהה קבוצת ההקשר, אפשר לעיין במאמר איתור מזהה ההקשר של הסוכן ב-GoogleSQL ל-Spanner.

Python SDK

בדוגמת הקוד הבאה ב-Python אפשר לראות איך מגדירים את פרטי מקור הנתונים של GoogleSQL ל-Spanner באמצעות Python SDK.

# Spanner data source
spanner_table_ids = ["your_table_id_1", "your_table_id_2"]
spanner_context_set_id = "your_context_set_id"

spanner_reference = geminidataanalytics.SpannerReference()
spanner_reference.database_reference.table_id = spanner_table_ids
spanner_reference.agent_context_reference.context_set_id = spanner_context_set_id

# Connect to your data source
datasource_references = geminidataanalytics.DatasourceReferences()
datasource_references.spanner.spanner_reference = spanner_reference

מחליפים את הערכים לדוגמה באופן הבא:

  • your_table_id_1: המזהה של הטבלה הראשונה במופע GoogleSQL for Spanner.
  • your_table_id_2: המזהה של הטבלה השנייה במופע GoogleSQL for Spanner.
  • your_context_set_id: המזהה המלא של קבוצת ההקשר שרוצים לאחזר. למידע נוסף על איתור מזהה קבוצת ההקשר, אפשר לעיין במאמר איתור מזהה ההקשר של הסוכן ב-GoogleSQL ל-Spanner.

חיבור ל-Cloud SQL ול-Cloud SQL ל-PostgreSQL

בקטעים הבאים מוסבר איך מתחברים ל-Cloud SQL ול-Cloud SQL ל-PostgreSQL. למשתמש או לחשבון השירות צריכים להיות התפקידים cloudsql.studioUser ו-cloudsql.instanceUser. מידע נוסף זמין במאמרים ניהול משתמשים באמצעות אימות מסד נתונים ב-IAM ל-Cloud SQL וניהול משתמשים באמצעות אימות מסד נתונים ב-IAM ל-Cloud SQL ל-PostgreSQL.

‫HTTP באמצעות Python

בדוגמת הקוד הבאה אפשר לראות איך מציינים את פרטי מקור הנתונים של Cloud SQL ו-Cloud SQL ל-PostgreSQL בגוף של בקשת ה-HTTP לנקודת הקצה queryData.

cloudsql_data_source = {
    "cloudSqlReference": {
        "databaseReference": {
            "tableId": [
                "your_table_id_1",
                "your_table_id_2"
            ]
        },
        "agentContextReference": {
            "context_set_id": "your_context_set_id"
        }
    }
}

מחליפים את הערכים לדוגמה באופן הבא:

Python SDK

בדוגמת הקוד הבאה ב-Python אפשר לראות איך מגדירים את פרטי מקור הנתונים של Cloud SQL ו-Cloud SQL ל-PostgreSQL באמצעות Python SDK.

# Cloud SQL data source
cloudsql_table_ids = ["your_table_id_1", "your_table_id_2"]
cloudsql_context_set_id = "your_context_set_id"

cloudsql_reference = geminidataanalytics.CloudSqlReference()
cloudsql_reference.database_reference.table_id = cloudsql_table_ids
cloudsql_reference.agent_context_reference.context_set_id = cloudsql_context_set_id

# Connect to your data source
datasource_references = geminidataanalytics.DatasourceReferences()
datasource_references.cloudsql.cloudsql_reference = cloudsql_reference

מחליפים את הערכים לדוגמה באופן הבא: