Structure professionnelle des répertoires d’un projet d’IA
Organisation data/, notebooks/, src/, models/, tests/ et modèle cookiecutter-data-science.
Structure professionnelle des répertoires d’un projet d’IA est une leçon Learn AI with Python gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn AI with Python, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn AI with Python comprend 4 leçons au total.
Pourquoi la structure est importante
Un amas de carnets nommés final.ipynb, final2.ipynb et really_final.ipynb, c’est ainsi que meurent les projets d’IA. Une structure de répertoires cohérente rend les projets lisibles, reproductibles et adaptés au travail en équipe.
Cette leçon présente l’organisation largement utilisée de Cookiecutter Data Science.
Le dossier data
Séparez les données selon leur étape de traitement afin que les données brutes ne soient jamais écrasées :
data/raw/— données sources originales et immuablesdata/processed/— données nettoyées, prêtes pour le modèledata/interim/— transformations intermédiaires
Traitez data/raw comme un dossier en lecture seule : vous devriez toujours pouvoir tout régénérer à partir de celui-ci.
Pourquoi les données brutes sont immuables
Si une erreur de nettoyage corrompt votre seule copie des données, le projet est compromis. Conserver data/raw intact signifie que chaque fichier traité peut être reproduit en réexécutant votre chaîne de traitement.
Les sorties traitées sont remplaçables ; les données brutes doivent être préservées.
Le dossier notebooks
notebooks/ contient les carnets d’exploration et de création de rapports. Une convention courante consiste à les numéroter selon l’étape et à ajouter les initiales, par exemple 1.0-mk-eda.ipynb.
Les carnets servent à l’exploration ; la logique réutilisable doit être déplacée vers src/.
Le paquet src
src/ contient le code Python importable, réparti par responsabilité :
src/data/— scripts de chargement et de traitementsrc/features/— ingénierie des variablessrc/models/— code d’entraînement et de prédictionsrc/visualization/— graphiques et rapports
src/features et src/models
Séparer l’ingénierie des variables et la modélisation dans des modules distincts est avantageux : vous pouvez tester unitairement le code des variables, le réutiliser dans plusieurs carnets et changer de modèle sans réécrire la préparation des données.
from src.features.build_features import make_features
from src.models.train import train_model
X = make_features(df)
model = train_model(X, y)Le dossier models
models/ stocke les artefacts entraînés sérialisés (par exemple model.pkl, model.joblib). Il s’agit de sorties, et non de code source.
Les fichiers de modèles volumineux ne devraient généralement pas être ajoutés à Git — suivez-les avec DVC ou un stockage d’objets à la place (ce point sera abordé dans la prochaine leçon).
Le dossier reports
reports/ contient les sorties générées pour les utilisateurs : reports/figures/ pour les graphiques et un document de rapport à la racine. Ces éléments sont produits par votre code et peuvent donc être régénérés.
Fichiers de configuration et d’environnement
Complétez le projet avec des fichiers au niveau du projet :
requirements.txtouenvironment.yml— dépendancesconfig.yaml— hyperparamètres et cheminsREADME.md— présentation du projet et instructions d’exécution.gitignore— éléments que Git doit ignorer
L’organisation complète
Une fois tous les éléments réunis, voici à quoi ressemble un projet d’IA bien organisé :
project/
data/
raw/
interim/
processed/
notebooks/
src/
data/
features/
models/
visualization/
models/
reports/
figures/
config.yaml
requirements.txt
README.mdLa générer avec Cookiecutter
Vous ne construisez pas cette structure manuellement à chaque fois. Le modèle cookiecutter-data-science génère toute l’arborescence en une seule commande.
# pip install cookiecutter
# cookiecutter -c v1 https://github.com/drivendata/cookiecutter-data-science
# Answer a few prompts -> full project tree createdVérification rapide : où placer les données brutes ?
Vous téléchargez un fichier CSV original auprès d’un fournisseur de données.
Récapitulatif : structure du projet
Vous avez appris l’organisation professionnelle d’un projet d’IA :
data/raw(immuable), etdata/processedpour les différentes étapesnotebooks/pour l’exploration,src/featuresetsrc/modelspour le code réutilisablemodels/pour les artefacts,reports/pour les sorties- La configuration, les dépendances, README et .gitignore à la racine
- cookiecutter-data-science pour générer instantanément cette structure
Ensuite : utiliser Git efficacement dans les projets d’IA.
Questions Fréquemment Posées
La leçon « Structure professionnelle des répertoires d’un projet d’IA » est-elle gratuite ?
Oui — le texte complet de « Structure professionnelle des répertoires d’un projet d’IA » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn AI with Python, passe à CoddyKit PRO. Le cours Learn AI with Python comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Structure professionnelle des répertoires d’un projet d’IA » ?
Organisation data/, notebooks/, src/, models/, tests/ et modèle cookiecutter-data-science. Tu pratiques Learn AI with Python avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Learn AI with Python ?
Aucune expérience préalable n'est requise. Learn AI with Python sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Structure professionnelle des répertoires d’un projet d’IA » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Learn AI with Python ?
Oui. Chaque leçon Learn AI with Python inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Structure professionnelle des répertoires d’un projet d’IA
- Git pour les projets d’IA
- Reproductibilité : graines, configurations et environnements
- Bonnes pratiques pour les notebooks Jupyter