Thanks to visit codestin.com
Credit goes to github.com

Skip to content

derfoj/Af_advisory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AF-Advisory : Assistant Natural Language to SQL (NL2SQL)

AF-Advisory est une application intelligente qui permet aux utilisateurs d'analyser leurs données (CSV, Excel) en posant simplement des questions en langage naturel. Fini le SQL complexe : l'IA génère, corrige et exécute les requêtes pour vous, et vous explique même les résultats !

🎥 Voir la vidéo de présentation

✨ Fonctionnalités Clés

  • 🗣️ Langage Naturel vers SQL (NL2SQL) : Posez vos questions en français ou en anglais ("Quelle est la moyenne des ventes ?", "Top 5 products by revenue").
  • 🧠 Synthèse Intelligente : Non seulement vous obtenez les données, mais l'IA génère une explication textuelle claire des résultats.
  • 📊 Visualisation Automatique : Si les données s'y prêtent (ex: catégories + valeurs), un graphique est généré automatiquement.
  • ⚡ Performance Optimisée : Conversion ultra-rapide des fichiers CSV/Excel vers SQLite pour manipuler de gros volumes de données.
  • 🎨 Interface Premium : Une UI moderne (React + Tailwind) avec mode "Thought Process" pour voir comment l'IA réfléchit (SQL généré).

🛠️ Stack Technique

Backend (Python)

  • FastAPI : API haute performance.
  • LangChain : Orchestration du flux LLM (Question -> SQL -> Résultat -> Explication).
  • Pandas & SQLite : Traitement et stockage efficace des données.
  • Pydantic : Validation robuste des données.

Frontend (React)

  • Vite : Build tool ultra-rapide.
  • Tailwind CSS : Styling moderne et responsive.
  • Recharts : Bibliothèque de graphiques.
  • Lucide React : Icônes élégantes.
  • Sonner : Notifications Toast.

🚀 Installation et Démarrage

Prérequis

  • Python 3.9+
  • Node.js 18+
  • Une clé API OpenAI (ou autre fournisseur compatible).

1. Installation du Backend

cd backend
# Créer un environnement virtuel
python -m venv .venv

# Activer l'environnement
# Windows :
.venv\Scripts\activate
# Mac/Linux :
source .venv/bin/activate

# Installer les dépendances
pip install -r requirements.txt

# Configurer la clé API
# Créez un fichier .env dans backend/ et ajoutez :
# OPENAI_API_KEY=votre_cle_api

Pour lancer le serveur :

uvicorn main:app --reload

L'API sera accessible sur http://localhost:8000.

2. Installation du Frontend

cd frontend
npm install

Pour lancer l'interface :

npm run dev

L'application sera accessible sur http://localhost:5173.

� Structure du Projet

af-advisory/
├── backend/
│   ├── config/             # Configuration LLM (prompts, providers)
│   ├── databases/          # Bases SQLite générées (ignorées par git)
│   ├── src/
│   │   ├── api/            # Routes FastAPI (upload, query, data)
│   │   ├── text_to_sql/    # Moteur NL2SQL (LangChain logic)
│   │   └── utils/          # Convertisseurs et validateurs
│   └── main.py             # Point d'entrée
│
└── frontend/
    ├── src/
    │   ├── components/     # Composants React (Chat, Sidebar, Charts...)
    │   └── App.jsx         # Logique principale
    └── index.html

🛡️ Sécurité

Le système inclut un validateur SQL qui bloque strictement les opérations dangereuses (DROP, DELETE, INSERT, etc.) pour garantir que vos données restent en lecture seule.

About

intelligent natural language database query assistant for the clinic class

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors