Method: projects.locations.collections.engines.assistants.streamAssist

מסייע למשתמש בשאילתה בשיטת סטרימינג.

בקשת HTTP


POST https://discoveryengine.googleapis.com/v1beta/{name=projects/*/locations/*/collections/*/engines/*/assistants/*}:streamAssist

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

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

פרמטרים
name

string

חובה. שם המשאב של Assistant. פורמט: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}

גוף הבקשה

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

ייצוג ב-JSON
{
  "query": {
    object (Query)
  },
  "session": string,
  "userMetadata": {
    object (AssistUserMetadata)
  },
  "agentsSpec": {
    object (AgentsSpec)
  },
  "toolsSpec": {
    object (ToolsSpec)
  },
  "generationSpec": {
    object (GenerationSpec)
  }
}
שדות
query

object (Query)

זה שינוי אופציונלי. שאילתת המשתמש הנוכחי.

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

session

string

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

אם מציינים את - כמזהה הסשן, או אם לא מציינים מזהה, נוצר סשן חדש עם מזהה שנוצר אוטומטית.

פורמט: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/sessions/{session}

userMetadata

object (AssistUserMetadata)

זה שינוי אופציונלי. מידע על המשתמש שיזם את השאילתה.

agentsSpec

object (AgentsSpec)

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

toolsSpec

object (ToolsSpec)

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

generationSpec

object (GenerationSpec)

זה שינוי אופציונלי. ציון הגדרות היצירה של הבקשה.

גוף התשובה

תשובה לשיטה AssistantService.StreamAssist.

אם הפעולה מצליחה, גוף התגובה מכיל נתונים במבנה הבא:

ייצוג ב-JSON
{
  "answer": {
    object (AssistAnswer)
  },
  "sessionInfo": {
    object (SessionInfo)
  },
  "assistToken": string,
  "invocationTools": [
    string
  ],
  "invokedSkills": [
    {
      object (InvokedSkill)
    }
  ],
  "connectorAuthErrors": [
    {
      object (ConnectorAuthError)
    }
  ]
}
שדות
answer

object (AssistAnswer)

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

המאפיין לא מופיע אם התגובה הנוכחית לא מוסיפה מידע למה שנשלח קודם AssistAnswer.replies.

כדאי לעיין בAssistAnswer.state כדי לראות אם צפויים חלקים נוספים. בזמן שהסטטוס הוא IN_PROGRESS, השדה AssistAnswer.replies בכל תגובה יכיל תשובות (קטעי תשובות) שצריך לצרף לתשובות שהתקבלו בתגובות הקודמות. הפרטים של AssistAnswer.name לא ימולאו.

אם המצב הוא SUCCEEDED, FAILED או SKIPPED, התשובה היא התשובה האחרונה והערך של AssistAnswer.name יהיה ערך.

sessionInfo

object (SessionInfo)

פרטי הסשן. הוא נכלל רק ב-StreamAssistResponse הסופי של שידור התשובה.

assistToken

string

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

invocationTools[]

string

שמות הכלים שהופעלו.

invokedSkills[]

object (InvokedSkill)

המיומנויות שהופעלו במהלך התור.

connectorAuthErrors[]

object (ConnectorAuthError)

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

היקפי הרשאות

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

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/discoveryengine.assist.readwrite
  • https://www.googleapis.com/auth/discoveryengine.readwrite
  • https://www.googleapis.com/auth/discoveryengine.serving.readwrite

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

הרשאות IAM

נדרשת הרשאת IAM הבאה במשאב name:

  • discoveryengine.assistants.assist

מידע נוסף מופיע במאמרי העזרה בנושא IAM.

AgentsSpec

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

ייצוג ב-JSON
{
  "agentSpecs": [
    {
      object (AgentSpec)
    }
  ],
  "mentionMode": enum (MentionMode)
}
שדות
agentSpecs[]

object (AgentSpec)

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

mentionMode

enum (MentionMode)

זה שינוי אופציונלי. איך מפעילים את הסוכנים שהוזכרו ב-agentSpecs. מידע נוסף מפורט בMentionMode.

AgentSpec

מפרט של סוכן.

ייצוג ב-JSON
{
  "agentId": string,
  "inputVariables": {
    object
  }
}
שדות
agentId

string

חובה. מזהה לזיהוי משאב הסוכן שמשרת את הבקשה.

