Method: projects.locations.apps.generateAppResource

Genera recursos específicos (p.ej., un agente) en la app con el asistente de LLM.

Solicitud HTTP

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

La URL usa la sintaxis de la transcodificación gRPC.

Parámetros de ruta

Parámetros
parent

string

Obligatorio. Es el nombre del recurso de la app para la que se generará el recurso.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación 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.
}
Campos
refineInstructions[]

object (GenerateAppResourceRequest.RefineInstructions)

Es opcional. Es la lista de instrucciones de refinamiento que se usarán para refinar el recurso.

toolGenerationConfig

object (GenerateAppResourceRequest.ToolGenerationConfig)

Es opcional. Es la configuración que se usará para generar la herramienta.

appGenerationConfig

object (GenerateAppResourceRequest.AppGenerationConfig)

Es opcional. Es la configuración que se usará para generar los agentes y las herramientas.

evaluationGenerationConfig

object (GenerateAppResourceRequest.EvaluationGenerationConfig)

Es opcional. Es la configuración que se usará para generar las evaluaciones.

evaluationPersonasGenerationConfig

object (GenerateAppResourceRequest.EvaluationPersonasGenerationConfig)

Es opcional. Es la configuración que se usará para generar los arquetipos de evaluación.

qualityReportGenerationConfig

object (GenerateAppResourceRequest.QualityReportGenerationConfig)

Es opcional. Es la configuración que se usará para generar el informe de calidad.

hillClimbingFixConfig

object (GenerateAppResourceRequest.HillClimbingFixConfig)

Es opcional. Es la configuración que se usará para las correcciones de ascenso de colinas.

Es el recurso que se generará. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
agent

object (Agent)

Es el recurso del agente que usará el asistente de LLM. Puede estar vacío para generar un agente nuevo.

tool

object (Tool)

Es el recurso de la herramienta que usará el asistente de LLM. Puede estar vacío si se genera una herramienta nueva.

toolset

object (Toolset)

Es el recurso del conjunto de herramientas que usará el asistente de LLM. Puede estar vacío para generar un nuevo conjunto de herramientas.

appVersionContext

object (GenerateAppResourceRequest.AppVersionContext)

Es el contexto de la versión de la app que especifica la instantánea base y el agente de destino.

Fin de los campos mutuamente excluyentes.

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Operation.

Alcances de autorización

Se necesita uno de los siguientes permisos de OAuth:

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

Para obtener más información, consulta Authentication Overview.

Permisos de IAM

Se requiere el siguiente permiso de IAM en el recurso parent:

  • ces.apps.update

Para obtener más información, consulta la documentación de IAM.

GenerateAppResourceRequest.AppVersionContext

Es el contexto de la versión de la app que especifica la instantánea base y el agente de destino.

Representación JSON
{
  "appVersion": string,
  "agentResourceName": string
}
Campos
appVersion

string

Es el nombre del recurso de la versión de la app que usará el asistente de LLM. Formato: projects/{project}/locations/{location}/apps/{app}/versions/{version}

agentResourceName

string

Es el nombre del recurso del agente objetivo que usará el asistente de LLM. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

GenerateAppResourceRequest.RefineInstructions

Son las instrucciones que se usarán para refinar una parte del recurso. La parte del recurso se puede especificar con un índice de inicio, un índice de finalización y una máscara de campo. Por ejemplo, si deseas refinar una parte de las instrucciones del agente, puedes especificar el índice del primer carácter de las instrucciones, el índice del último carácter de las instrucciones y la máscara de campo como "instructions".

Representación JSON
{
  "startIndex": string,
  "endIndex": string,
  "fieldMask": string,
  "instructions": string
}
Campos
startIndex

string (int64 format)

Obligatorio. Primer carácter (inclusive) del texto que se refinará.

endIndex

string (int64 format)

Obligatorio. Es el último carácter (inclusive) del texto que se debe refinar.

fieldMask

string (FieldMask format)

Obligatorio. Es el campo del recurso que se está refinando. Solo se permite un campo por RefineInstructions. Si se refinan las instrucciones del agente, la máscara de campo debe ser "instructions".

