Configuration reference

Every field of net.common.Config with its type and default, generated from the source. Fields can appear at the root of a YAML document, be set with --set field=value or be passed to Config(...). Sectioned keys (data, training, pipeline…) are described in Configuration and The typed feature pipeline.

Sections and cutoff

Field

Type

Default

Note

pipeline

dict | None

None

objective

dict | None

None

optimization

dict | None

None

schema_version

int

1

data

dict

dict

training

dict

dict

parameters

dict

dict

species

dict

dict

layout

dict

dict

layout_rules

dict

dict

codec

dict

dict

reference

dict

dict

cutoff_radius

float

11.0

Representation shape

Field

Type

Default

Note

l_max

int

6

hidden_base_dim

int

64

multiplicity at ℓ = 0

hidden_irreps

str | None

"128x0e+16x0o+8x1e+64x1o+24x2e+8x2o+8x3e+24x3o+" "16x4e+4x4o+4x5e+12x5o+8x6e"

edge_type_emb_dim

int

32

edge type embedding size

emb_use_odd_features

bool

True

use odd parity

edge_encoder_style

str

"rich"

“rich” | “distance”

edge_encoder_use_sh_tensor_square

bool

True

e3layernorm

bool

False

Depth / topology

Field

Type

Default

Note

num_layers_gnn

int

2

unified number of message-passing layers

Model variants

Field

Type

Default

Note

tp_type

str

"separate_weight"

use_self_connection

bool

False

edge_update_node_combine

str

"concat"

“concat” | “sum” | “tensor_product”

edge_update_residual

bool

False

use residual connections in edge update

node_update_message_agg

str

"attention"

“sum” | “average” | “attention”

node_update_attention_scalar_dim

int

64

node_update_attention_heads

int

4

node_update_residual

bool

False

use residual connections in node update

head_use_mlp_log_scale

bool

False

whether to use MLP log scaling in the head

neck_depth

int

2

internal_e3mlp_layers

int

1

head_e3mlp_layers

int

1

head_use_node_embeddings_for_self_edges

bool

True

separate_shifted_self

bool

False

head_use_tensor_square

bool

False

head_pair_mode

str

"split"

“split” | “shared_conditioned”

head_diag_output_scale

float

1.0

head_offdiag_output_scale

float

1.0

head_log_scale_mlp_n_layers

int

1

Non-linearity & norm

Field

Type

Default

Note

e3mlp_variant

str

"film"

“basic” or study-style variants

internal_e3mlp_variant

str | None

"resnormact"

head_e3mlp_variant

str | None

"normact"

e3mlp_output_scale

float

1.0

e3mlp_weight_init_scale

float

1.0

e3mlp_residual_scale

float

0.25

e3mlp_pre_norm

bool

False

e3mlp_norm_eps

float

1e-8

e3mlp_film_hidden_dim

int

64

activation_odd_scalar

str

"tanh"

activation_odd_gate

str

"tanh"

nonlin_kind

str

"normact"

“normact” | “s2act” | “gate_scalars_mlp” | “gate_magnitudes”

activation_scalar

str

"leakyrelu"

activation_gate

str

"softplus"

s2act_res

int

128

norm_kind

str

"component"

for NormActivation: “component” | “norm”

Training

Field

Type

Default

Note

lr

float

0.010803383053097332

max_epochs

int

10000

max_wall_clock_seconds

float | None

12.0 * 3600.0

batch_size

int

1

use_lr_scheduler

bool

True

lr_scheduler_factor

float

0.5

lr_scheduler_patience

int

60

lr_scheduler_min_lr

float

1e-8

lr_scheduler_target

str

"val/hamiltonian_mae"

revert_on_spike

bool

True

revert_monitor

str | None

"val/hamiltonian_mae"

revert_decay_patience

int

4

revert_decay_rate

float

0.5

revert_spike_factor

float

2.0

checkpoint_monitor

str

"val/hamiltonian_mae"

Regularisation

Field

Type

Default

Note

dropout

float

0.0

dropout on all irrep coefficients

l1_reg_coef

float

0.0

l2_reg_coef

float

0.0

init_weights_factor

float

1.0

grad_clip_algorithm

str

"value"

wall_clock_scope

str

"session"

grad_clip_val

float | None

2.0

accumulate_grad_batches

int

1

gradient accumulation steps

Radial basis

Field

Type

Default

Note

n_radial

int

128

radial_layers

Sequence[int]

field( default_factory=lambda: (128, 128, 128) )

e.g. (128,) -> 2-layer MLP

radial_weight_granularity

str

"term"

term (legacy) | copy

pair_conditioned_radial_mlp

bool

False

pair_distance_normalization

str

"off"

off | pair_r0

Additional outputs

Field

Type

Default

Note

enable_forces

bool

False

enable_stress

