Cas client phare
Iadvice
Une plateforme Text-to-SQL qui permet aux utilisateurs métier de dialoguer avec leurs données en langage naturel.
L'objectif n'était pas seulement de générer du SQL, mais de rendre l'accès aux données suffisamment fiable, guidé et utile pour des utilisateurs métier qui veulent décider sans dépendre en permanence d'une équipe technique.
Vue d’ensemble
Contexte
Freelance pour Circoe, cabinet de conseil en logistique
Période
2024-2025
Stack
Django · Docker · LLMs · PostgreSQL · Python · RAG · React · SQL
Publication
juin 2025

Mon rôle
Lead ML/Backend Engineer et lead technique
J'ai porté l'architecture et l'exécution de bout en bout : pipeline NLP, backend Django, infrastructure, déploiement, et coordination technique avec le frontend et le design.
Responsabilités principales
- Conception du pipeline NLP et du système de génération Text-to-SQL
- Architecture backend, schema applicatif et API Django REST
- Encadrement d'un freelance frontend avec revues de code et cadrage technique
- Collaboration avec la UI/UX designer pour transformer les maquettes en fonctionnalités utilisables
- Mise en place de l'infrastructure serveur, Docker et environnement de production
Points de preuve
Précision SQL
environ 95%
Temps de traitement
6 à 30 secondes de la question à la réponse enrichie
Cible utilisateur
managers et décideurs sans connaissance SQL
Configuration d'équipe
- ML/backend: moi
- Frontend: un développeur freelance supervisé
- Design: collaboration avec une UI/UX designer
Le problème à résoudre
Circoe voulait permettre à ses clients d'accéder à leurs données sans dépendre en permanence d'une équipe technique. Les utilisateurs métier devaient pouvoir poser des questions en langage naturel, obtenir des réponses fiables, configurer des alertes et construire des dashboards.
La vraie difficulté n'était pas seulement de générer du SQL. Il fallait rendre ce workflow suffisamment fiable, lisible et utile pour des utilisateurs non techniques, tout en conservant performance, sécurité et qualité des résultats.
Comment j'ai structure la solution
J'ai conçu une plateforme SaaS complète qui transforme une question en langage naturel en requête SQL exploitable grâce à un pipeline multi-étapes : filtrage du schéma, décomposition de question, génération incrémentale de SQL, puis mise en forme de la réponse avec visualisation.
Pour obtenir un niveau de fiabilité élevé, je me suis appuyé sur des techniques inspirées des meilleurs résultats du benchmark BIRD Text-to-SQL, avec prompting avancé, RAG via pgvector, et réutilisation de requêtes validées par les utilisateurs lorsque des cas similaires réapparaissent.
Le produit ne s'arrête pas à la génération SQL : il couvre aussi la connexion aux bases clientes, les dashboards, les alertes automatisées et une expérience suffisamment guidée pour rester accessible à des profils métier.
Captures
Défis qui ont structuré le projet
Fiabiliser la génération SQL
Problème
Le système devait produire des requêtes justes malgré des schémas parfois complexes, des logiques métier implicites et des formulations utilisateur très variées.
Solution
J'ai combiné filtrage du schéma, décomposition des questions, génération SQL par étapes et boucle d'apprentissage à partir des requêtes validées pour augmenter la précision sans sacrifier l'utilisabilité.
Rendre le produit utilisable par des non-techniciens
Problème
Une bonne démo ML ne suffit pas si les utilisateurs ne comprennent pas ce qui se passe ou n'ont pas confiance dans le résultat.
Solution
J'ai participé à la structuration d'un workflow progressif avec visualisations, dashboards, alertes, retours clairs et collaboration étroite avec le design pour rendre l'outil convaincant en usage réel.
Porter le projet de bout en bout
Problème
Le projet impliquait à la fois du ML, du backend, de l'infrastructure, et une coordination multi-profils pour arriver à une livraison cohérente.
Solution
J'ai pris en charge l'architecture globale, le backend, le déploiement et le lead technique du projet, en donnant un cadre clair au frontend et en gardant le produit aligné avec les besoins d'usage.
Résultats et impact
- Environ 95% de précision sur la génération SQL dans le cadre du projet
- Entre 6 et 30 secondes entre la question utilisateur et la réponse complète avec visualisation
- Une expérience orientée self-service analytics pour des profils sans expertise SQL
- Des alertes et dashboards qui réduisent la dépendance aux équipes techniques pour obtenir des réponses métier
- Une base produit réutilisable par Circoe pour plusieurs clients
Preuves visibles
La démo publique en ligne est temporairement indisponible (maintenance).