השדה הזה צריך להתאים ל-RFC-1034, עם מגבלת אורך של 63 תווים.

inputVariables

object (Struct format)

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

MentionMode

איך מפעילים את הסוכנים שהוזכרו ב-agentSpecs.

טיפוסים בני מנייה (enum)
MENTION_MODE_UNSPECIFIED ברירת המחדל היא DIRECT.
DIRECT הסוכן המוזכר הופך לסוכן ברמה העליונה שמפעיל את התור. מותר להזין רק ערך אחד במאפיין agentSpecs.
TOOL כל AgentSpec מצורף ככלי במסגרת מתאם מסונתז. אזכור של כמה אנשים. MVP: סוכני תהליכי עבודה בלבד, הגרסה האחרונה שפורסמה; לא להגדיר version / revisionId.
TOOL_WORKFLOW_DIRECT סוכן יחיד לתהליך עבודה, עם ממשק צ'אט משלו. רכיב AgentSpec אחד בדיוק; צריך להגדיר את version = "draft" (טבלת סוכנים) או את revisionId (AgentRevision ספציפי). בתהליך העבודה צריך להיות רכיב ManualTrigger.

ToolsSpec

פירוט של הכלים שמשמשים לטיפול בבקשה.

ייצוג ב-JSON
{
  "vertexAiSearchSpec": {
    object (VertexAiSearchSpec)
  },
  "webGroundingSpec": {
    object (WebGroundingSpec)
  },
  "imageGenerationSpec": {
    object (ImageGenerationSpec)
  },
  "videoGenerationSpec": {
    object (VideoGenerationSpec)
  }
}
שדות
vertexAiSearchSpec

object (VertexAiSearchSpec)

זה שינוי אופציונלי. מפרט של הכלי חיפוש מבוסס-Vertex AI.

webGroundingSpec

object (WebGroundingSpec)

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

imageGenerationSpec

object (ImageGenerationSpec)

זה שינוי אופציונלי. מפרט של כלי ליצירת תמונות.

videoGenerationSpec

object (VideoGenerationSpec)

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

VertexAiSearchSpec

מפרט של הכלי חיפוש מבוסס-Vertex AI.

ייצוג ב-JSON
{
  "dataStoreSpecs": [
    {
      object (DataStoreSpec)
    }
  ],
  "filter": string
}
שדות
dataStoreSpecs[]

object (DataStoreSpec)

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

filter

string

זה שינוי אופציונלי. תחביר המסנן מורכב משפת ביטויים לבניית פרדיקט משדה אחד או יותר של המסמכים שמסוננים. ביטוי המסנן תלוי אותיות רישיות (case-sensitive).

אם השדה הזה לא מזוהה, מוחזרת שגיאה INVALID_ARGUMENT.

סינון בחיפוש מבוסס-Vertex AI מתבצע על ידי מיפוי של מפתח הסינון בצד שמאל למאפיין מפתח שמוגדר ב-backend של חיפוש מבוסס-Vertex AI – הלקוח מגדיר את המיפוי הזה בסכימה שלו. לדוגמה, ללקוח בתחום המדיה יכול להיות שדה בשם 'name' בסכימה שלו. במקרה הזה, המסנן ייראה כך: filter --> name:'ANY("king kong")'

מידע נוסף על סינון, כולל תחביר ואופרטורים של מסננים, זמין במאמר בנושא סינון.

WebGroundingSpec

בסוג הזה אין שדות.

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

ImageGenerationSpec

בסוג הזה אין שדות.

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

VideoGenerationSpec

בסוג הזה אין שדות.

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

GenerationSpec

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

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

string

זה שינוי אופציונלי. מזהה המודל של Vertex AI שמשמש למודל הגנרטיבי. אם לא מגדירים את המדיניות, ייעשה שימוש במודל ברירת המחדל של Assistant.

SessionInfo

מידע על הסשן.

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

string

השם של הסשן החדש שנוצר או של הסשן שהמשכתם.

פורמט: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/sessions/{session}

InvokedSkill

מייצג סקיל שנעשה בו שימוש במהלך שיחת הסיוע.

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

string

שם המשאב של הסקיל.

displayName

string

השם המוצג של הסקיל.

ConnectorAuthError

תיאור של שגיאת אימות עבור מחבר נתונים ספציפי.

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

string

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

errorMessage

string

הודעת שגיאה קריאה (לבני אדם) שמתארת את כשל האימות.