Releases: KosinskiLab/AlphaPulldownSnakemake
Releases · KosinskiLab/AlphaPulldownSnakemake
2.5.1
AlphaPulldownSnakemake 2.5.1
Fixed
- AF3 JSON inputs (e.g. ligands) in fold specifications are now handled correctly (#41).
A*.jsontoken such asligand.jsonin a fold (e.g.P12345+ligand.json:80) is now
treated as a direct AlphaFold 3 input supplied viafeature_directory, instead of being
mistaken for a protein. Previously such tokens were scheduled fordownload_uniprot+
create_featuresand required a.pkl/_af3_input.jsonthat never existed, so mixed
protein + ligand folds failed. They are now symlinked and passed straight to inference,
with no download/feature-generation jobs. Verified for both AF2-features + AF3-backend
and pure-AF3 runs. symlink_featuresis now idempotent (skips already-correct links, repairs broken ones).
Changed
config/config.yamlnow references the published2.4.0AlphaFold2/AlphaFold3 backend
container tags in its examples.- Documented AlphaJudge reporting in
config/config.yaml: a per-fold RCSB-stylereport.pdf
is written next tointerfaces.csvautomatically, and--aggregate_reportproduces an
aggregate validation PDF alongsidereports/all_interfaces.csv.
Dependencies
- Requires
alphapulldown-input-parser>=0.5.1(already pinned in
workflow/envs/alphapulldown.yamland CI). 0.5.1 preserves.jsontokens during
fold-spec normalization, which is what makes the #41 fix possible. Users with a pinned
older parser must upgrade.
Full changelog: 2.5.0...2.5.1
2.5.0
Highlights: SLURM --mem and (optional) GPU selection are now sized from the input sequence length, oversized folds are skipped before submission. Backward compatible — existing configs keep working.
Length-aware memory (host --mem)
Computed per stage at scheduling time:
create_features→safety · (base + per_residue · L)structure_inference→safety · (base + per_token_sq · N²)(O(N²) pair representation)
Defaults differ by backend:
backend | feature base | feature/residue | inference base | inference/N² -- | -- | -- | -- | -- alphafold2 | 64000 MB | 40 MB | 16000 MB | 0.0055 alphafold3 | 40000 MB | 25 MB | 8000 MB | 0.0045First attempt includes a safety margin (mem_safety_factor, default 1.25); OOM retries still escalate via *_ram_scaling ** (attempt-1). With unified memory, this also sizes the GPU spill ceiling.
Skip over-large folds (Closes #33)
max_total_length_alphafold2: 5000 # AF2-Multimer total complex residues
max_total_length_alphafold3: 7000
max_protein_length: 0 # 0 = off; over-limit protein drops its folds
length_filter_fetch_uniprot: true # false for offline runs
Lengths resolved from local FASTA → cache → UniProt. Skipped folds listed in
2.4.0
What's Changed
- Add GPU node exclusion, runtime cap, and unified memory for inference by @DimaMolod in #42
Full Changelog: 2.1.8...2.4.0
2.1.8
2.1.7
2.1.6
2.1.5
2.1.4
2.1.3
- use official snakemake executor plugin
https://snakemake.github.io/snakemake-plugin-catalog/plugins/executor/slurm.html - automatically bind all used disks to singularity
- simplify README.md
- Snakefile: change
walltimetoruntimeeverywhere config.yaml- update
alphafold_inferenceslurm instructions (second line was ignored before) - use smaller proteins for tests
- added profiles for slurm and for local workstation into
config/so it is shipped upon snakedeploy
- update