Method: projects.locations.apps.generateAppResource

יצירת משאבים ספציפיים (לדוגמה, סוכן) באפליקציה באמצעות עוזר LLM.

בקשת HTTP

POST https://ces.googleapis.com/v1beta/{parent=projects/*/locations/*/apps/*}:generateAppResource

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

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

פרמטרים
parent

string

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

גוף הבקשה

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

ייצוג ב-JSON
{
  "refineInstructions": [
    {
      object (GenerateAppResourceRequest.RefineInstructions)
    }
  ],
  "toolGenerationConfig": {
    object (GenerateAppResourceRequest.ToolGenerationConfig)
  },
  "appGenerationConfig": {
    object (GenerateAppResourceRequest.AppGenerationConfig)
  },
  "evaluationGenerationConfig": {
    object (GenerateAppResourceRequest.EvaluationGenerationConfig)
  },
  "evaluationPersonasGenerationConfig": {
    object (GenerateAppResourceRequest.EvaluationPersonasGenerationConfig)
  },
  "qualityReportGenerationConfig": {
    object (GenerateAppResourceRequest.QualityReportGenerationConfig)
  },
  "hillClimbingFixConfig": {
    object (GenerateAppResourceRequest.HillClimbingFixConfig)
  },

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "agent": {
    object (Agent)
  },
  "tool": {
    object (Tool)
  },
  "toolset": {
    object (Toolset)
  },
  "appVersionContext": {
    object (GenerateAppResourceRequest.AppVersionContext)
  }
  // End of mutually exclusive fields.
}
שדות
refineInstructions[]

object (GenerateAppResourceRequest.RefineInstructions)

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

toolGenerationConfig

object (GenerateAppResourceRequest.ToolGenerationConfig)

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

appGenerationConfig

object (GenerateAppResourceRequest.AppGenerationConfig)

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

evaluationGenerationConfig

object (GenerateAppResourceRequest.EvaluationGenerationConfig)

זה שינוי אופציונלי. ההגדרה שתשמש ליצירת ההערכות.

evaluationPersonasGenerationConfig

object (GenerateAppResourceRequest.EvaluationPersonasGenerationConfig)

זה שינוי אופציונלי. ההגדרה שתשמש ליצירת פרסונות להערכה.

qualityReportGenerationConfig

object (GenerateAppResourceRequest.QualityReportGenerationConfig)

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

hillClimbingFixConfig

object (GenerateAppResourceRequest.HillClimbingFixConfig)

זה שינוי אופציונלי. ההגדרה שתשמש לתיקונים של hill climbing.

המשאב שייווצר. הרשימה הבאה כוללת שדות שאי אפשר להשתמש בהם בו-זמנית. בכל תשובה יוגדר לכל היותר אחד מהשדות:
agent

object (Agent)

משאב הסוכן שבו ישתמש העוזר מבוסס ה-LLM. אפשר להשאיר את הערך ריק כדי ליצור סוכן חדש.

tool

object (Tool)

מקור המידע של הכלי שבו ישתמש עוזר ה-LLM. יכול להיות ריק אם רוצים ליצור כלי חדש.

toolset

object (Toolset)

מקור המידע של ערכת הכלים שבה ישתמש עוזר ה-LLM. יכול להיות ריק אם רוצים ליצור ערכת כלים חדשה.

appVersionContext

object (GenerateAppResourceRequest.AppVersionContext)

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

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

גוף התשובה

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

היקפי הרשאות

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

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

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

הרשאות IAM

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

  • ces.apps.update

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

GenerateAppResourceRequest.AppVersionContext

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

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

string

שם המשאב של גרסת האפליקציה שבה ישתמש עוזר ה-LLM. פורמט: projects/{project}/locations/{location}/apps/{app}/versions/{version}

agentResourceName

string

שם המשאב של הסוכן שאליו מכוונת ההודעה, שבו ישתמש עוזר ה-LLM. פורמט: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

GenerateAppResourceRequest.RefineInstructions

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

