Download demo/configs/tutorial_smoke.yaml from OneScience-Group/NequIP: direct link, hf CLI and curl.
- Browser
- Download file 3.61 kB
-
https://huggingface.co/OneScience-Group/NequIP/resolve/main/demo/configs/tutorial_smoke.yaml
- Command line
-
hf download hf://OneScience-Group/NequIP/demo/configs/tutorial_smoke.yaml
-
curl -L -o tutorial_smoke.yaml https://huggingface.co/OneScience-Group/NequIP/resolve/main/demo/configs/tutorial_smoke.yaml
3.61 kB
| # yamllint disable rule:line-length | |
| # Smoke-test config for NequIP on OneScience. | |
| # This config uses a tiny synthetic Cu dataset and a small model to verify the | |
| # training pipeline (data loading, model build, forward, backward, checkpoint). | |
| run: [train, test] | |
| cutoff_radius: 4.0 | |
| num_layers: 2 | |
| l_max: 1 | |
| num_features: 8 | |
| model_type_names: [Cu] | |
| chemical_species: ${model_type_names} | |
| monitored_metric: val0_epoch/weighted_sum | |
| # ============ | |
| # DATA | |
| # ============ | |
| data: | |
| _target_: onescience.datapipes.materials.nequip.datamodule.ASEDataModule | |
| seed: 456 | |
| split_dataset: | |
| file_path: ${demo_dir:reference_data/smoke.xyz} | |
| train: 0.75 | |
| val: 0.125 | |
| test: 0.125 | |
| transforms: | |
| - _target_: onescience.datapipes.materials.nequip.transforms.ChemicalSpeciesToAtomTypeMapper | |
| model_type_names: ${model_type_names} | |
| - _target_: onescience.datapipes.materials.nequip.transforms.NeighborListTransform | |
| r_max: ${cutoff_radius} | |
| train_dataloader: | |
| _target_: torch.utils.data.DataLoader | |
| batch_size: 2 | |
| num_workers: 0 | |
| shuffle: true | |
| val_dataloader: | |
| _target_: torch.utils.data.DataLoader | |
| batch_size: 2 | |
| num_workers: 0 | |
| test_dataloader: ${data.val_dataloader} | |
| stats_manager: | |
| _target_: onescience.datapipes.materials.nequip.CommonDataStatisticsManager | |
| dataloader_kwargs: | |
| batch_size: 2 | |
| type_names: ${model_type_names} | |
| # ============= | |
| # TRAINER | |
| # ============= | |
| trainer: | |
| _target_: lightning.Trainer | |
| accelerator: gpu | |
| devices: 1 | |
| num_nodes: 1 | |
| enable_checkpointing: true | |
| max_epochs: 2 | |
| log_every_n_steps: 1 | |
| logger: false | |
| enable_progress_bar: true | |
| callbacks: | |
| - _target_: lightning.pytorch.callbacks.ModelCheckpoint | |
| monitor: ${monitored_metric} | |
| dirpath: ${hydra:runtime.output_dir}/checkpoints | |
| filename: best | |
| save_last: true | |
| # ===================== | |
| # TRAINING MODULE | |
| # ===================== | |
| training_module: | |
| _target_: onescience.utils.nequip.train.EMALightningModule | |
| ema_decay: 0.999 | |
| loss: | |
| _target_: onescience.utils.nequip.train.EnergyForceLoss | |
| per_atom_energy: true | |
| coeffs: | |
| total_energy: 1.0 | |
| forces: 1.0 | |
| val_metrics: | |
| _target_: onescience.utils.nequip.train.EnergyForceMetrics | |
| coeffs: | |
| total_energy_mae: 1.0 | |
| forces_mae: 1.0 | |
| train_metrics: ${training_module.val_metrics} | |
| test_metrics: ${training_module.val_metrics} | |
| optimizer: | |
| _target_: torch.optim.Adam | |
| lr: 0.01 | |
| lr_scheduler: | |
| scheduler: | |
| _target_: torch.optim.lr_scheduler.ReduceLROnPlateau | |
| factor: 0.6 | |
| patience: 5 | |
| threshold: 0.2 | |
| min_lr: 1e-6 | |
| monitor: ${monitored_metric} | |
| interval: epoch | |
| frequency: 1 | |
| model: | |
| _target_: onescience.models.nequip.model.NequIPGNNModel | |
| seed: 456 | |
| model_dtype: float32 | |
| type_names: ${model_type_names} | |
| r_max: ${cutoff_radius} | |
| num_bessels: 4 | |
| bessel_trainable: false | |
| polynomial_cutoff_p: 6 | |
| num_layers: ${num_layers} | |
| l_max: ${l_max} | |
| parity: false | |
| num_features: ${num_features} | |
| radial_mlp_depth: 1 | |
| radial_mlp_width: 16 | |
| avg_num_neighbors: ${training_data_stats:num_neighbors_mean} | |
| per_type_energy_scales: ${training_data_stats:per_type_forces_rms} | |
| per_type_energy_shifts: ${training_data_stats:per_atom_energy_mean} | |
| per_type_energy_scales_trainable: false | |
| per_type_energy_shifts_trainable: false | |
| # Slurm / launch metadata used by demo/run.sh | |
| name: nequip_smoke | |
| launch: | |
| mode: local | |
| num_nodes: 1 | |
| num_gpus: 1 | |
| slurm: | |
| partition: hx1hdnormal01 | |
| nodelist: a01r1n02 | |
| time: "00:10:00" | |
| cpus_per_task: 8 | |
| env: | |
| OMP_NUM_THREADS: 1 | |