REST Resource: projects.locations.collections.engines.assistants

资源:助理

Discovery Engine Assistant 资源。

JSON 表示法
{
  "name": string,
  "displayName": string,
  "description": string,
  "generationConfig": {
    object (GenerationConfig)
  },
  "googleSearchGroundingEnabled": boolean,
  "webGroundingType": enum (WebGroundingType),
  "defaultWebGroundingToggleOff": boolean,
  "vertexAiAgentConfigs": [
    {
      object (VertexAiAgentConfig)
    }
  ],
  "enabledActions": {
    string: {
      object (ActionList)
    },
    ...
  },
  "enabledTools": {
    string: {
      object (ToolList)
    },
    ...
  },
  "customerPolicy": {
    object (CustomerPolicy)
  },
  "vertexAiSearchToolConfig": {
    object (VertexAiSearchToolConfig)
  },
  "styleAndFormattingInstructions": string,
  "agentConfigs": [
    {
      object (AgentConfig)
    }
  ],
  "enableEndUserAgentCreation": boolean,
  "disableLocationContext": boolean
}
字段
name

string

不可变。助理的资源名称。格式:projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}

它必须是采用 UTF-8 编码的字符串,长度限制为 1024 个字符。

displayName

string

必需。助理的显示名称。

必须是采用 UTF-8 编码的字符串,长度限制为 128 个字符。

description

string

可选。其他信息的说明。预计会显示在配置界面上,而不是显示给助理的用户。

generationConfig

object (GenerationConfig)

可选。用于生成助理回答的配置。

googleSearchGroundingEnabled
(deprecated)

boolean

可选。已弃用。请改用 webGroundingType

webGroundingType

enum (WebGroundingType)

可选。要使用的网页接地类型。

defaultWebGroundingToggleOff

boolean

可选。如果 webGroundingType 设置为 WEB_GROUNDING_TYPE_GOOGLE_SEARCHWEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH,此字段将控制最终用户的默认网络接地切换开关。此字段默认设置为 false。如果 webGroundingTypeWEB_GROUNDING_TYPE_GOOGLE_SEARCHWEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH,最终用户将在界面上默认启用网络接地。如果为 true,则默认在界面上停用接地切换开关。如果启用了网页接地,最终用户仍可在界面中启用网页接地。

vertexAiAgentConfigs[]
(deprecated)

object (VertexAiAgentConfig)

可选。已弃用:将被 AgentService 中的 Dialogflow 代理取代。可通过助理访问的 Vertex AI Agents 的列表。

enabledActions
(deprecated)

map (key: string, value: object (ActionList))

可选。已弃用:将改为使用 enabledTools。相应助理上已启用的操作。键是连接器名称,例如“projects/{projectId}/locations/{locationId}/collections/{collectionId}/dataconnector”。值包含针对连接器实例的管理员启用操作。管理员可以选择性地针对其在项目中创建的任何连接器实例启用多项操作。例如 {"jira1ConnectorName": [(actionId1, "createTicket"), (actionId2, "transferTicket")], "gmail1ConnectorName": [(actionId3, "sendEmail"),..] }

enabledTools

map (key: string, value: object (ToolList))

可选。注意:尚未实现。请改用 enabledActions。相应助理上已启用的工具。键是连接器名称,例如“projects/{projectId}/locations/{locationId}/collections/{collectionId}/dataconnector”。值包含针对连接器实例的管理员启用工具。管理员可以选择性地在项目中创建的任何连接器实例上启用多个工具。例如 {"jira1ConnectorName": [(toolId1, "createTicket"), (toolId2, "transferTicket")], "gmail1ConnectorName": [(toolId3, "sendEmail"),..] }

customerPolicy

object (CustomerPolicy)

可选。Google 助理的客户政策。

vertexAiSearchToolConfig

object (VertexAiSearchToolConfig)

可选。Vertex AI Search 工具的配置选项。

styleAndFormattingInstructions
(deprecated)

string

可选。已弃用。请改用 [addtional_system_instructions][GenerationConfig.SystemInstruction.additional_system_instructions]。用于设置对话风格、语气和格式的常见系统指令代码段。通过占位符 [STYLE_AND_FORMATTING_INSTRUCTIONS] 添加到所有 LLM 提示中。

agentConfigs[]

object (AgentConfig)

可选。可通过助理联系的代理列表。

enableEndUserAgentCreation

boolean

可选。指示是否允许最终用户在 Agentspace 中创建代理。

disableLocationContext

boolean

可选。指示是否停用用户位置信息背景。默认情况下,用户位置信息上下文处于启用状态。

GenerationConfig

用于生成助理回答的配置。

