Tutoriel du projet AliceMind (version open source)

L’organisation des répertoires dans le projet AliceMind reflète la séparaiton des responsabilités. Exemple type :

AliceMind_Project/
├── README.md
├── requirements.txt
├── modules/
│   ├── core/
│   │   ├── model_core.py
│   │   └── components/
│   │       ├── encoder.py
│   │       └── decoder.py
│   ├── data_pipeline/
│   │   ├── loader.py
│   │   └── preprocessor.py
│   ├── training_loop/
│   │   ├── trainer.py
│   │   └── scheduler.py
│   └── inference/
│       └── predictor.py
├── config/
│   └── base.yml
└── scripts/
    ├── run_train.bash
    └── run_infer.bash

  • README.md : documentation d’introduction et guide de démarrage.
  • requirements.txt : dépendances Python nécessaires.
  • modules/ : code source principal, subdivisé en sous-modules (modèle, données, entraînement, inférence).
  • config/ : fichiers YAML paramétrant le comportement.
  • scripts/ : scripts shell pour lancer les tâches.

2. Fichier de lancement principal

Les points d’entrée sont situés dans le dossier scripts/. Par exemple :

run_train.bash pourrait contenir :

#!/bin/bash
python -m modules.training_loop.trainer --config_file=config/base.yml --log_dir=logs/experiment_1

Ce script charge le module trainer, utilise le fichier de configuraton config/base.yml et stocke les logs dans logs/experiment_1.

Pour l’inférence, run_infer.bash :

#!/bin/bash
python -m modules.inference.predictor --model_path=models/model_final.pt --config_file=config/base.yml

Il exécute le prédicteur en chargeent les poids du modèle final et le fichier de config.

3. Fichier de configuration

La configuration se trouve généralement dans config/base.yml. Exemple simplifié :

model:
  architecture: transformer
  hyperparameters:
    learning_rate: 0.001
    hidden_dim: 512

data:
  train_source: data/part1.train.txt
  val_source: data/part1.val.txt

train:
  max_epochs: 10
  batch_size: 32
  optimizer: AdamW

inference:
  input: data/test_sequences.txt
  output: results/predictions.txt

  • model : architecture et hyperparamètres.
  • data : chemins des fichiers d’entraînement et de validation.
  • train : paramètres d’entraînement (nombre d’époques, taille de lot, optimiseur).
  • inference : fichiers d’entrée et de sortie pour la prédiction.

Modifier ce fichier YAML permet d’ajuster le comportement du projet sans toucher au code source.

Remarque : les exemples ci-dessus sont adaptés d’une structure courante de projet open source. Pour des détails précis, consulter le dépôt officiel du projet AliceMind.

Étiquettes: AliceMind Open Source projet tutoriel structure de fichiers configuration YAML

Publié le 17 juin à 16h23