bool

False

enable_energy

bool

True

enable_num_electrons

bool

True

Training targets

Field

Type

Default

Note

train_target

str

"matrix"

matrix | irreps

partial_train

str | None

None

None | “diag” | “offdiag” (legacy: shifted_self)

train_on_forces

bool

False

train_on_stress

bool

False

train_on_energy

bool

False

train_on_num_electrons

bool

False

matrix_targets

list

["hamiltonian"]

train_observables_on_gt

bool

True

symmetrize_validation_output

bool

True

symmetrize_overlap_targets

bool

True

symmetrize_density_targets

bool

True

symmetrize_output

bool

False

symmetrize matrix outputs

symmetrize_hamiltonian_targets

bool

True

rescale_density_to_num_electrons

bool

False

Loss weighting

Field

Type

Default

Note

loss_l1_fraction

float

1.0

0.0 for L2, 1.0 for L1

matrix_loss_reduction

str

"pair_sum"

pair_sum | pair_mean | elements

loss_coef_observables

float

0.0

allow_zero_observable_loss_control

bool

False

observable_loss_kind

str

"mae"

mse | mae

loss_coef_forces

float

0.0

loss_coef_stress

float

0.0

hamiltonian_envelope_mode

str

"off"

off | normalize_target | multiply_prediction

hamiltonian_envelope_path

str | None

None

hamiltonian_envelope_eps

float

1e-12

loss_weighting_mode

str

"off"

loss_weight_min

float

0.0

loss_weight_max

float

100.0

spectral_loss_enabled

bool

False

train_on_spectral

bool

True

spectral_loss_coef

float

0.0

spectral_loss_kmesh

str

"1x1x1"

spectral_loss_window_ev

float

10.0

spectral_loss_taper_ev

float

2.0

spectral_loss_huber_delta_ev

float

0.1

spectral_loss_kind

str

"huber"

huber | mse | mae

spectral_loss_overlap_psd_cleanup

bool

False

spectral_loss_overlap_jitter

bool

True

spectral_fermi_cache_path

str | None

None

freeze_backbone_train_heads_only

bool

False

Logging

Field

Type

Default

Note

run_name

str

"mandala-run"

experiment_id

str | None

None

ablation_name

str | None

None

ablation_setting

str | None

None

ablation_setting_from

str | None

None

verbosity

int

1

bench_verbosity

int

1

log_partial_gt_observables

bool

True

log_per_irrep_metrics

bool

True

print_per_irrep_metrics

bool

False

log_per_irrep_images

bool

False

log_train_metrics

bool

False

log_per_pair_loss_metrics

bool

True

log_hamiltonian_irrep_contrib_metrics

bool

True

log_hamiltonian_pair_contrib_metrics

bool

True

log_activation_mag

bool

False

log_grad_norm

bool

False

wandb_project

str | None

None

log_every_n_steps

int

1

log_on_step

bool

False

log metrics on step, not just epoch

log_on_epoch

bool

True

log metrics on epoch

log_data

bool

False

log_forward

bool

False

benchmark

bool

False

log_interval

int

10

adaptive_log_interval

bool

True

video_max_atoms

int | None

6

Misc

Field

Type

Default

Note

safety_checks

bool

False

enable strict checks on input data

dtype

torch.dtype

torch.float32

default data type for all layers

device

str

"cuda"

default device for all layers

gpus

int

1

number of GPUs

num_workers

int | None

3

save_dir

str

"checkpoints"

directory to save model checkpoints

log_model

bool

False

whether to log the model to WandB

Caching

Field

Type

Default

Note

snapshot_cache_dir

str | None

None

raw Snapshot .pt cache, if any

dataset_device

str | None

None

keep processed dataset on this device

shuffle_snapshot_load_order

bool

True

randomize cache warmup order

data_split_seed

int

42

fixed seed defining train/validation/test membership

seed

int

42

run seed: initialization, dropout, and training order

epoch_boundary_resume

bool

False

opt-in reproducible segmented runs

precompute_edge_features

bool

True

precompute edge features

radial_embedding_scale

str

"none"

allow_incomplete_dataset

bool

False

tolerate short snapshot lists

apply_cutoff_to_targets

bool

True

graph_source

str

"geometry_cutoff"

geometry_cutoff | target_edges

require_exact_edge_match

bool

True

validate cutoff prefix only; never mutate edges

allow_openmx_positions_box_from_out

bool

False

Hyperopt

Field

Type

Default

Note

tune

str | None

None

hyperparameter tuning (e.g. “ray”, “wandb”)

train_on_irrep_parts

bool

False

compatibility

bool

False

Deeph-e3 specific config

Field

Type

Default

Note

num_block

int

3

r_max

float

8.0

num_basis

int

128

use_sc

bool

True

use_sbf

bool

False