Method: projects.locations.chat

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

בקשת HTTP

POST https://geminidataanalytics.googleapis.com/v1/{parent=projects/*/locations/*}:chat

כתובת ה-URL כתובה בתחביר של gRPC Transcoding.

פרמטרים של נתיב

פרמטרים
parent

string

חובה. ערך ההורה של בקשת צ'אט. דוגמה: projects/{project}/locations/{location}

גוף הבקשה

גוף הבקשה מכיל נתונים במבנה הבא:

ייצוג ב-JSON
{
  "messages": [
    {
      object (Message)
    }
  ],
  "credentials": {
    object (Credentials)
  },
  "thinkingMode": enum (ThinkingMode),
  "model": enum (Model),

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "inlineContext": {
    object (Context)
  },
  "conversationReference": {
    object (ConversationReference)
  },
  "dataAgentContext": {
    object (DataAgentContext)
  },
  "clientManagedResourceContext": {
    object (ClientManagedResourceContext)
  }
  // End of mutually exclusive fields.

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "lookerSettings": {
    object (LookerSettings)
  }
  // End of mutually exclusive fields.
}
שדות
messages[]

object (Message)

חובה. תוכן השיחה הנוכחית.

credentials

object (Credentials)

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

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

thinkingMode

enum (ThinkingMode)

זה שינוי אופציונלי. מצב החשיבה שבו יש להשתמש בלולאת הסוכן. אם לא מציינים ערך, ברירת המחדל היא THINKING_MODE_UNSPECIFIED.

model

enum (Model)

זה שינוי אופציונלי. המודל שבו לולאת הסוכן תשתמש כשהיא תעבד את הבקשה. ההגדרה הזו משפיעה רק כשלא מוגדר context.options.model.

ספק ההקשר של בקשת הצ'אט. הערך יכול להיות: inline_context, שהוא הקשר שמוגדר בשורה בבקשה. data_agent, שהוא הפניה למשאב של סוכן נתונים. conversation_reference, שהוא הפניה לשיחה ולנתוני הקשר שנשמרו באמצעות conversation_id ו-agent_id. זו רשימה של שדות שמוציאים זה את זה. בתשובה יוגדר לכל היותר אחד מהשדות הבאים:
inlineContext

object (Context)

זה שינוי אופציונלי. הקשר מוטמע לבקשת הצ'אט. אפשר להשתמש בשיטה הזו כדי לנהל צ'אט ללא מצב (ללא ניהול של שימור שיחות וללא סוכן) על ידי העברת כל ההקשר בתוך השורה.

conversationReference

object (ConversationReference)

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

dataAgentContext

object (DataAgentContext)

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

clientManagedResourceContext

object (ClientManagedResourceContext)

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

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

object (LookerSettings)

זה שינוי אופציונלי. הגדרות ספציפיות ל-Looker.

סוף השדות שמוציאים זה את זה.

גוף התשובה

אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל זרם של מופעי Message.

היקפי הרשאות

נדרש אחד מהיקפי ההרשאות הבאים של OAuth:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/geminidataanalytics

ניתן למצוא מידע נוסף כאן: Authentication Overview.

ConversationReference

הפניה לשיחה ולסוכן בהקשר מתמשך.

ייצוג ב-JSON
{
  "conversation": string,
  "dataAgentContext": {
    object (DataAgentContext)
  }
}
שדות
conversation

string

חובה. השם של משאב השיחה. פורמט: projects/{project}/locations/{location}/conversations/{conversationId}

dataAgentContext

object (DataAgentContext)

חובה. הקשר לבקשה בצ'אט באמצעות סוכן נתונים.

DataAgentContext

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

ייצוג ב-JSON
{
  "dataAgent": string,
  "contextVersion": enum (ContextVersion)
}
שדות
dataAgent

string

חובה. השם של משאב סוכן הנתונים.

contextVersion

enum (ContextVersion)

זה שינוי אופציונלי. גרסת ההקשר שתשמש את DCS (למשל STAGING, ‏ PUBLISHED)

ContextVersion

רשימת גרסאות ההקשר שנתמכות על ידי DCS. יש שתי גרסאות של הקשר. הסיבה לכך היא לשמור על ניהול גרסאות של סוכן הנתונים.