Esta es una lista separada por comas de los nombres de campos completamente calificados. Ejemplo: "user.displayName,photo".

instructions

string

Obligatorio. Son las instrucciones para mejorar el recurso.

GenerateAppResourceRequest.ToolGenerationConfig

Es la configuración que se usará para generar una herramienta.

Representación JSON
{
  "context": string,
  "fileContexts": [
    {
      object (FileContext)
    }
  ],
  "openApiToolsetGenerationConfig": {
    object (GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig)
  }
}
Campos
context

string

Es opcional. Es el contexto que describe la herramienta que se generará. Puede estar vacío si se proporcionan la solicitud y la respuesta de la herramienta.

fileContexts[]

object (FileContext)

Es opcional. Son los archivos que se usarán como contexto.

openApiToolsetGenerationConfig

object (GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig)

Es opcional. Es la configuración que se usará para generar un esquema de OpenAPI.

FileContext

Son los archivos que se usarán como contexto. Los archivos se pueden proporcionar como bytes sin procesar.

Representación 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.
}
Campos
Archivo proporcionado como contexto. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
fileBytes

object (FileContext.FileBytes)

Es opcional. Archivo proporcionado como bytes sin procesar.

Fin de los campos mutuamente excluyentes.

FileContext.FileBytes

Archivo proporcionado como bytes sin procesar.

Representación JSON
{
  "fileName": string,
  "mimeType": string,
  "data": string
}
Campos
fileName

string

Obligatorio. Nombre del archivo proporcionado como bytes sin procesar.

mimeType

string

Obligatorio. Es el tipo de MIME estándar de IANA de los datos de origen.

data

string (bytes format)

Obligatorio. Son los bytes sin procesar del archivo.

Es una cadena codificada en Base64.

GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig

Es la configuración que se usará para generar un esquema de OpenAPI.

Representación JSON
{
  "uri": string,
  "operationGenerationConfigs": [
    {
      object (GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig.OperationGenerationConfig)
    }
  ]
}
Campos
uri

string

Obligatorio. Es el URI base de la herramienta.

operationGenerationConfigs[]

object (GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig.OperationGenerationConfig)

Obligatorio. Es la lista de operaciones que se agregarán al esquema de la API abierta.

GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig.OperationGenerationConfig

Es la configuración que se usará para generar una operación en el esquema de OpenAPI.

Representación JSON
{
  "method": string,
  "path": string,
  "requestJson": string,
  "responseJson": string
}
Campos
method

string

Obligatorio. Es el URI de la herramienta. Esto debe incluir los parámetros de ruta de acceso y de consulta, si los hay.

path

string

Obligatorio. Es la ruta de la herramienta que se agregará al URI base. Esto debe incluir los parámetros de ruta de acceso y de consulta, si los hay.

requestJson

string

Obligatorio. Es una solicitud de ejemplo a la herramienta en formato JSON. Omite este paso si la herramienta no admite el cuerpo de la solicitud.

responseJson

string

Obligatorio. Es una respuesta de muestra de la herramienta en formato JSON.

GenerateAppResourceRequest.AppGenerationConfig

Es la configuración que se usará para generar la app.

Representación JSON
{
  "context": string,
  "fileContexts": [
    {
      object (FileContext)
    }
  ],
  "datasetId": string,
  "generateEvaluations": boolean,
  "gcsLocation": string
}
Campos
context

string

Es opcional. Es el contexto que describe los requisitos de los agentes y las herramientas que se generarán.

fileContexts[]

object (FileContext)

Es opcional. Son los archivos que se usarán como contexto.

datasetId

string

Es opcional. Es el conjunto de datos de estadísticas que se usará para recuperar los datos de conversación y generar los agentes y las herramientas. Formato: projects/{project}/locations/{location}/datasets/{dataset}.

generateEvaluations

boolean

Es opcional. Indica si se deben generar las evaluaciones de la app. Si es verdadero, se usará el contexto proporcionado para generar los datos de las evaluaciones.

