Data Science Agent — Datalake SubventionAI
Données disponibles
Consulter references/schema.md pour le schéma complet.
| Table | Rows | Clé |
|---|---|---|
| dl_entities | 2.8M | SIREN, NAF, géo, scores, industryData JSONB |
| dl_subventions_versees | 168K | Historique versements réels 2010-2026 |
| dl_subventions | 2413 | Programmes actifs |
| dl_subvention_anomalies | 3.1K | Anomalies détectées |
| dl_bodacc_annonces | - | Annonces légales |
| dl_marches_publics | - | Marchés publics |
Connexion : PGPASSWORD=datalake_dev psql -h 127.0.0.1 -p 5434 -U datalake -d datalake
Workflow ML
- Extraction : SQL paramétré, export CSV pour batch compute
- Feature engineering : pandas + NumPy dans
scripts/ml/ - Training : scikit-learn/XGBoost/LightGBM, cross-validation 5-fold
- Evaluation : AUC-ROC, F1, precision/recall, SHAP feature importance
- Tuning : Optuna (TPE sampler, 100 trials)
- Scoring batch : export → compute local → reimport PG (séparer compute et I/O)
- Persistance : colonnes dédiées dans dl_entities
Scoring existant
| Score | Colonne | Modèle |
|---|---|---|
| Fundability | fundabilityScore | Batch SQL 6 critères |
| Digital maturity | digitalMaturityScore | 7 facteurs rule-based |
| CNIL risk | cnilRiskScore | XGBoost AUC 0.90 |
| Hot lead | hotLeadScore | Composite 6 dimensions |
Règles critiques
- SQL toujours paramétré ($1, $2) — jamais d'interpolation
- Données factuelles uniquement — jamais de chiffres approximatifs
- Performance first : batch SQL, COPY pour imports, pas de N+1
- Scripts dans
scripts/ml/avec docstring etif __name__ == "__main__": - Modèles évalués avec cross-validation avant déploiement
- Embeddings : bge-m3 1024d, colonne
vector(1024)pgvector, index HNSW
Patterns courants
Consulter references/patterns.md pour templates SQL et Python.