ייצוג ב-JSON
{
  "startIndex": string,
  "endIndex": string,
  "fieldMask": string,
  "instructions": string
}
שדות
startIndex

string (int64 format)

חובה. התו הראשון (כולל) של הטקסט שרוצים לשפר.

endIndex

string (int64 format)

חובה. התו האחרון (כולל) בטקסט שרוצים לשפר.

fieldMask

string (FieldMask format)

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

זוהי רשימה של שמות שדות שמוגדרים במלואם, שמופרדים באמצעות פסיקים. דוגמה: "user.displayName,photo"

instructions

string

חובה. ההוראות לשיפור המשאב.

GenerateAppResourceRequest.ToolGenerationConfig

ההגדרה שתשמש ליצירת כלי.

ייצוג ב-JSON
{
  "context": string,
  "fileContexts": [
    {
      object (FileContext)
    }
  ],
  "openApiToolsetGenerationConfig": {
    object (GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig)
  }
}
שדות
context

string

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

fileContexts[]

object (FileContext)

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

openApiToolsetGenerationConfig

object (GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig)

זה שינוי אופציונלי. ההגדרה שתשמש ליצירת סכימת API פתוח.

FileContext

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

ייצוג ב-JSON
{

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

object (FileContext.FileBytes)

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

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

FileContext.FileBytes

הקובץ סופק כבייטים גולמיים.

ייצוג ב-JSON
{
  "fileName": string,
  "mimeType": string,
  "data": string
}
שדות
fileName

string

חובה. השם של הקובץ שסופק כבייטים גולמיים.

mimeType

string

חובה. סוג ה-MIME התקני של IANA של נתוני המקור.

data

string (bytes format)

חובה. בייטים גולמיים של הקובץ.

מחרוזת בקידוד Base64.

GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig

ההגדרה שתשמש ליצירת סכימת API פתוח.

ייצוג ב-JSON
{
  "uri": string,
  "operationGenerationConfigs": [
    {
      object (GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig.OperationGenerationConfig)
    }
  ]
}
שדות
uri

string

חובה. כתובת ה-URI הבסיסית של הכלי.

operationGenerationConfigs[]

object (GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig.OperationGenerationConfig)

חובה. רשימת הפעולות שיוספו לסכימת Open API.

GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig.OperationGenerationConfig

ההגדרה שתשמש ליצירת פעולה בסכימת Open API.

ייצוג ב-JSON
{
  "method": string,
  "path": string,
  "requestJson": string,
  "responseJson": string
}
שדות
method

string

חובה. ה-URI של הכלי. הפרמטרים האלה צריכים לכלול פרמטרים של שאילתה ונתיב, אם יש כאלה.

path

string

חובה. הנתיב של הכלי שיוסף ל-URI הבסיסי. הפרמטרים האלה צריכים לכלול פרמטרים של שאילתה ונתיב, אם יש כאלה.

requestJson

string

חובה. דוגמה לבקשה לכלי בפורמט JSON. מדלגים אם הכלי לא תומך בגוף הבקשה.

responseJson

string

חובה. תגובה לדוגמה מהכלי בפורמט JSON.

GenerateAppResourceRequest.AppGenerationConfig

ההגדרה שתשמש ליצירת האפליקציה.

ייצוג ב-JSON
{
  "context": string,
  "fileContexts": [
    {
      object (FileContext)
    }
  ],
  "datasetId": string,
  "generateEvaluations": boolean,
  "gcsLocation": string
}
שדות
context

string

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

fileContexts[]

object (FileContext)

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

datasetId

string

זה שינוי אופציונלי. מערך הנתונים של התובנות שישמש לאחזור נתוני שיחות לצורך יצירת הסוכנים והכלים. פורמט: projects/{project}/locations/{location}/datasets/{dataset}

generateEvaluations

boolean

זה שינוי אופציונלי. האם ליצור את ההערכות עבור האפליקציה. אם הערך הוא true, ההקשר שצוין ישמש ליצירת נתוני ההערכות.

gcsLocation

string

זה שינוי אופציונלי. המיקום ב-Cloud Storage שבו יאוחסנו נתוני התשובות לשאלות שנוצרו, לשימוש בכלי Datastore. הנתונים האלה נוצרים רק כשמשתמשים בנתוני שיחות כמקור קלט. המיקום חייב להיות באותו פרויקט שבו נמצאת האפליקציה. הפורמט: gs://....

GenerateAppResourceRequest.EvaluationGenerationConfig

ההגדרה שתשמש ליצירת ההערכות.

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

string

זה שינוי אופציונלי. מערך הנתונים של התובנות שמשמש לאחזור נתוני שיחות לצורך יצירת ההערכות. פורמט: projects/{project}/locations/{location}/datasets/{dataset}

GenerateAppResourceRequest.EvaluationPersonasGenerationConfig

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

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

GenerateAppResourceRequest.QualityReportGenerationConfig

ההגדרה שתשמש ליצירת דוח האיכות.

ייצוג ב-JSON
{
  "evaluationRun": string,
  "algorithm": enum (GenerateAppResourceRequest.QualityReportGenerationConfig.LossAttributionAlgorithm)
}
שדות
evaluationRun

string

חובה. הפעלת ההערכה ששימשה לניתוח דוח האיכות.

algorithm

enum (GenerateAppResourceRequest.QualityReportGenerationConfig.LossAttributionAlgorithm)

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

GenerateAppResourceRequest.QualityReportGenerationConfig.LossAttributionAlgorithm

האלגוריתם שבו יש להשתמש לשיוך אובדן.

טיפוסים בני מנייה (enum)
LOSS_ATTRIBUTION_ALGORITHM_UNSPECIFIED לא צוין.
APP_CENTRIC שיוך הפסדים שמתמקד באפליקציה. האפליקציה נחשבת ליחידה אחת.
AGENT_CENTRIC שיוך הפסדים לפי סוכן. איבוד מאפיינים של סוכנים ספציפיים.

GenerateAppResourceRequest.HillClimbingFixConfig

ההגדרה שתשמש לתיקונים של hill climbing.

ייצוג ב-JSON
{
  "qualityReport": {
    object (QualityReport)
  }
}
שדות
qualityReport

object (QualityReport)

חובה. דוח האיכות ששימש לתיקון בעקבות ההוראות.

QualityReport

הדוח שמתאר את בעיות האיכות שזוהו באפליקציה.

ייצוג ב-JSON
{
  "issues": [
    {
      object (QualityReport.AgentIssues)
    }
  ],
  "evaluationRuns": [
    string
  ],
  "generalIssues": [
    {
      object (QualityReport.Issue)
    }
  ]
}
שדות
issues[]

object (QualityReport.AgentIssues)

זה שינוי אופציונלי. הבעיות מקובצות לפי סוכן.

evaluationRuns[]

string

זה שינוי אופציונלי. רשימה של הפעלות הערכה ששימשו ליצירת דוח האיכות. פורמט: projects/{project}/locations/{location}/evaluationRuns/{evaluationRun}

generalIssues[]

object (QualityReport.Issue)

זה שינוי אופציונלי. בעיות כלליות שלא ספציפיות לסוכן מסוים.

QualityReport.AgentIssues

בעיות שזוהו אצל נציג יחיד.

ייצוג ב-JSON
{
  "agent": string,
  "issues": [
    {
      object (QualityReport.Issue)
    }
  ]
}
שדות
agent

string

זה שינוי אופציונלי. השם של הסוכן שאליו קשורות הבעיות. פורמט: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

issues[]

object (QualityReport.Issue)

זה שינוי אופציונלי. רשימת הבעיות שנמצאו בסוכן הזה.

QualityReport.Issue

הבעיה שזוהתה.

ייצוג ב-JSON
{
  "description": string,
  "occurrenceCount": integer,
  "proposedSolution": string
}
שדות
description

string

זה שינוי אופציונלי. תיאור הבעיה שנמצאה.

occurrenceCount

integer

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

proposedSolution

string

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