JSON 表示法
{
  "systemInstruction": {
    object (SystemInstruction)
  },
  "defaultLanguage": string
}
字段
systemInstruction

object (SystemInstruction)

系统指令,也称为 LLM 调用的提示序言。另请参阅 https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions

defaultLanguage

string

用于生成助理回答的默认语言。使用 ISO 639-1 语言代码,例如 en。如果未指定,系统将自动检测语言。

SystemInstruction

系统指令,也称为 LLM 调用的提示序言。

JSON 表示法
{
  "additionalSystemInstruction": string
}
字段
additionalSystemInstruction

string

可选。将添加到默认系统指令的其他系统指令。

WebGroundingType

要使用的网页接地类型。

枚举
WEB_GROUNDING_TYPE_UNSPECIFIED 默认的未指定设置。这与“已停用”相同。
WEB_GROUNDING_TYPE_DISABLED 网页接地已停用。

VertexAiAgentConfig

已弃用:请改用 AgentService 中的 Dialogflow 代理。表示可通过助理访问的外部 Vertex AI 代理。

JSON 表示法
{
  "displayName": string,
  "name": string,
  "toolDescription": string
}
字段
displayName

string

必需。Vertex AI Agent 的显示名称,用于在助理中引用。

name

string

必需。Vertex AI 代理的资源名称。格式:projects/{project}/locations/{location}/agents/{agent}

toolDescription

string

必需。Vertex AI 代理的工具说明。LLM 将使用此说明来决定代理是否与用户问题相关,以及是否应将该问题路由到代理。

ActionList

已弃用:将替换为 ToolList。连接器上已启用的操作

JSON 表示法
{
  "actionInfo": [
    {
      object (ActionInfo)
    }
  ]
}
字段
actionInfo[]

object (ActionInfo)

包含相应操作信息的行动列表。

ActionInfo

已弃用:将替换为 ToolInfo。用于标识操作的信息。

JSON 表示法
{
  "actionName": string,
  "actionDisplayName": string
}
字段
actionName

string

由 DataConnectorService.QueryAvailableActions 定义的操作的名称。

actionDisplayName

string

操作的显示名称。

ToolList

连接器上已启用的工具

JSON 表示法
{
  "toolInfo": [
    {
      object (ToolInfo)
    }
  ]
}
字段
toolInfo[]

object (ToolInfo)

包含相应工具信息的工具列表。

ToolInfo

用于标识工具的信息。

JSON 表示法
{
  "toolName": string,
  "toolDisplayName": string
}
字段
toolName

string

工具的名称,由 DataConnectorService.QueryAvailableActions 定义。注意:DataConnectorService API 中使用的是 action,但它们与此处的 tool 相同。

toolDisplayName

string

工具的显示名称。

CustomerPolicy

客户为助理定义的政策。

JSON 表示法
{
  "bannedPhrases": [
    {
      object (BannedPhrase)
    }
  ],
  "modelArmorConfig": {
    object (ModelArmorConfig)
  }
}
字段
bannedPhrases[]

object (BannedPhrase)

可选。禁用短语列表。

modelArmorConfig

object (ModelArmorConfig)

可选。用于清理用户提示和助理回答的 Model Armor 配置。

BannedPhrase

客户自定义的违禁短语的定义。用户查询或 LLM 回答中不得出现违禁短语,否则系统会拒绝回答。

JSON 表示法
{
  "phrase": string,
  "matchType": enum (BannedPhraseMatchType),
  "ignoreDiacritics": boolean
}
字段
phrase

string

必需。要禁止的原始字符串内容。

matchType

enum (BannedPhraseMatchType)

可选。违禁短语的匹配类型。

ignoreDiacritics

boolean

可选。如果值为 true,则在匹配违禁短语时忽略变音符号(例如,重音符号、元音变音)。例如,“cafe”会与“café”匹配。

BannedPhraseMatchType

禁用短语的匹配方法。

枚举
BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED 默认值为 SIMPLE_STRING_MATCH。
SIMPLE_STRING_MATCH 如果禁止的短语作为确切的子字符串出现在文本中的任何位置,则匹配成功。
WORD_BOUNDARY_STRING_MATCH 只有当文本中找到的模式被字词分隔符包围时,禁止使用的短语才会匹配。词组本身可能仍包含字词分隔符。

ModelArmorConfig

客户定义的 Model Armor 模板的配置,用于清理用户提示和助理回答。

JSON 表示法
{
  "userPromptTemplate": string,
  "responseTemplate": string,
  "failureMode": enum (FailureMode)
}
字段
userPromptTemplate

string

