La démocratisation des données démarre par un accès simple et sécurisé aux insights. Avec Databricks Genie, les utilisateurs peuvent désormais dialoguer avec leurs données directement depuis les outils qu'ils utilisent déjà : Teams, Slack, Confluence ou des applications web personnalisées. Que vous utilisiez nos intégrations natives Copilot Studio/Foundry ou que vous développiez avec les API/SDK de conversation Genie, Genie peut désormais intégrer l'analytique en langage naturel dans les flux de travail quotidiens. En coulisses, OAuth peut être utilisé pour authentifier chaque utilisateur de manière sécurisée et appliquer les autorisations d'accès aux données.
Auparavant, nous avons vu des clients comme The AA et Casas Bahia créer indépendamment leurs propres intégrations Genie dans Microsoft Teams et des applications internes. Notre suite d'extensibilité robuste rend désormais cette expérience plus simple, plus rapide et plus évolutive.
Dans cet article de blog, nous allons présenter deux manières courantes de déployer Genie avec l'OAuth d'entreprise au sein de votre organisation :
Des questions de données ad hoc surgissent constamment lors des conversations de groupe. Grâce à l'intégration native de Databricks Genie avec Copilot Studio, vos utilisateurs peuvent désormais obtenir des réponses dès que des questions se posent, directement dans Microsoft Teams. Pour utiliser cette intégration, suivez les étapes ci-dessous :
La première étape pour activer Genie dans Microsoft Teams consiste à connecter Azure Databricks à Power Platform (documentation). Dans votre Microsoft Power Apps, cliquez sur Connexions et sélectionnez Azure Databricks, ou Databricks si vous utilisez AWS/GCP. Configurez les champs suivants :
Ensuite, vous connecterez votre espace Genie à Copilot Studio (documentation). Notre intégration gère toute la logique API et MCP afin que la connexion puisse s'établir en quelques clics seulement.
Dans Copilot Studio, cliquez sur Agents. Sélectionnez « Créer un agent vide » pour créer un nouvel agent autonome pour un espace Genie. Si vous souhaitez intégrer Genie dans un framework d'agent existant, vous pouvez également choisir un agent Copilot Studio existant auquel ajouter votre Genie space.
Dans votre nouvel agent, cliquez sur 'Outils', puis sur 'Ajouter un outil'. Sélectionnez Azure Databricks Genie (ou Databricks Genie pour AWS/GCP) dans la section MCP.
Vous pouvez maintenant sélectionner l'espace Genie de votre choix et configurer les détails de la connexion :
Lorsque vous choisissez « Informations d'identification de l'utilisateur final », chaque personne doit se connecter à Databricks avec son propre compte. Pour simplifier cela, nous vous suggérons de partager les paramètres de connexion (comme décrit dans la documentation Microsoft), afin que les utilisateurs n'aient pas à fournir ces informations eux-mêmes. En pratique, cela signifie simplement fournir le Hostname du serveur et le chemin HTTP, ce qui garantit qu'ils s'authentifient auprès du Databricks workspace exact lié au Genie space connecté dans votre agent Copilot Studio.
Maintenant que vous disposez d'un agent Copilot Studio connecté à votre espace Genie, vous pouvez le publier sur Teams.
Vous êtes prêt ! Genie est maintenant disponible dans Microsoft Teams et fournit des informations sur les données gouvernées dès que des questions se posent.
Pour voir comment les utilisateurs finaux exploitent Genie dans Microsoft Teams, consultez nos témoignages clients.
De nombreuses organisations souhaitent également intégrer Genie directement dans leurs applications web personnalisées, afin que les utilisateurs puissent poser des questions dans les outils qu'ils utilisent déjà — par exemple, les directeurs de magasin pourraient poser des questions ad-hoc sur leur inventaire directement dans leur terminal de vente existant. Avec les API de conversation Genie et Databricks OAuth, c'est désormais possible.
Avant de créer une intégration entre votre application Web et Genie, il est important de décider quel modèle OAuth vous utiliserez : User-to-Machine (U2M), Machine-to-Machine (M2M) ou un modèle On-Behalf-Of (OBO). Chaque approche correspond à un type de cas d'utilisation d'application différent :
Pour le reste de ce blog, nous nous concentrerons sur le premier modèle d'intégration avec Genie : le flux OAuth U2M en utilisant le support OAuth intégré de Databricks.
REMARQUE : Databricks prend également en charge la fédération de jetons OAuth, que vous pouvez utiliser pour importer des jetons émis par votre propre fournisseur d'identité et les combiner avec l'une des méthodes décrites ci-dessus pour accéder à Genie.
Pour connecter en toute sécurité votre application Web personnalisée à Genie, commencez par l'enregistrer dans votre compte Databricks. Cette étape permet à Databricks d'émettre en toute sécurité des jetons à portée utilisateur pour votre application dans les étapes ultérieures. Consultez la documentation du produit pour en savoir plus.
Dans la console de compte Databricks, ajoutez une nouvelle connexion OAuth et configurez les éléments suivants :
Après avoir enregistré cette connexion, Databricks générera ce qui suit :
Stockez ces identifiants en toute sécurité dans votre backend. Ils seront nécessaires pour échanger les codes d'autorisation contre des jetons d'accès et authentifier les appels aux API Genie Conversation.
L'étape suivante consiste à s'assurer que votre application dirige les utilisateurs finaux vers Databricks afin qu'ils puissent se connecter et approuver votre application pour communiquer avec Genie en leur nom. Après une connexion et une approbation réussies, Databricks redirigera l'utilisateur vers votre application avec un code d'autorisation à courte durée de vie.
Ce code d'autorisation prouve que l'utilisateur s'est authentifié avec succès dans Databricks et que l'utilisateur a approuvé l'accès demandé par votre application. Le backend de votre application utilisera ce code d'autorisation à l'étape suivante pour obtenir des jetons d'accès.
Pour commencer, générez des valeurs PKCE et d'état pour chaque connexion afin de protéger votre application web :
Ensuite, votre frontend doit construire une URL d'autorisation à l'aide du Databricks OAuth endpoint:
Incluez les paramètres de formulaire suivants pour identifier votre application pour vos utilisateurs :
Après qu'un utilisateur se connecte à son compte Databricks, il sera redirigé vers l'URL de redirection (redirect_url) avec les paramètres de requête : https://<redirect_url>/oauth/callback?code=<authorization_code>&state=<state>
Votre gestionnaire de rappel doit lire l'authorization_code et le state depuis la chaîne de requête. Vérifiez que la valeur de state correspond à ce qui a été stocké dans les cookies ou les sessions web. Si ce n'est pas le cas, rejetez l'authorization_code. Avec l'authorization_code renvoyé, votre application peut maintenant l'échanger contre des jetons d'accès.
Le code d'autorisation récupéré à l'étape précédente ne peut pas être utilisé pour appeler directement les APIs. Il doit être échangé sur votre backend contre des jetons d'accès, qui sont nécessaires pour communiquer en toute sécurité avec Genie. Pour plus d'informations, veuillez consulter notre documentation produit).
Vous trouverez ci-dessous un exemple Python pour échanger des codes d'autorisation contre des jetons d'accès et refresh (voir les détails dans la documentation du SDK OAuth) :
Incluez les paramètres suivants :
Il est important d'enregistrer les valeurs suivantes de l'objet result dans la base de données de votre application :
Pour gérer les jetons d'accès en toute sécurité, il est également important que votre application suive les dates d'expiration et utilise les jetons d'actualisation pour obtenir de nouveaux jetons d'accès si nécessaire. L'exemple de code ci-dessous abstrait la logique de refresh pour toujours renvoyer un jeton d'accès utilisateur valide :
Maintenant que votre application dispose de jetons d'accès Databricks spécifiques à l'utilisateur, elle peut soumettre des invites à un Genie space au nom de l'utilisateur connecté. Nous recommandons de créer un routeur d'API backend pour votre application web afin de protéger les jetons d'accès Databricks du navigateur et de centraliser l'observabilité, la gestion des erreurs et la limitation du débit. Les exemples de code ci-dessous exploitent FastAPI et le SDK de Genie pour une logique plus simple.
Après ces étapes, votre application web personnalisée sera intégrée en toute sécurité à Genie, permettant aux utilisateurs de poser des questions en langage naturel et de récupérer des insights régis directement dans les outils qu'ils utilisent déjà.
Genie est conçu pour accompagner les utilisateurs où qu'ils travaillent. Dans ce blog, nous avons vu comment les organisations intègrent en toute sécurité les capacités d'analytique conversationnelle de Genie dans Microsoft Teams et les applications personnalisées avec l'authentification OAuth.
En intégrant Genie partout où vos équipes posent des questions, vous raccourcissez le chemin de la question à l'insight, et de l'insight à l'action. Commencez à créer des espaces Genie et à les proposer à vos utilisateurs dès aujourd'hui. Comme toujours, contactez vos équipes de compte Databricks pour toute question ou tout commentaire.
(Cet article de blog a été traduit à l'aide d'outils basés sur l'intelligence artificielle) Article original
Produto
June 12, 2024/11 min de leitura

