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

Recurso: Assistant

Es el recurso del asistente de Discovery Engine.

Representación 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
}
Campos
name

string

Inmutable. Nombre del recurso del asistente. Formato: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}

Debe ser una cadena codificada en UTF-8 con un límite de 1,024 caracteres.

displayName

string

Obligatorio. Es el nombre visible del asistente.

Debe ser una cadena codificada en UTF-8 con un límite de 128 caracteres.

description

string

Opcional. Descripción para obtener información adicional. Se espera que se muestre en la IU de configuración, no a los usuarios del asistente.

generationConfig

object (GenerationConfig)

Opcional. Es la configuración para la generación de la respuesta del asistente.

googleSearchGroundingEnabled
(deprecated)

boolean

Opcional. Obsoleto. Utiliza webGroundingType en lugar de esta función.

webGroundingType

enum (WebGroundingType)

Opcional. Es el tipo de fundamentación web que se usará.

defaultWebGroundingToggleOff

boolean

Opcional. Este campo controla la activación o desactivación predeterminada de la fundamentación web para los usuarios finales si webGroundingType se establece en WEB_GROUNDING_TYPE_GOOGLE_SEARCH o WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH. De forma predeterminada, este campo se establece como falso. Si webGroundingType es WEB_GROUNDING_TYPE_GOOGLE_SEARCH o WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH, los usuarios finales tendrán habilitada la fundamentación web de forma predeterminada en la IU. Si es verdadero, el botón de activación de fundamentación estará inhabilitado de forma predeterminada en la IU. Los usuarios finales aún pueden habilitar la fundamentación web en la IU si esta función está habilitada.

vertexAiAgentConfigs[]
(deprecated)

object (VertexAiAgentConfig)

Opcional. Obsoleto: Se reemplazará por agentes de Dialogflow en AgentService. Es la lista de agentes de Vertex AI a los que se puede acceder a través del asistente.

enabledActions
(deprecated)

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

Opcional. Obsoleto: Se reemplazará por enabledTools. Son las acciones habilitadas en este asistente. Las claves son el nombre del conector, por ejemplo, "projects/{projectId}/locations/{locationId}/collections/{collectionId}/dataconnector". Los valores consisten en acciones habilitadas por el administrador hacia la instancia del conector. El administrador puede habilitar de forma selectiva varias acciones en cualquiera de las instancias del conector que creó en el proyecto. Por ejemplo, {"jira1ConnectorName": [(actionId1, "createTicket"), (actionId2, "transferTicket")], "gmail1ConnectorName": [(actionId3, "sendEmail"),..] }

enabledTools

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

Opcional. Nota: Aún no se implementó. Utiliza enabledActions en lugar de esta función. Son las herramientas habilitadas en este asistente. Las claves son el nombre del conector, por ejemplo, "projects/{projectId}/locations/{locationId}/collections/{collectionId}/dataconnector". Los valores constan de herramientas habilitadas por el administrador para la instancia del conector. El administrador puede habilitar de forma selectiva varias herramientas en cualquiera de las instancias del conector que creó en el proyecto. Por ejemplo, {"jira1ConnectorName": [(toolId1, "createTicket"), (toolId2, "transferTicket")], "gmail1ConnectorName": [(toolId3, "sendEmail"),..] }

customerPolicy

object (CustomerPolicy)

Opcional. Política de clientes para el asistente.

vertexAiSearchToolConfig

object (VertexAiSearchToolConfig)

Opcional. Son las opciones de configuración de la herramienta de Vertex AI Search.

styleAndFormattingInstructions
(deprecated)

string

Opcional. Obsoleto. En su lugar, usa [addtional_system_instructions][GenerationConfig.SystemInstruction.additional_system_instructions]. Fragmento de instrucción del sistema común para establecer el estilo, el tono y el formato de la conversación. Se agrega a todas las instrucciones del LLM a través del marcador de posición [STYLE_AND_FORMATTING_INSTRUCTIONS].

agentConfigs[]

object (AgentConfig)

Opcional. Es la lista de agentes a los que se puede contactar a través del asistente.

enableEndUserAgentCreation

boolean

Opcional. Indica si los usuarios finales pueden crear agentes en Agentspace.

disableLocationContext

boolean

Opcional. Indica si se debe inhabilitar el contexto de ubicación del usuario. De forma predeterminada, el contexto de ubicación del usuario está habilitado.

GenerationConfig

Es la configuración para la generación de la respuesta del asistente.

Representación JSON
{
  "systemInstruction": {
    object (SystemInstruction)
  },
  "defaultLanguage": string
}
Campos
systemInstruction

object (SystemInstruction)

Es una instrucción del sistema, también conocida como preámbulo del prompt para las llamadas al LLM. Consulta también https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions

defaultLanguage

string

Es el idioma predeterminado que se usará para generar la respuesta del asistente. Usa un código de idioma ISO 639-1, como en. Si no se especifica, el idioma se detectará automáticamente.

SystemInstruction