gcsLocation

string

Es opcional. Ubicación de Cloud Storage para almacenar los datos de respuesta a preguntas generados que utilizará la herramienta de Datastore. Estos datos solo se generan cuando se usan datos de conversaciones como fuente de entrada. La ubicación debe estar en el mismo proyecto que la app. Formato: gs://....

GenerateAppResourceRequest.EvaluationGenerationConfig

Es la configuración que se usará para generar las evaluaciones.

Representación JSON
{
  "datasetId": string
}
Campos
datasetId

string

Es opcional. Es el conjunto de datos de estadísticas que se usará para recuperar los datos de la conversación y generar las evaluaciones. Formato: projects/{project}/locations/{location}/datasets/{dataset}.

GenerateAppResourceRequest.EvaluationPersonasGenerationConfig

Este tipo no tiene campos.

Es la configuración que se usará para generar los arquetipos de evaluación.

GenerateAppResourceRequest.QualityReportGenerationConfig

Es la configuración que se usará para generar el informe de calidad.

Representación JSON
{
  "evaluationRun": string,
  "algorithm": enum (GenerateAppResourceRequest.QualityReportGenerationConfig.LossAttributionAlgorithm)
}
Campos
evaluationRun

string

Obligatorio. Es la ejecución de la evaluación que se usó para fundamentar el análisis del informe de calidad.

algorithm

enum (GenerateAppResourceRequest.QualityReportGenerationConfig.LossAttributionAlgorithm)

Es opcional. Es el algoritmo de atribución de pérdida que se usará.

GenerateAppResourceRequest.QualityReportGenerationConfig.LossAttributionAlgorithm

Es el algoritmo que se usará para la atribución de pérdidas.

Enums
LOSS_ATTRIBUTION_ALGORITHM_UNSPECIFIED Sin especificar.
APP_CENTRIC Atribución de pérdidas centrada en la aplicación. Trata la app como una sola unidad.
AGENT_CENTRIC Es la atribución de pérdidas centrada en el agente. Pérdida de atributos para agentes individuales.

GenerateAppResourceRequest.HillClimbingFixConfig

Es la configuración que se usará para las correcciones de ascenso de colinas.

Representación JSON
{
  "qualityReport": {
    object (QualityReport)
  }
}
Campos
qualityReport

object (QualityReport)

Obligatorio. Es el informe de calidad que se usó para fundamentar la corrección del seguimiento de instrucciones.

QualityReport

Es el informe que describe los problemas de calidad identificados en la app.

Representación JSON
{
  "issues": [
    {
      object (QualityReport.AgentIssues)
    }
  ],
  "evaluationRuns": [
    string
  ],
  "generalIssues": [
    {
      object (QualityReport.Issue)
    }
  ]
}
Campos
issues[]

object (QualityReport.AgentIssues)

Es opcional. Son los problemas agrupados por agente.

evaluationRuns[]

string

Es opcional. Es una lista de las ejecuciones de evaluación que se usaron para generar el informe de calidad. Formato: projects/{project}/locations/{location}/evaluationRuns/{evaluationRun}.

generalIssues[]

object (QualityReport.Issue)

Es opcional. Problemas generales que no son específicos de ningún agente.

QualityReport.AgentIssues

Son los problemas identificados para un solo agente.

Representación JSON
{
  "agent": string,
  "issues": [
    {
      object (QualityReport.Issue)
    }
  ]
}
Campos
agent

string

Es opcional. Es el nombre del agente con el que se relacionan los problemas. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

issues[]

object (QualityReport.Issue)

Es opcional. Es la lista de problemas encontrados para este agente.

QualityReport.Issue

Es el problema identificado.

Representación JSON
{
  "description": string,
  "occurrenceCount": integer,
  "proposedSolution": string
}
Campos
description

string

Es opcional. Descripción del problema encontrado.

occurrenceCount

integer

Es opcional. Cantidad de veces que ocurrió el problema.

proposedSolution

string

Es opcional. Solución propuesta para corregir el problema modificando las instrucciones o las herramientas.