Architecture et concepts clés de l'API Conversational Analytics

Ce document décrit les concepts clés pour utiliser l'API Conversational Analytics (geminidataanalytics.googleapis.com), qui vous permet de créer des agents de données et d'interagir avec eux. Ces agents utilisent le langage naturel pour répondre aux questions sur vos données structurées. Ce document décrit le fonctionnement des agents, les workflows types, les modes de conversation et les rôles IAM (Identity and Access Management), et il explique comment concevoir des systèmes avec plusieurs agents.

Fonctionnement des agents de données

Les agents de données de l'API Conversational Analytics utilisent le contexte que vous fournissez (informations et données de l'entreprise) et des outils (tels que SQL et Python) pour interpréter les questions en langage naturel et générer des réponses à partir de vos données structurées.

Le diagramme suivant illustre les étapes du workflow d'un agent lorsqu'un utilisateur pose une question :

Diagramme de l'architecture de l'API Conversational Analytics, montrant le flux depuis l'entrée utilisateur jusqu'à la sortie finale, en passant par un moteur de raisonnement.

Comme le montre le diagramme, lorsqu'un utilisateur pose une question, l'agent traite la requête en plusieurs étapes :

  1. Entrée utilisateur : l'utilisateur envoie une question en langage naturel, ainsi que tout contexte supplémentaire qu'il souhaite fournir.
  2. Sources de données : l'agent se connecte à vos données dans Looker, BigQuery et Looker Studio pour récupérer les informations nécessaires.
  3. Moteur de raisonnement : le cœur de l'agent traite la question de l'utilisateur en utilisant les outils disponibles pour générer une réponse.
  4. Sortie de l'agent : l'agent génère une réponse, qui peut inclure du texte, des tables de données ou des spécifications pour les graphiques.

Workflows pour concevoir et utiliser des agents

L'API Conversational Analytics est compatible avec les workflows pour les créateurs d'agents (qui créent et configurent des agents) et pour les utilisateurs d'agents (qui interagissent avec les agents).

Le diagramme suivant illustre le processus de A à Z, de la configuration initiale par un créateur d'agent aux interactions finales d'un utilisateur d'agent :

Workflow complet montrant la conception et l'utilisation d'un agent, des tâches de créateur (création et partage) aux tâches d'utilisateur des données (interaction avec l'agent).

Les sections suivantes décrivent plus en détail les workflows pour les créateurs et les utilisateurs d'agents.

Workflow de créateur d'agent

Le créateur de l'agent est responsable de sa configuration. Ce workflow comprend les étapes suivantes :

  1. Créer un agent : le créateur commence par créer un agent et fournit le contexte nécessaire, y compris les instructions système et les connexions aux sources de données. Cette étape est essentielle pour permettre à l'agent de comprendre les questions des utilisateurs et d'y répondre efficacement.
  2. Partager l'agent : une fois l'agent configuré, le créateur le partage avec d'autres utilisateurs et définit les contrôles des accès basés sur les rôles appropriés pour gérer les autorisations.

Workflow d'utilisateur d'agent

L'utilisateur d'agent est généralement un utilisateur professionnel qui a besoin d'obtenir des réponses grâce à un agent configuré. Ce workflow comprend les étapes suivantes :

  1. Accéder à un agent : l'utilisateur commence par accéder à un agent qui a été partagé avec lui.
  2. Poser une question : l'utilisateur pose une question en langage naturel. Cette question peut être une requête unique ou faire partie d'une conversation multitours.
  3. L'agent "réfléchit" : le moteur de raisonnement de l'agent traite la question. Il utilise les connaissances prédéfinies de l'agent et les outils disponibles (comme SQL, Python et les graphiques) dans une "boucle de raisonnement" pour déterminer la meilleure façon de répondre à la question.
  4. L'agent répond : l'agent renvoie une réponse, qui peut inclure du texte, des tables de données ou des graphiques.

Modes de conversation

