Method: projects.locations.collections.engines.assistants.streamAssist

Aide l'utilisateur à répondre à une requête en streaming.

Requête HTTP

POST https://discoveryengine.googleapis.com/v1beta/{name=projects/*/locations/*/collections/*/engines/*/assistants/*}:streamAssist

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
name

string

Obligatoire. Nom de ressource du Assistant. Format : projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/assistants/{assistant}

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "query": {
    object (Query)
  },
  "session": string,
  "userMetadata": {
    object (AssistUserMetadata)
  },
  "agentsSpec": {
    object (AgentsSpec)
  },
  "toolsSpec": {
    object (ToolsSpec)
  },
  "generationSpec": {
    object (GenerationSpec)
  }
}
Champs
query

object (Query)

Facultatif. Requête de l'utilisateur actuel.

Les requêtes vides ne sont acceptées que si des fileIds sont fournis. Dans ce cas, la réponse sera générée en fonction de ces fichiers contextuels.

session

string

Facultatif. Session à utiliser pour la requête. Si cette option est spécifiée, l'assistant a accès à l'historique des sessions, et la requête et la réponse y sont stockées.

Si - est spécifié comme ID de session ou s'il est laissé vide, une nouvelle session est créée avec un ID généré automatiquement.

Format : projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/sessions/{session}

userMetadata

object (AssistUserMetadata)

Facultatif. Informations sur l'utilisateur qui lance la requête.

agentsSpec

object (AgentsSpec)

Facultatif. Spécification des agents utilisés pour traiter la requête.

toolsSpec

object (ToolsSpec)

Facultatif. Spécification des outils utilisés pour traiter la demande.

generationSpec

object (GenerationSpec)

Facultatif. Spécification de la configuration de génération pour la requête.

Corps de la réponse

Réponse pour la méthode AssistantService.StreamAssist.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Représentation JSON
{
  "answer": {
    object (AssistAnswer)
  },
  "sessionInfo": {
    object (SessionInfo)
  },
  "assistToken": string
}
Champs
answer

object (AssistAnswer)

Objet de ressource de réponse assistants.assist contenant des parties de la réponse finale de l'assistant à la requête de l'utilisateur.

Absent si la réponse actuelle n'ajoute rien aux AssistAnswer.replies précédemment envoyés.

Observez AssistAnswer.state pour voir si d'autres parties sont à prévoir. Lorsque l'état est IN_PROGRESS, le champ AssistAnswer.replies de chaque réponse contient les réponses (fragments de réponse) à ajouter à celles reçues dans les réponses précédentes. AssistAnswer.name ne sera pas rempli.

Si l'état est SUCCEEDED, FAILED ou SKIPPED, la réponse est la dernière réponse et AssistAnswer.name aura une valeur.

sessionInfo

object (SessionInfo)

Informations sur la session. Inclus uniquement dans la réponse StreamAssistResponse finale du flux de réponse.

assistToken

string

ID unique global qui identifie la paire actuelle de requête et de flux de réponses. Utilisé pour les commentaires et l'assistance.

Niveaux d'accès des autorisations

Nécessite l'un des champs d'application OAuth suivants :

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/discoveryengine.readwrite
  • https://www.googleapis.com/auth/discoveryengine.assist.readwrite

Pour plus d'informations, consultez la Authentication Overview.

Autorisations IAM

Nécessite l'autorisation IAM suivante sur la ressource name :

  • discoveryengine.assistants.assist

Pour en savoir plus, consultez la documentation IAM.

AgentsSpec

Spécification des agents utilisés pour traiter la requête.

Représentation JSON
{
  "agentSpecs": [
    {
      object (AgentSpec)
    }
  ]
}
Champs
agentSpecs[]

object (AgentSpec)

Facultatif. Spécification des agents utilisés pour traiter la requête.

AgentSpec

Spécification d'un agent.

Représentation JSON
{
  "agentId": string
}
Champs
agentId

string

Obligatoire. ID permettant d'identifier la ressource d'agent qui traite la demande.

Ce champ doit être conforme à la norme RFC-1034 et ne pas comporter plus de 63 caractères.

ToolsSpec

Spécification des outils utilisés pour traiter la demande.

Représentation JSON
{
  "vertexAiSearchSpec": {
    object (VertexAiSearchSpec)
  },
  "webGroundingSpec": {
    object (WebGroundingSpec)
  },
  "imageGenerationSpec": {
    object (ImageGenerationSpec)
  },
  "videoGenerationSpec": {
    object (VideoGenerationSpec)
  }
}
Champs
vertexAiSearchSpec

object (VertexAiSearchSpec)

Facultatif. Spécification de l'outil Vertex AI Search.

webGroundingSpec

object (WebGroundingSpec)

Facultatif. Spécification de l'outil d'ancrage Web. Si le champ est présent, l'ancrage avec la recherche sur le Web est activé. Ne fonctionne que si Assistant.web_grounding_type est [WEB_GROUNDING_TYPE_GOOGLE_SEARCH][] ou [WEB_GROUNDING_TYPE_ENTERPRISE_WEB_SEARCH][].

imageGenerationSpec

object (ImageGenerationSpec)

Facultatif. Spécification de l'outil de génération d'images.

videoGenerationSpec

object (VideoGenerationSpec)

Facultatif. Spécification de l'outil de génération de vidéos.

VertexAiSearchSpec

Spécification de l'outil Vertex AI Search.

Représentation JSON
{
  "dataStoreSpecs": [
    {
      object (DataStoreSpec)
    }
  ],
  "filter": string
}
Champs
dataStoreSpecs[]

object (DataStoreSpec)

Facultatif. Spécifications définissant les DataStore sur lesquels filtrer un appel de recherche et les configurations de ces magasins de données. Cela n'est pris en compte que pour les Engine comportant plusieurs data stores.

filter

string

Facultatif. La syntaxe des filtres consiste en un langage d'expression permettant de construire un prédicat à partir d'un ou de plusieurs champs des documents filtrés. L'expression de filtre est sensible à la casse.

Si ce champ n'est pas reconnaissable, un INVALID_ARGUMENT est renvoyé.

Le filtrage dans Vertex AI Search s'effectue en mappant la clé de filtre LHS à une propriété clé définie dans le backend Vertex AI Search. Ce mappage est défini par le client dans son schéma. Par exemple, un client média peut avoir un champ "name" (nom) dans son schéma. Dans ce cas, le filtre se présenterait comme suit : filter --> name:'ANY("king kong")`

Pour en savoir plus sur le filtrage, y compris sur la syntaxe et les opérateurs de filtre, consultez Filtrer.

WebGroundingSpec

Ce type ne comporte aucun champ.

Spécification de l'outil d'ancrage Web.

ImageGenerationSpec

Ce type ne comporte aucun champ.

Spécification de l'outil de génération d'images.

VideoGenerationSpec

Ce type ne comporte aucun champ.

Spécification de l'outil de génération de vidéos.

GenerationSpec

Spécification de la génération de l'Assistant pour la requête. Cela permet de remplacer la configuration de génération par défaut au niveau du moteur.

Représentation JSON
{
  "modelId": string
}
Champs
modelId

string

Facultatif. ID du modèle Vertex AI utilisé pour le modèle génératif. Si aucune valeur n'est définie, le modèle Assistant par défaut sera utilisé.

SessionInfo

Informations sur la session.

Représentation JSON
{
  "session": string
}
Champs
session

string

Nom de la session nouvellement générée ou poursuivie.

Format : projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/sessions/{session}.