Dans la plupart des organisations, on s'attend de plus en plus à ce que n'importe qui puisse poser des questions sur ses données en langage naturel et recevoir instantanément des réponses précises. Les grands modèles de langage ne sont pas conçus uniquement à cette fin ; ils ne comprennent pas les acronymes internes, les métriques personnalisées ou la manière dont les entités commerciales sont liées les unes aux autres. Sans ce contexte, même les questions simples peuvent donner des résultats trompeurs.
L'implémentation des meilleures pratiques d'analytique en libre-service transforme la façon dont les organisations effectuent des query sur les données. Databricks AI/BI Genie comble cette lacune en combinant des modèles de langage avec des données gouvernées et une configuration explicite sur la Databricks Platform. Un Genie Space est l'endroit où vous encodez la logique, le vocabulaire et les règles de votre organisation afin que les questions en langage naturel se traduisent en queries correctes.
La construction d'un Genie Space fiable ne se résume pas à pointer une IA sur une base de données. Cela nécessite une préparation minutieuse en matière de modélisation des données, de métadonnées et de validation continue. Ce guide propose une approche pratique, étape par étape, pour effectuer ce travail de manière évolutive.
La qualité d'un Genie Space dépend fortement de la qualité des données sous-jacentes. Lorsque les données sont déjà organisées et cohérentes, le job de Genie devient plus simple, plus rapide et plus précis. L'objectif est d'exposer des données organisées auxquelles un analyste humain ferait confiance sans nettoyage supplémentaire.
Les vues de métriques jouent un rôle clé pour garantir la cohérence des définitions entre les équipes. Elles vous permettent d'encoder la logique métier partagée, telle que le calcul du chiffre d'affaires ou des utilisateurs actifs, en un seul endroit. Genie hérite automatiquement de ces définitions, ce qui garantit que chaque query s'appuie sur la même logique approuvée. Cela élimine toute ambiguïté et garantit une source unique de vérité.
Avant de configurer des métadonnées ou des exemples SQL, vous devez définir ce qu'est la réussite. Un Espace Genie ne doit pas seulement répondre aux questions, mais y répondre correctement, de manière cohérente et dans le format attendu. Les benchmarks rendent cela mesurable.
En utilisant l'outil de benchmarking, vous pouvez réexécuter votre ensemble de queries courantes via un processus automatisé. Cela fournit un système cohérent et reproductible pour évaluer l'état de votre Genie Space à chaque étape, vous permettant de mesurer les progrès et de repérer rapidement les régressions.
Avec une base de données solide, vous devez maintenant enseigner à Genie le contexte et les règles spécifiques de votre organisation. Cela implique trois couches de configuration distinctes : l'enrichissement des métadonnées, la définition des relations et la codification des modèles SQL.
created_at ou status est vague, ajoutez une description pour spécifier exactement ce qu'il représente (par ex., « L'horodatage de la commande, en UTC »).Les instructions générales fournissent un contexte de haut niveau, mais elles doivent être utilisées avec parcimonie. Elles sont moins précises que les métadonnées ou les exemples SQL et ne doivent jamais être utilisées pour compenser une configuration manquante ailleurs.
Avant d'ajouter une instruction générale, vérifiez si le problème peut être résolu à l'aide de descriptions de table, de métadonnées de champ, de jointures, de valeurs d'exemple ou de requêtes d'exemple. N'utilisez les instructions générales que si aucun des outils spécifiques ne s'applique.
Les instructions efficaces décrivent le récit commercial en langage simple. Elles expliquent les entités clés, les cycles de vie et les relations sans dicter de comportement SQL spécifique. Évitez les instructions qui forcent la sélection de tables, codent en dur des filtres ou spécifient le formatage de sortie.
Utilisez la matrice de décision ci-dessous pour diagnostiquer les problèmes courants. Avant d'ajouter une instruction générale, vérifiez que vous avez comblé la lacune à l'aide des principaux outils de configuration :
| Zone de lacune / Problème identifié | Première fonctionnalité à vérifier et à modifier |
|---|---|
| Genie n'utilise pas la bonne table. | Descriptions des tables : avez-vous clairement expliqué à quoi sert chaque table et quand elle doit être utilisée ? |
| Genie n'utilise pas le bon champ pour un filtre, une agrégation ou un calcul. | Descriptions et synonymes des champs : Le champ dispose-t-il de synonymes clairs pour les termes de l'organisation ? Son objectif est-il bien décrit ? |
| Genie ne parvient pas à faire correspondre une entrée utilisateur à une valeur spécifique dans les données (p. ex., mapper "Australia" sur "AUS"). | Exemples de valeurs / Dictionnaires de valeurs : ces fonctionnalités sont-elles activées pour les champs pertinents afin de donner à Genie un contexte sur le contenu de la colonne ? |
| Genie crée des jointures incorrectes ou ne parvient pas à joindre les tables. | Tab Jointures : avez-vous explicitement défini la relation et sa cardinalité (par ex., un à plusieurs) ? |
| La logique de la requête est erronée, ou le format de sortie (colonnes sélectionnées, alias) est incorrect. | Exemples de requêtes SQL : Avez-vous fourni un exemple complet et correct de la requête dont Genie peut s'inspirer comme modèle ? |
| Un calcul de base doit toujours être effectué d'une manière spécifique et immuable. | Fonctions SQL (UDF) : avez-vous encapsulé cette logique dans une fonction pour garantir qu'elle soit toujours appliquée correctement et de manière cohérente ? |
Cette section est l'occasion de parler à Genie en termes généraux et conceptuels.
Les instructions générales les plus efficaces fournissent un récit global et lisible par l'homme de l'ensemble du contexte organisationnel. Considérez cela comme la rédaction d'un résumé analytique ou d'un briefing de mission pour le Genie Space. C'est ici que vous expliquez l'objectif des données, que vous définissez les entités clés et que vous décrivez leurs relations en langage clair.
Ce contexte devrait guider Genie vers les bons modèles comportementaux sans dicter de commandes SQL spécifiques. Il comble les lacunes conceptuelles qui subsistent après que tous les outils plus spécifiques ont été utilisés.
Voici un exemple comparatif d'une instruction de haut niveau qui présente le contexte d'un dataset sur le cashback et les transactions :
| Bonnes instructions générales | Mauvaises instructions générales | |
|---|---|---|
Ceci couvre l'analyse des transactions et des récompenses de cashback attribuées aux consommateurs pour avoir effectué des achats auprès des marchands concernés.Les clients reçoivent du cash-back sur leurs achats lorsqu'ils effectuent des achats auprès de fournisseurs donnés. Un seul client peut effectuer plusieurs achats auprès de plusieurs fournisseurs. Un client a des informations de compte et démographiques associées. Un client doit être accepté sur la plateforme pour recevoir du cash-back sur ses achats.Un marchand aura un secteur d'activité et un taux de cash-back de base associés. Un seul marchand peut avoir plusieurs clients, chacun effectuant plusieurs achats.Une transaction aura des informations associées sur la progression de l'achat et du traitement interne. Une transaction passera de l'état « en attente » à « rejetée » ou « approuvée ». Chaque transaction individuelle aura un seul client et un seul fournisseur associés. | ** CRITICAL: ALWAYS JOIN LOWER(merchants.id) = LOWER(transactions.merchant_id) **1ACRONYMS:MAU : Monthly active users AU : Activated usersCB : Cash back2Si 'rejected' n'est pas spécifié comme condition, veuillez utiliser uniquement 'approved'. Idem pour 'accepted'.3Utilisez ces définitions de plage de trimestres fiscaux pour les dates q1 : July–September (E.g., fy-2024 q1 = Jul–Sep 2023) q2: October–December (E.g., fy-2024 q2 = Oct–Dec 2023) q3: January–March (E.g., fy-2024 q3 = Jan–Mar 2024) q4: April–June (E.g., fy-2024 q4 = Apr–Jun 2024)4Pour le pourcentage de cash back, il est défini comme sum(cash_back) / sum(purchase_amount)5Always exclude merchants.status = ‘deactivated’6 | 1Cette jointure devrait être traitée dans la section Jointures, plutôt que dans les instructions générales. La condition de jointure clé devrait être définie lors de la modélisation des données.2Les acronymes devraient être inclus dans les descriptions de champs et les synonymes lorsqu'ils sont pertinents. Ceux-ci n'ont pas non plus de contexte quant à ce à quoi ils s'appliquent ou ce qu'ils représentent.3On ne sait pas clairement à quelles colonnes ces règles s'appliquent, ni dans quelles conditions. Il serait presque certainement préférable de les reformuler entièrement en tant que métriques ou, au minimum, de les indiquer dans les descriptions des colonnes elles-mêmes.4Il devrait plutôt s'agir de champs d'ingénierie dans les données sous-jacentes, afin de supprimer toute ambiguïté ou responsabilité des requêtes générées. Ce serait un cas d'utilisation bien adapté pour une dimension dans une vue de métrique.5Celles-ci devraient être fournies en tant que mesures dans une vue de métrique. Au minimum, elles devraient être couvertes en tant que requêtes d'exemple.6Cette exclusion devrait être effectuée au niveau de l'ingénierie des données, plutôt que comme une condition à toujours ajouter aux requêtes générées. |
Les instructions inefficaces tentent de faire le job d'un outil plus spécifique. Elles sont souvent trop rigides et indiquent à Genie comment écrire une query, ce qui peut le dérouter ou entrer en conflit avec le contexte qu'il a appris d'autres zones de configuration. Évitez les instructions qui :
Le lancement d'un Genie Space n'est pas la fin du projet ; c'est le début d'un outil analytique vivant et évolutif. Les Genie Spaces les plus performants sont ceux qui sont activement surveillés, maintenus et améliorés en partenariat avec les utilisateurs qu'ils servent. Cette dernière étape transforme votre Genie Space d'une configuration statique en un asset dynamique qui s'adapte aux besoins changeants de votre organisation.
Votre meilleure source d'informations pour améliorer votre Genie Space sont vos utilisateurs experts. Responsabilisez un petit groupe de PME pour qu'ils agissent en tant que champions et donnez-leur un accès direct. Encouragez-les à utiliser les outils de feedback intégrés, en marquant les réponses comme "Bon" ou "Mauvais".
Cela crée une boucle de rétroaction puissante et continue. Lorsqu'un SME travaille avec Genie pour affiner une question et parvenir à une réponse correcte, cette interaction est une précieuse opportunité d'apprentissage. Capturez leur finale « bonne » query et la question d'origine, et ajoutez-les à vos Example Queries. Ce processus d'amélioration itérative, guidé par l'utilisation en conditions réelles, est le moyen le plus efficace d'améliorer la précision et la pertinence de votre Espace au fil du temps.
L'onglet monitoring est votre ligne de vue directe sur la façon dont les utilisateurs interagissent avec vos données. L'examen régulier de ce tableau de bord fournit des insights précieux sur le comportement des utilisateurs et vous aide à identifier les domaines à améliorer. Rechercher :
Ces données fournissent un guide clair et fondé sur des preuves pour orienter vos efforts, qu'il s'agisse d'ajouter de nouvelles métadonnées, d'affiner les jointures, de créer des exemples de requêtes plus ciblés ou d'ajuster les instructions générales pour mieux répondre aux besoins de vos utilisateurs.
À mesure que vous apportez des améliorations et que vos données évoluent, votre suite de benchmarks devient votre principal outil d'assurance qualité et de test de régression. Toute modification importante apportée au Genie Space — comme l'ajout d'une nouvelle source de données — doit être immédiatement suivie d'une exécution de référence.
C'est le moyen le plus rapide et le plus fiable de vérifier si un changement a eu un impact positif ou négatif. Si vous constatez une baisse de performance, les résultats du benchmark vous indiqueront exactement quelles requêtes ont régressé, ce qui vous permettra d'identifier la source de la nouvelle ambiguïté et de la résoudre rapidement. Cette approche disciplinée garantit qu'au fur et à mesure que votre Genie Space se développe, sa qualité et sa fiabilité restent constamment élevées.
La création d'un Genie Space très performant est le produit d'un perfectionnement continu, et non d'une configuration unique. N'essayez pas de cartographier l'ensemble de votre patrimoine de données en une seule fois. Sélectionnez plutôt un seul cas d'utilisation à forte valeur ajoutée, tel qu'un tableau de bord des ventes spécifique ou un rapport opérationnel, et appliquez cette méthodologie.
Start par concevoir un segment de données propre, puis établissez immédiatement vos questions de référence « idéales ». Utilisez les échecs de ce benchmark initial pour guider votre configuration des métadonnées et de la logique SQL. En vous concentrant sur cette boucle itérative (tester, configurer, vérifier), vous créerez un système auquel les utilisateurs font confiance. Cette approche disciplinée offre des capacités de libre-service immédiates.
Pour commencer à utiliser Genie dans leur workspace
https://docs.databricks.com/aws/en/genie/set-up
https://learn.microsoft.com/en-gb/azure/databricks/genie/set-up
https://docs.databricks.com/gcp/en/genie/set-up
(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

