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)

省略可。ヒルクライミング修正に使用する構成。

生成するリソース。以下は、相互に排他的なフィールドのリストです。レスポンスに設定されるフィールドは、最大 1 つです。
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 権限

parent リソースに対する次の IAM 権限が必要です。

  • 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

リソースの一部を絞り込むために使用する手順。リソースの一部は、開始インデックス、終了インデックス、フィールド マスクで指定できます。たとえば、エージェントの指示の一部を絞り込む場合は、指示の最初の文字のインデックス、指示の最後の文字のインデックス、フィールド マスクを「instructions」として指定できます。

JSON 表現
{
  "startIndex": string,
  "endIndex": string,
  "fieldMask": string,
  "instructions": string
}
フィールド
startIndex

string (int64 format)

必須。絞り込むテキストの最初の文字(この値を含む)。

endIndex

string (int64 format)

必須。絞り込むテキストの最後の文字(この値を含む)。

fieldMask

string (FieldMask format)

必須。絞り込み対象のリソースのフィールド。RefineInstructions ごとに許可されるフィールドは 1 つのみです。エージェントの指示を調整する場合は、フィールド マスクを「instructions」にする必要があります。

完全修飾フィールド名のカンマ区切りリスト。例: "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)

省略可。Open API スキーマの生成に使用される構成。

FileContext

コンテキストとして使用するファイル。ファイルは RAW バイトとして提供できます。

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.
}
フィールド
コンテキストとして提供されるファイル。以下は、相互に排他的なフィールドのリストです。レスポンスに設定されるフィールドは、最大 1 つです。
fileBytes

object (FileContext.FileBytes)

省略可。未加工バイトとして提供されるファイル。

相互に排他的なフィールドの終わり。

FileContext.FileBytes

未加工バイトとして提供されるファイル。

JSON 表現
{
  "fileName": string,
  "mimeType": string,
  "data": string
}
フィールド
fileName

string

必須。未加工のバイトとして提供されるファイルの名前。

mimeType

string

必須。ソースデータの IANA 標準 MIME タイプ。

data

string (bytes format)

必須。ファイルの未加工のバイト数。

Base64 でエンコードされた文字列。

GenerateAppResourceRequest.ToolGenerationConfig.OpenApiToolsetGenerationConfig

Open 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

省略可。Datastore ツールで使用される生成された質問回答データを保存する Cloud Storage のロケーション。このデータは、会話データを入力ソースとして使用する場合にのみ生成されます。ロケーションはアプリと同じプロジェクトに存在する必要があります。形式: 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

損失アトリビューションに使用するアルゴリズム。

列挙型
LOSS_ATTRIBUTION_ALGORITHM_UNSPECIFIED 指定なし。
APP_CENTRIC アプリ中心の損失アトリビューション。アプリを単一のユニットとして扱います。
AGENT_CENTRIC エージェント中心の損失アトリビューション。個々のエージェントに損失を割り当てます。

GenerateAppResourceRequest.HillClimbingFixConfig

ヒルクライミング修正に使用する構成。

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

省略可。手順やツールを変更して問題を解決するための提案された解決策。