Es una instrucción del sistema, también conocida como preámbulo del prompt para las llamadas al LLM.

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

string

Opcional. Es una instrucción adicional del sistema que se agregará a la instrucción predeterminada del sistema.

WebGroundingType

Es el tipo de fundamentación web que se usará.

Enums
WEB_GROUNDING_TYPE_UNSPECIFIED Es el parámetro de configuración predeterminado y sin especificar. Es lo mismo que inhabilitado.
WEB_GROUNDING_TYPE_DISABLED La fundamentación web está inhabilitada.

VertexAiAgentConfig

Obsoleto: Usa agentes de Dialogflow en AgentService en su lugar. Representa un agente externo de Vertex AI al que se puede acceder a través del asistente.

Representación JSON
{
  "displayName": string,
  "name": string,
  "toolDescription": string
}
Campos
displayName

string

Obligatorio. Es el nombre visible del agente de Vertex AI que se usa como referencia en el asistente.

name

string

Obligatorio. Es el nombre del recurso del agente de Vertex AI. Formato: projects/{project}/locations/{location}/agents/{agent}

toolDescription

string

Obligatorio. Es la descripción de la herramienta del agente de Vertex AI. El LLM usará esta descripción para decidir si el agente es pertinente para la pregunta del usuario y si esta última debe enrutarse al agente.

ActionList

Obsoleto: Se reemplazará por ToolList. Son las acciones habilitadas en un conector.

Representación JSON
{
  "actionInfo": [
    {
      object (ActionInfo)
    }
  ]
}
Campos
actionInfo[]

object (ActionInfo)

Es la lista de acciones con la información correspondiente.

ActionInfo

Obsoleto: Se reemplazará por ToolInfo. Es información para identificar una acción.

Representación JSON
{
  "actionName": string,
  "actionDisplayName": string
}
Campos
actionName

string

Nombre de la acción tal como la define DataConnectorService.QueryAvailableActions.

actionDisplayName

string

Es el nombre visible de la acción.

ToolList

Las herramientas habilitadas en un conector

Representación JSON
{
  "toolInfo": [
    {
      object (ToolInfo)
    }
  ]
}
Campos
toolInfo[]

object (ToolInfo)

Es la lista de herramientas con la información correspondiente.

ToolInfo

Es la información para identificar una herramienta.

Representación JSON
{
  "toolName": string,
  "toolDisplayName": string
}
Campos
toolName

string

Es el nombre de la herramienta tal como lo define DataConnectorService.QueryAvailableActions. Nota: Se usa action en las APIs de DataConnectorService, pero son las mismas que tool aquí.

toolDisplayName

string

Es el nombre visible de la herramienta.

CustomerPolicy

Es la política definida por el cliente para el asistente.

Representación JSON
{
  "bannedPhrases": [
    {
      object (BannedPhrase)
    }
  ],
  "modelArmorConfig": {
    object (ModelArmorConfig)
  }
}
Campos
bannedPhrases[]

object (BannedPhrase)

Opcional. Es la lista de frases prohibidas.

modelArmorConfig

object (ModelArmorConfig)

Opcional. Es la configuración de Model Armor que se usará para limpiar las instrucciones del usuario y las respuestas del asistente.

BannedPhrase

Es la definición de una frase prohibida definida por el cliente. No se permite que aparezca una frase prohibida en la búsqueda del usuario ni en la respuesta del LLM. De lo contrario, se rechazará la respuesta.

Representación JSON
{
  "phrase": string,
  "matchType": enum (BannedPhraseMatchType),
  "ignoreDiacritics": boolean
}
Campos
phrase

string

Obligatorio. Es el contenido de la cadena sin procesar que se prohibirá.

matchType

enum (BannedPhraseMatchType)

Opcional. Es el tipo de concordancia de la frase prohibida.

ignoreDiacritics

boolean

Opcional. Si es verdadero, se ignoran las marcas diacríticas (p.ej., acentos, diéresis) cuando se buscan coincidencias con frases prohibidas. Por ejemplo, "cafe" coincidiría con "café".

BannedPhraseMatchType

Es el método de coincidencia de la frase prohibida.

Enums
BANNED_PHRASE_MATCH_TYPE_UNSPECIFIED La configuración predeterminada es SIMPLE_STRING_MATCH.
SIMPLE_STRING_MATCH La frase prohibida coincide si se encuentra en cualquier parte del texto como una subcadena exacta.
WORD_BOUNDARY_STRING_MATCH La frase prohibida solo coincide si el patrón que se encuentra en el texto está rodeado de delimitadores de palabras. La frase en sí puede contener delimitadores de palabras.

ModelArmorConfig

Es la configuración de las plantillas de Model Armor definidas por el cliente que se usarán para sanear las instrucciones del usuario y las respuestas del asistente.

Representación JSON
{
  "userPromptTemplate": string,
  "responseTemplate": string,
  "failureMode": enum (FailureMode)
}
Campos
userPromptTemplate

string

