Observed since 20 Oct, 21:22 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Atomistic Generative Diffusion software package
AGeDi (Atomistic Generative Diffusion) is a Python package for training and sampling diffusion models for atomistic structures. It is built around PyTorch, PyTorch Geometric, PyTorch Lightning, and ASE.
AGeDi pronounced "A Jedi" is a library for Atomistic Generative Diffusion built on PyG, Lightning and ASE and offers customizable diffusion models for periodic atomistic material generation.
agediAGeDi provides:
Atoms to graph data (AtomsGraph)Minimal install:
pip install "agedi @ git+https://github.com/nronne/agedi.git"
This installs the core package only. For the current release, training and sampling require PaiNN via SchNetPack:
pip install "agedi[full] @ git+https://github.com/nronne/agedi.git"
For contributors:
pip install -e ".[test,full]"
# Train (example: 3 hours, surface/slab system)
agedi train -t 3 --noisers ConfinedCellPositions --mask MaskFixed --confinement 2 10 PdO_training_data.traj
# Inspect saved hyperparameters
agedi inspect logs/version_0
# Sample structures
agedi sample logs/version_0 -f Pd2O2 --template_path template.traj --confinement 2 10
# Predict energies and forces (requires model trained with --force_field)
agedi predict logs/version_0 structures.traj
from ase.io import read
from agedi import train_from_atoms, sample, AtomsGraph
data = read("PdO_training_data.traj", ":")
diffusion, dataset, trainer = train_from_atoms(
data,
noisers=("Positions",),
style="surface",
mask="MaskFixed",
confinement=(2.0, 10.0),
max_time=3,
)
template = AtomsGraph.from_atoms(read("template.traj"), confinement=(2.0, 10.0))
structures = sample(diffusion, n_samples=8, formula="Pd2O2", template=template)
To additionally train a force-field and run predictions:
from ase.io import read, write
from agedi import train_from_atoms, load_diffusion, predict
data = read("PdO_training_data.traj", ":") # must contain forces and energy
diffusion, _, _ = train_from_atoms(data, noisers=("CellPositions",), force_field=True)
# Later, predict on new structures
diffusion = load_diffusion("logs/version_0")
predicted = predict(diffusion, read("structures.traj", index=":"))
write("predicted.traj", predicted)
The documentation has dedicated pages for:
If you use AGeDi in research, please cite the paper above and the AGeDi preprint.
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.4.0 | 12 Aug 2026 | 16 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 21:22 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:6131bcada168b620c98ea1903d9cb10a09ef799db9ed99ce05d9e79dc4702f06