Agent IA — interrogation data warehouse
Agent IA agentique qui explore un data warehouse en langage naturel et répond aux questions business avec visualisations auto-générées.
- Période
- 2025 — présent
- Rôle
- Lead AI Engineer
- Contexte
- Meet My Mama
- Stack
- 8 technos
Le contexte
Les équipes ops, sales et finance demandaient quotidiennement des extractions SQL à l’équipe data (“CA du mois ?”, “Top 10 clients Q1 ?”, “Taux de churn par cohorte ?”). L’agent a été conçu pour leur donner un accès direct, autonome et fiable au data warehouse — en langage naturel.
Ce que fait l’agent
Un agent IA agentique : le LLM n’a pas simplement accès au schéma. Il raisonne en plusieurs étapes :
- Comprend la question business
- Explore le schéma de la base
- Échantillonne les données pour valider ses hypothèses
- Écrit le SQL
- Génère la visualisation appropriée (KPI, line chart, bar chart…)
- Propose des questions de follow-up
Architecture
┌─────────────────────────────────────────────────────────────┐
│ Frontend (React + Vite) │
│ · ChatView avec animation "agent thinking" │
│ · Typeahead IA · Génération de follow-ups │
└─────────────────────────┬───────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────────────┐
│ Supabase Edge Functions (Deno) │
│ · data-chat — agent principal + tool calling │
│ · suggest-questions — suggestions IA │
│ · generate-title — titres de conversation │
└─────────────────────────┬───────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────────────┐
│ OpenRouter API │
│ Primary: deepseek-chat (excellent SQL, peu cher) │
│ Fallback: gemini-2.5-flash │
└─────────────────────────────────────────────────────────────┘
Caractéristiques techniques
Tool calling MCP-like
6 outils exposés au LLM : list_tables, describe_table, sample_rows, execute_sql, save_chart, validate_query. L’agent choisit lui-même la séquence d’appels.
Multi-agent router
Le routeur classifie la requête entrante et la dispatche vers le bon agent (data warehouse vs questions sur les outils internes).
Système d’apprentissage
Les requêtes validées par les utilisateurs sont stockées et injectées en few-shot pour améliorer la précision sur des questions similaires.
Bot Slack
L’agent répond aussi directement dans Slack avec gestion de clarifications (l’agent pose une question quand la demande est ambiguë).
Aperçu en action
L’agent renvoie systématiquement la donnée brute (table exportable en CSV) et une visualisation (KPI / chart) générée automatiquement. L’utilisateur peut valider ou rejeter la réponse — feedback qui alimente le système d’apprentissage.
Impact
- Time-to-answer divisé par ~10 pour les questions data récurrentes
- L’équipe data se concentre sur le data engineering, plus sur les extractions ad-hoc
- Adoption interne forte : utilisé quotidiennement par ops, sales, founders
Mon rôle
Conception bout-en-bout : architecture agent, prompt engineering, edge functions, intégration Slack, UI React, multi-agent routing.