Opcional. Es el nombre del recurso de la plantilla de Model Armor para sanear las instrucciones del usuario. Formato: projects/{project}/locations/{location}/templates/{templateId}

Si no se especifica, no se aplicará ninguna limpieza a la instrucción del usuario.

responseTemplate

string

Opcional. Es el nombre del recurso de la plantilla de Model Armor para sanear las respuestas del asistente. Formato: projects/{project}/locations/{location}/templates/{templateId}

Si no se especifica, no se aplicará ninguna limpieza a la respuesta del asistente.

failureMode

enum (FailureMode)

Opcional. Define el modo de falla para el saneamiento de Model Armor.

FailureMode

Determina el comportamiento cuando Model Armor no puede procesar una solicitud.

Enums
FAILURE_MODE_UNSPECIFIED Modo de falla no especificado. El comportamiento predeterminado es FAIL_CLOSED.
FAIL_OPEN En caso de que falle el procesamiento de Model Armor, se permite que la solicitud continúe sin cambios.
FAIL_CLOSED En caso de que falle el procesamiento de Model Armor, se rechaza la solicitud.

VertexAiSearchToolConfig

Son las opciones de configuración de la herramienta de Vertex AI Search que el asistente puede usar cuando procesa preguntas.

Representación JSON
{
  "llmSystemInstructions": string
}
Campos
llmSystemInstructions
(deprecated)

string

Obsoleto. Evita usar este campo. Son instrucciones del sistema para responder en función de los resultados de la búsqueda de Vertex AI Search. Ten en cuenta que la respuesta que genera la herramienta de búsqueda puede diferir de la respuesta final del asistente.

En general, las instrucciones del sistema son un conjunto de instrucciones en lenguaje natural que el modelo procesa antes de ejecutar las instrucciones. Le indica al modelo cómo debe comportarse y responder a las instrucciones. Consulta https://cloud.google.com/vertex-ai/generative-ai/docs/learn/prompts/system-instructions.

Ejemplo: "Usa solo la información de las fuentes para responder. Además, asegúrate de darle un formato agradable a la respuesta con Markdown".

Si no se especifica, se usará el valor predeterminado interno.

AgentConfig

Son las opciones de configuración para los agentes a los que el asistente puede llamar cuando procesa consultas.

Representación 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.
}
Campos
id

string

Obligatorio. Es un ID único y legible por humanos para el agente. Debe coincidir con la siguiente expresión regular: [a-z][a-zA-Z0-9_-]*.

displayName

string

Obligatorio. Es el nombre visible del agente que se usa como referencia en el asistente.

toolDescription

string

Obligatorio. La descripción de la herramienta del agente. El LLM usará esta descripción para decidir si el agente es pertinente para la pregunta del usuario y si esta última debe enrutarse al agente.

icon

object (Image)

Obligatorio. Ícono que representa al agente en la IU.

authorizations[]

string

Opcional. Son los nombres de los recursos de las autorizaciones requeridas. Si el usuario no está autorizado, el servicio devolverá una cantidad de URIs de autorización que el usuario debe abrir en un navegador y autorizar. Una vez que se otorgan todas las autorizaciones, el usuario puede volver a intentar la búsqueda y las autorizaciones se reenviarán al agente.

Formato: projects/{project}/locations/{location}/authorizations/{authorization}

Campo de unión connection_info. Es la configuración de conexión del agente. connection_info puede ser solo uno de los siguientes:
vertexAiSdkAgentConnectionInfo

object (VertexAiSdkAgentConnectionInfo)

Obligatorio. Información de conexión para un agente del SDK de Vertex AI

httpAgentConnectionInfo

object (HttpAgentConnectionInfo)

Obligatorio. Es la información de conexión de un agente HTTP.

VertexAiSdkAgentConnectionInfo

Es la información de conexión para un agente del SDK de Vertex AI. Actualmente, solo se admiten los agentes expuestos a través de Reasoning Engines.

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

string

Es el nombre del recurso del motor de razonamiento que expone el agente. Formato: projects/{project}/locations/{location}/reasoningEngines/{reasoningEngine}

HttpAgentConnectionInfo

Es un agente al que el asistente puede acceder a través de HTTP.

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

string

Obligatorio. Es la dirección HTTP del agente, p.ej., "https://example.com/agent1".

Imagen

Representa una imagen.

Representación 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.
}
Campos
Campo de unión storage_method. Puede ser un URI o el contenido codificado como una cadena base64. storage_method puede ser solo uno de los siguientes:
uri

string

Obligatorio. Es el URI de la imagen.

content

string

Obligatorio. Contenido del archivo de imagen codificado en Base64.

Métodos

assist

Ayuda al usuario con una consulta.

create

Crea un Assistant.

delete

Borra un Assistant.

get

Obtiene un Assistant.

list

Enumera todos los Assistant en un Engine.

listAvailableAgentViews

Enumera los datos para mostrar los agentes en un Assistant que están disponibles para el llamador.

patch

Actualiza un Assistant

streamAssist

Ayuda al usuario con una consulta de forma continua.