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 :
Comme le montre le diagramme, lorsqu'un utilisateur pose une question, l'agent traite la requête en plusieurs étapes :
- Entrée utilisateur : l'utilisateur envoie une question en langage naturel, ainsi que tout contexte supplémentaire qu'il souhaite fournir.
- 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.
- 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.
- 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 :
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 :
- 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.
- 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 :
- Accéder à un agent : l'utilisateur commence par accéder à un agent qui a été partagé avec lui.
- 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.
- 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.
- 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.
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é :
Le workflow type d'un système multi-agents comprend les étapes suivantes :
- 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".
- Un agent "orchestrateur" principal délègue la requête à l'agent spécialisé approprié.
- 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.
- 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 :
- Découvrez comment vous authentifier et vous connecter à une source de données.
- Découvrez comment créer et configurer un agent avec HTTP.
- Découvrez comment créer et configurer un agent avec Python.
- Découvrez comment guider le comportement d'un agent avec un contexte créé.
- Apprenez-en plus sur le contrôle des accès avec IAM pour l'API Conversational Analytics.