Les agents de l'API Conversational Analytics sont compatibles avec différents modes de conversation qui déterminent la façon dont un agent gère l'historique des conversations et la persistance du contexte entre les interactions. Les modes de conversation suivants sont disponibles :

  • Mode sans état : l'agent ne stocke pas l'historique des conversations. Chaque interaction est traitée indépendamment. Ce mode est utile pour les applications dans lesquelles vous n'avez pas besoin de conserver le contexte sur plusieurs tours.
  • Mode avec état : l'agent conserve le contexte et l'historique des conversations, ce qui permet des interactions plus contextualisées. Ce mode est utile pour les applications dans lesquelles vous devez conserver le contexte sur plusieurs tours. Nous vous recommandons d'utiliser le mode avec état pour obtenir des réponses plus précises et personnalisées.

Choisissez un mode de conversation en fonction des exigences de votre application concernant l'historique des conversations et la persistance du contexte.

Les différents modes de conversation pour un agent de l'API Conversational Analytics.

Rôles IAM

Les rôles IAM contrôlent qui peut créer et gérer des agents de l'API Conversational Analytics, les partager et interagir avec eux. Le tableau suivant décrit les principaux rôles IAM pour l'API Conversational Analytics :

Rôle Niveau d'accès type Autorisations du rôle Qui peut utiliser ce rôle
Créateur d'agent des données des analyses de données Gemini (roles/geminidataanalytics.dataAgentCreator) Projet Créer des agents et hériter des autorisations du propriétaire sur l'agent Tous les analystes de données
Propriétaire d'agent des données des analyses de données Gemini (roles/geminidataanalytics.dataAgentOwner) Projet, agent Modifier et supprimer des agents, et les partager avec d'autres utilisateurs Analyste de données senior
Éditeur d'agent des données des analyses de données Gemini (roles/geminidataanalytics.dataAgentEditor) Agent, projet Modifier la configuration ou le contexte d'un agent Analyste de données junior
Utilisateur d'agent des données des analyses de données Gemini (roles/geminidataanalytics.dataAgentUser) Agent, projet Discuter avec un agent Responsable marketing, propriétaire de magasin
Lecteur d'agent des données des analyses de données Gemini (roles/geminidataanalytics.dataAgentViewer) Projet, agent Lister les agents et obtenir leurs détails Tout utilisateur
Utilisateur sans état d'agent des données des analyses de données Gemini (roles/geminidataanalytics.dataAgentStatelessUser) Projet Discuter avec un agent sans que le contexte ni l'historique des conversations soient stockés Tout utilisateur

Systèmes avec plusieurs agents

Vous pouvez concevoir des systèmes complexes en intégrant plusieurs agents de l'API Conversational Analytics. Un modèle courant consiste à utiliser un agent "orchestrateur" principal qui délègue des tâches à un ou plusieurs agents spécialisés qui gèrent des domaines spécifiques, tels que les données commerciales ou marketing. Cette approche vous permet de créer un système capable de répondre à un large éventail de questions en combinant les points forts de plusieurs agents.

Le diagramme suivant illustre ce modèle multi-agents et montre comment un agent principal peut déléguer une question sur les données à un agent Conversational Analytics spécialisé :

Un agent orchestrateur principal délègue une question sur les données à un agent spécialisé sur les ventes, qui renvoie ensuite une réponse à l'utilisateur.

Le workflow type d'un système multi-agents comprend les étapes suivantes :

  1. Un utilisateur professionnel ou un analyste de données pose une question en langage naturel, par exemple "Affiche les trois magasins les plus performants en termes de revenus".
  2. Un agent "orchestrateur" principal délègue la requête à l'agent spécialisé approprié.
  3. Un agent spécialisé reçoit la demande déléguée, se connecte aux sources de données pertinentes, utilise ses outils pour générer les graphiques et les requêtes SQL nécessaires, puis génère une réponse.
  4. La réponse de l'agent spécialisé est renvoyée à l'utilisateur, par exemple : "Les magasins 4, 9 et 3 ont généré les revenus les plus élevés. Voici un graphique."

Étapes suivantes

Une fois que vous avez compris les concepts de base de l'API Conversational Analytics, découvrez comment implémenter ces fonctionnalités :