טיפוסים בני מנייה (enum)
CONTEXT_VERSION_UNSPECIFIED לא צוין או לא מוכר.
STAGING בגרסה הזו, DCS ישתמש בהקשר העדכני ביותר של סביבת הפיתוח עבור סוכן הנתונים.
PUBLISHED בגרסה הזו, DCS ישתמש בהקשר האחרון שפורסם עבור סוכן הנתונים.

ClientManagedResourceContext

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

ייצוג ב-JSON
{
  "inlineContext": {
    object (Context)
  },
  "conversationId": string,
  "agentId": string
}
שדות
inlineContext

object (Context)

חובה. ההקשר של בקשת הצ'אט. כדי לשוחח בלי ש-GDA API ינהל את השיחה וישמור את הסוכן, צריך להעביר את כל ההקשר בתוך השורה.

conversationId

string

זה שינוי אופציונלי. מזהה השיחה בניהול הלקוח.

agentId

string

זה שינוי אופציונלי. מזהה הנציג שמנוהל על ידי הלקוח.

LookerSettings

הודעה להחזקת הגדרות מותאמות אישית ספציפיות ל-Looker.

ייצוג ב-JSON
{
  "enableDevMode": boolean
}
שדות
enableDevMode

boolean

זה שינוי אופציונלי. אם לפעול במצב פיתוח של Looker. אם הערך הוא True, הסשן של ה-API יעבור לסביבת העבודה "dev", וכך תתאפשר אינטראקציה עם שינויי LookML בהסתעפות הפיתוח של המשתמש. אם המדיניות מוגדרת כ-False או לא מוגדרת, הסשן נשאר במצב ברירת המחדל (מצב ייצור). מידע נוסף זמין בכתובת https://cloud.google.com/looker/docs/dev-mode-prod-mode.

פרטי כניסה

מייצג צורות שונות של מפרט פרטי כניסה.

ייצוג ב-JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "oauth": {
    object (OAuthCredentials)
  }
  // End of mutually exclusive fields.
}
שדות
סוג פרטי הכניסה. זו רשימה של שדות שמוציאים זה את זה. בכל תשובה יוגדר לכל היותר אחד מהשדות:
oauth

object (OAuthCredentials)

פרטי כניסה של OAuth.

סוף השדות שמוציאים זה את זה.

OAuthCredentials

מייצג את פרטי הכניסה של OAuth.

ייצוג ב-JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "secret": {
    object (SecretBased)
  },
  "token": {
    object (TokenBased)
  }
  // End of mutually exclusive fields.
}
שדות
סוג פרטי הכניסה של OAuth. זו רשימה של שדות שמוציאים זה את זה. בכל תשובה יוגדר לכל היותר אחד מהשדות:
secret

object (SecretBased)

פרטי כניסה בפרוטוקול OAuth שמבוססים על סודות.

token

object (TokenBased)

פרטי כניסה של OAuth שמבוססים על טוקן.

סוף השדות הבלעדיים.

SecretBased

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

ייצוג ב-JSON
{
  "clientId": string,
  "clientSecret": string
}
שדות
clientId

string

חובה. מזהה לקוח ב-OAuth.

clientSecret

string

חובה. סוד לקוח OAuth.

TokenBased

מידע נוסף על טוקני גישה של Looker זמין כאן: https://developers.looker.com/api/advanced-usage/looker-api-oauth

ייצוג ב-JSON
{
  "accessToken": string
}
שדות
accessToken

string

חובה. שם הסוד שמכיל את אסימון הגישה.

ThinkingMode

מצב החשיבה של הסוכן.

טיפוסים בני מנייה (enum)
THINKING_MODE_UNSPECIFIED ערך ברירת המחדל. במקורות נתונים של BigQuery ו-Looker, הסוכן משתמש במודל FAST. בכל שאר מקורות הנתונים, הסוכן משתמש ב-THINKING.
FAST מצב מהיר, תשובות מהירות.
THINKING מצב חשיבה, פתרון בעיות מורכבות.

דגם

בחירת מודל לסוכן למשתמשי BigQuery.

טיפוסים בני מנייה (enum)
MODEL_UNSPECIFIED לא צוין מודל. אפשר להשתמש במודל בגרסת טרום-השקה או במודל בגרסה רגילה.
LATEST_GA_MODEL שימוש במודל העדכני ביותר שאינו בגרסת טרום-השקה. יכול להיות שהפעולה הזו תגביל הגדרות מסוימות ברמת הבקשה.