Et si interroger sa base de données était aussi simple que poser une question à ChatGPT ? L'accès aux données et leur analyse sont des éléments essentiels à la réussite de toute entreprise. Cependant, l'exploitation efficace des données est souvent freinée par la nécessité de posséder des compétences techniques pointues, notamment en SQL ou en BI, et une compréhension approfondie du schéma de données de l’entreprise. Cette barrière technique limite l'accès à l'information pour une grande majorité d'employés, créant ainsi un goulot d'étranglement dans certains processus décisionnels.
L’intérêt pour les interfaces IA accessibles et simples est croissant. Nous pouvons imaginer un monde où les bases de données d’entreprise ne sont pas uniquement accessibles à une fraction limitée des employés mais à toute personne via une simple expérience conversationnelle comme avec ChatGPT.
Ainsi ce cas d’usage souhaite répondre à deux objectifs principaux :
Ces objectifs s’accompagnent d’une priorité essentielle : garantir une exploitation sécurisée et fiable de la base de données, assurant ainsi la protection des informations sensibles.
Le Benchmark BIRD, publié en 2023, s'intéresse à l’évaluation de la performance de l’IA sur les tâches text-to-SQL. Cela renvoie à la capacité d’un modèle IA à traduire une question formulée en langage naturel en requête SQL fiable et correcte permettant d’interagir informatiquement avec sa base de données.
La base de données BIRD centralise 95 autres bases de données (33.4 Go) issues de 37 domaines professionnels différents (représentés ci-dessous). Elle dispose de 12751 paires de questions-réponses : chaque question formulée en langage naturel est dotée de sa réponse associée exprimée en langage SQL.
Le benchmark BIRD se distingue par sa pertinence, car il reflète une complexité et une qualité de données proches de celles rencontrées dans une véritable entreprise. Il offre ainsi un cadre réaliste pour évaluer les performances. À titre de référence, la performance humaine sur ce benchmark, atteinte par des data engineers, est de 92,9 %.
Ci dessous les performance de l’IA sur ce benchmark au moment de la rédaction de l’article :
Depuis 2023, une véritable course s’est engagée pour égaler les performances humaines, mais malgré des avancées spectaculaires dans le domaine des LLM, les chercheurs en IA n’ont pas encore réussi à atteindre ce niveau.
Si vous souhaitez découvrir l'approche technique adoptée par l'une des équipes lauréates, vous trouverez davantage de détails dans les références citées dans cet article.
Guidés par une envie d’explorer ce cas d’usage innovants, une équipe de l’Aqsone Lab s’est formée pour mener une série d'expérimentations. Son objectif : évaluer la faisabilité de l'exploration conversationnelle des données en s'appuyant sur les solutions et approches existantes, sans toutefois participer directement au benchmark BIRD.
Voici les étapes clés de notre démarche :
Nous avons passé en revue les solutions existantes, qu'il s'agisse d'outils sur étagère comme DataGPT et DataChat ou d'approches techniques telles que la génération de code SQL à partir du langage naturel (text-to-SQL) ou la génération de code Python à partir de langage naturel.
L'évaluation qualitative s'est appuyée sur une série de critères, notamment le fonctionnement, le coût, la confidentialité des données, la compatibilité avec des bases de données multi-tables, la simplicité d'utilisation, la capacité à générer des visualisations de données et l'expérience conversationnelle globale.
Notre analyse a mis en lumière des limites majeures de certains outils existants, notamment en termes de transparence sur leur fonctionnement (et prix), la qualité de leur documentation, les garanties sur la confidentialité et la sécurité des données, ainsi que de leur capacité à gérer des bases de données multi-tables.
Pour refléter au mieux les données d'entreprise réelles, nous avons généré une base de données d'achat SAP. Ce jeu de données, conçu pour être accessible et compréhensible par un acheteur standard, a été utilisé comme base pour nos expérimentations.
Un jeu de données d’évaluation est également créé. Il est composé de 30 séries de questions réponses : une question formulée en langage naturel et une réponse en SQL.
Nous avons mis en œuvre et testé trois différentes approches basées sur des LLM et des frameworks existants, tels que PandasAI, LangChain, LamaIndex et Vanna AI : ces outils ont l’avantage d’être déjà préconfigurés pour répondre à notre cas d’usage. Par conséquent, ils nécessitent très peu de personnalisation.
Le score “Execution Accuracy” est calculé sur la base du jeu de données d’évaluation initialement créé. Ce score permet de comparer les résultats d'exécution de la requête SQL de vérité et de la requête SQL prédite sur le contenu de la base de données. Voici les résultats obtenus :
Ainsi, on conclut que l’utilisation d’un modèle de langage plus récent (GPT-4) combiné avec une approche Agent utilisant les métadonnées et des few shots, ou avec une approche Langchain chain native, permettent d’avoir les meilleurs résultats sur notre jeu de données composés de 30 questions réponses.
Pour faciliter l'interaction avec le LLM et la base de données, nous avons conçu une interface utilisateur dédiée basée sur Streamlit.
Nous avons intégré une fonctionnalité permettant de visualiser la requête SQL utilisée pour répondre à une question. Voici un exemple :
Nos expérimentations ont démontré le potentiel prometteur des LLM pour faciliter l'accès aux données en entreprise. Les approches basées sur les chaînes ou sur les agents se sont distinguées par leurs performances, atteignant une précision d'exécution de 70% sur notre jeu de données expérimental. Avec l'utilisation de GPT-4, ces approches ont témoigné d’une impressionnante connaissance native des données SAP et peuvent offrir un niveau satisfaisant d'explicabilité grâce à l'affichage des requêtes SQL générées.
Ces résultats nous encouragent à croire que l'IA pourrait bientôt surpasser les experts en analyse de données en termes de rapidité et d'efficacité, plus précisément dans le domaine Text-to-SQL. L'existence du benchmark BIRD, dédié à l'évaluation des performances des IA sur des tâches text-to-SQL, constitue un atout majeur pour suivre les progrès et établir des standards de performance sur ce cas d’usage.
Malgré ces avancées prometteuses, voici les trois défis principaux qui restent à relever :
Pour y remédier voici les solutions possibles :
L’interaction avec l’outil doit être intuitive comme avec ChatGPT. Voici les meilleures pratiques :
Il est crucial de garantir des interactions sécurisées surtout à une époque où les données, souvent sensibles, jouent un rôle central dans les décisions. L’utilisation d’API externes, comme celle d’OpenAI, soulève des préoccupations légitimes concernant la sécurité et la confidentialité des données. Il est donc indispensable de mettre en place des solutions robustes pour protéger ces informations sensibles :
L'utilisation des LLM pour l'exploration conversationnelle des données est une innovation majeure qui pourrait transformer la façon dont les entreprises utilisent et exploitent leurs données. Les progrès accomplis à ce jour sont encourageants et ouvrent la voie à un avenir passionnant.