Configuration Reference (config_v2)
This page is a field-oriented reference for the current strict schema.
Validation entrypoints:
spider validate-config <config.json> --mode samplespider.core.config_v2.validate.parse_canonical_config()
The root object only allows:
iomodelinferenceobservability
Unknown keys at any strict block level raise a validation error.
io block
Required keys:
dtime_file(string)station_file(string)catalog_infile(string)catalog_outfile(string)samples_outfile(string)checkpoint_dir(string)checkpoint_interval(int,>= 1)save_every_n(int,>= 1)write_samples(bool)
Optional keys:
sample_write_interval(int or null,>= 0when set)
model block
Allowed keys:
model_filedomainpriorslikelihoodsfilterseikonet
model.domain
Required:
lon_min(number)lat_min(number)z_min(number)z_max(number, must satisfyz_max > z_min)scale(number,> 0)
model.priors
Schema is pass-through at this layer (validated/materialized downstream). Typical blocks:
eventcentroid
model.filters
Expected sub-blocks in runtime bridge:
dtimeseventsresidual
Common keys:
dtimes:remove_duplicates,max_abs_input_dt,dtime_thin_frac,flip_dt_sign,cc_minevents:min_dtimes,min_unique_phase_per_event,min_dtimes_per_pair,min_event_degree,min_events_per_cluster,max_pair_station_ratio,ratio_filter_phase,linearization_errorresidual:enabled,method,mad_sigma,abs_max
model.likelihoods
Expected sub-blocks:
locate_mapsample
Current sampling mode expects:
model.likelihoods.sample.type = "correlated_gaussian"
inference block
Allowed keys:
samplerbatchingruntimesafetycompute
inference.sampler
Required/validated:
backend(psgldorsghmc)epochs_per_phase(list of 4 ints, each>= 0)lr(list of 4 positive numbers)temperature(>= 0)beta(0 <= beta < 1)eps(> 0)freeze_preconditioner_sampling(bool)sghmc_alpha(required key; number for SGHMC, number/null otherwise)
Optional:
noise_scale_mult(> 0when set)dt_lr_mult(> 0when set)grad_clip_norm(>= 0when set)overrides(dict)
preconditioning sub-block:
enabled(bool)type(rmsproporlrdwhen enabled)include_gamma(bool)lrd(dict when present)
inference.batching
standard(dict)event_batches(dict)
Runtime-bridged keys in common use:
standard:warmup,sgld,shuffleevent_batches:enabled,events_per_batch,max_edges_per_batch,bucket_reorder_all,bucket_reuse_epochs
inference.runtime
Allowed:
cuda_empty_cache_everyreset_batch_numbersclear_samples_on_resetmin_samples_to_saveverbosecluster_eventsseedgauge_projectiontorch
inference.safety
max_abs_dXisnullor list of 4 numbers.
inference.compute
devicesis optional list of device specifiers (int or non-empty string).
observability block
Allowed keys:
wandbdiagnostics
observability.wandb
Required keys:
enabled(bool)project_name(non-empty string or null)run_name(non-empty string or null)
observability.diagnostics
Accepted as a dict and materialized downstream. Common keys:
pair_count_stats_enablesgld_log_gnoisesgld_log_temperaturedisplay_precond_everyprofile_shared_event_rewandb(includinggroups)ess_online
See Diagnostics Catalog for behavior and interpretation.