可选。用于清理用户提示的 Model Armor 模板的资源名称。格式:projects/{project}/locations/{location}/templates/{templateId}

如果未指定,则不会对用户提示进行清理。

responseTemplate

string

可选。用于清理助理回答的 Model Armor 模板的资源名称。格式:projects/{project}/locations/{location}/templates/{templateId}

如果未指定,则不会对 Google 助理的回答进行清理。

failureMode

enum (FailureMode)

可选。定义 Model Armor 清理的失败模式。

FailureMode

确定 Model Armor 无法处理请求时的行为。

枚举
FAILURE_MODE_UNSPECIFIED 未指定的故障模式,默认行为为 FAIL_CLOSED
FAIL_OPEN 如果 Model Armor 处理失败,允许继续执行该请求,而无需进行任何更改。
FAIL_CLOSED 如果 Model Armor 处理失败,则拒绝该请求。

VertexAiSearchToolConfig

Vertex AI Search 工具的配置选项,助理在处理查询时可能会使用该工具。

JSON 表示法
{
  "llmSystemInstructions": string
}
字段
llmSystemInstructions
(deprecated)

string

已弃用。请避免使用此字段。基于 Vertex AI Search 的搜索结果进行回答的系统指令。请注意,搜索工具生成的答案可能与助理的最终答案不同。

一般来说,系统指令是指模型在处理提示之前所处理的一组自然语言指令。它会告知模型应如何运作以及如何回复提示。请参阅 https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions

示例:“仅使用来源中的信息来回答问题。此外,请务必使用 Markdown 格式设置答案的格式,使其美观大方。”

如果未指定,系统将使用内部默认值。

AgentConfig

助理在处理查询时可能会调用的代理的配置选项。

JSON 表示法
{
  "id": string,
  "displayName": string,
  "toolDescription": string,
  "icon": {
    object (Image)
  },
  "authorizations": [
    string
  ],

  // Union field connection_info can be only one of the following:
  "vertexAiSdkAgentConnectionInfo": {
    object (VertexAiSdkAgentConnectionInfo)
  },
  "httpAgentConnectionInfo": {
    object (HttpAgentConnectionInfo)
  }
  // End of list of possible types for union field connection_info.
}
字段
id

string

必需。代理唯一的人类可读 ID。必须与以下正则表达式匹配:[a-z][a-zA-Z0-9_-]*

displayName

string

必需。在助理中用于引用的代理的显示名称。

toolDescription

string

必需。代理的工具说明。LLM 将使用此说明来决定代理是否与用户问题相关,以及是否应将该问题路由到代理。

icon

object (Image)

必需。界面上代表代理的图标。

authorizations[]

string

可选。所需授权的资源名称。如果用户未获得授权,该服务将返回多个授权 URI,用户必须在浏览器中打开这些 URI 并进行授权。获得所有授权后,用户可以重试查询,系统会将授权转发给代理。

格式:projects/{project}/locations/{location}/authorizations/{authorization}

联合字段 connection_info。代理的连接配置。connection_info 只能是下列其中一项:
vertexAiSdkAgentConnectionInfo

object (VertexAiSdkAgentConnectionInfo)

必需。Vertex AI SDK 代理的连接信息

httpAgentConnectionInfo

object (HttpAgentConnectionInfo)

必需。HTTP 代理的连接信息。

VertexAiSdkAgentConnectionInfo

Vertex AI SDK 代理的连接信息 - 目前仅支持通过推理引擎公开的代理。

JSON 表示法
{
  "reasoningEngine": string
}
字段
reasoningEngine

string

公开代理的推理引擎的资源名称。格式:projects/{project}/locations/{location}/reasoningEngines/{reasoningEngine}

HttpAgentConnectionInfo

可通过 HTTP 访问的代理。

JSON 表示法
{
  "httpUri": string
}
字段
httpUri

string

必需。代理的 HTTP 地址,例如“https://example.com/agent1”。

图片

表示图片。

JSON 表示法
{

  // Union field storage_method can be only one of the following:
  "uri": string,
  "content": string
  // End of list of possible types for union field storage_method.
}
字段
联合字段 storage_method。可以是 URI,也可以是编码为 base64 字符串的内容。storage_method 只能是下列其中一项:
uri

string

必需。映像 URI。

content

string

必需。Base64 编码的图片文件内容。

方法

assist

协助用户进行查询。

create

创建 Assistant

delete

删除 Assistant

get

获取 Assistant

list

列出 Engine 下的所有 Assistant

listAvailableAgentViews

列出用于显示 Assistant 下调用方可用的代理的数据。

patch

更新 Assistant

streamAssist

以流式方式协助用户进行查询。