Partir d'une base fiable, sans IA. J'ai d'abord construit une base interrogeable directement en SQL : on pose une question en SQL, la base répond. Le chiffre est toujours exact, puisqu'il vient de la donnée brute.
Traduire le français en SQL. J'ai ensuite écrit un programme Python qui fait le pont : on tape une question en français, il la reconnaît et la traduit en requête SQL. Il sait qu'une formulation donnée correspond à une requête donnée.
Utiliser l'IA pour entraîner, pas pour répondre. Ma première version laissait un modèle de langage répondre directement, au risque d'inventer des chiffres. J'ai changé d'approche : l'IA m'a servi à entraîner la traduction à reconnaître une même question formulée de très nombreuses façons. Elle intervient à la construction, jamais au moment de répondre. Résultat : aucun chiffre inventé. Ce que j'en retiens : savoir placer l'IA là où elle est utile, et l'écarter là où elle se trompe.
Tout reste sur l'ordinateur. L'outil interroge la base entièrement hors ligne : il fonctionne même en mode avion. Aucune IA en ligne, aucun service extérieur, aucune donnée envoyée. Pour une entreprise qui manipule des données sensibles, c'est un enjeu de sécurité majeur : les données restent sur ses propres serveurs, et rien n'est confié à un outil extérieur. Autre conséquence : aucun coût à l'usage et aucune dépendance à un fournisseur d'IA ou à un agent extérieur, puisque tout tourne en local.
Mesurer la fiabilité de chaque réponse. L'outil sépare deux choses : la donnée, toujours exacte, et son interprétation de la question, qui peut être imparfaite. Il reformule donc la question telle qu'il l'a comprise, affiche un indicateur de fiabilité et liste les hypothèses retenues, par exemple : « départ ou arrivée non précisé : arrivée retenue ». Quand la question est trop floue, il demande une précision au lieu de deviner.
Une démarche testée. J'ai écrit des questions de référence avant de construire l'outil, et il est vérifié automatiquement à chaque modification. Rien ne change sans être repassé au crible.