rc-foundry 0.1.1__tar.gz → 0.1.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (427) hide show
  1. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/PKG-INFO +1 -1
  2. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/ncaa/create_cif_with_ligand_as_ncaa.ipynb +4 -4
  3. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/testing/debug.py +0 -1
  4. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/utils/vizualize.py +0 -1
  5. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_aa_design.py +0 -6
  6. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/version.py +2 -2
  7. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry_cli/download_checkpoints.py +4 -5
  8. rc_foundry-0.1.1/.ipd/apptainer/rf3-dev.def +0 -114
  9. rc_foundry-0.1.1/.ipd/apptainer/rf3-full.def +0 -81
  10. rc_foundry-0.1.1/.ipd/apptainer/rfd3-full.def +0 -81
  11. rc_foundry-0.1.1/.ipd/shebang/README.md +0 -6
  12. rc_foundry-0.1.1/.ipd/shebang/mpnn_exec.sh +0 -129
  13. rc_foundry-0.1.1/.ipd/shebang/rf3_exec.sh +0 -129
  14. rc_foundry-0.1.1/.ipd/shebang/rfd3_exec.sh +0 -129
  15. rc_foundry-0.1.1/.ipd/slurm/launch_ligand_mpnn.sh +0 -15
  16. rc_foundry-0.1.1/.ipd/slurm/launch_protein_mpnn.sh +0 -15
  17. rc_foundry-0.1.1/.ipd/slurm/launch_rf3.sh +0 -65
  18. rc_foundry-0.1.1/.ipd/slurm/launch_rfd3.sh +0 -69
  19. rc_foundry-0.1.1/docs/IPD_USAGE.md +0 -224
  20. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/.git +0 -0
  21. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/.github/workflows/lint_trunk.yaml +0 -0
  22. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/.gitignore +0 -0
  23. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/.gitmodules +0 -0
  24. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/.pre-commit-config.yaml +0 -0
  25. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/.project-root +0 -0
  26. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/LICENSE.md +0 -0
  27. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/Makefile +0 -0
  28. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/README.md +0 -0
  29. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/3en2_from_file.cif +0 -0
  30. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/3en2_from_json_with_msa.json +0 -0
  31. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/5hkn_from_file.cif +0 -0
  32. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/7o1r_from_json.json +0 -0
  33. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/7xli_template_antigen_and_framework.json +0 -0
  34. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/9dfn.cif +0 -0
  35. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/9dfn_template_ligand_and_protein.json +0 -0
  36. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/ligands/HEM.sdf +0 -0
  37. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/ligands/NAG.cif +0 -0
  38. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/msas/3en2_A.a3m.gz +0 -0
  39. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/msas/7o1r_A.a3m.gz +0 -0
  40. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/msas/8cdz_A.a3m.gz +0 -0
  41. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/multiple_examples_from_json.json +0 -0
  42. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/templates/7xli_chain_A.cif +0 -0
  43. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rf3/examples/templates/7xli_chain_B.cif +0 -0
  44. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/docs/releases/rfd3/examples/README.md +0 -0
  45. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/examples/all.ipynb +0 -0
  46. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/examples/enzymes.ipynb +0 -0
  47. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/README.md +0 -0
  48. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/__init__.py +0 -0
  49. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/collate/feature_collator.py +0 -0
  50. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/inference.py +0 -0
  51. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/inference_engines/mpnn.py +0 -0
  52. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/loss/nll_loss.py +0 -0
  53. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/metrics/nll.py +0 -0
  54. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/metrics/sequence_recovery.py +0 -0
  55. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/model/layers/graph_embeddings.py +0 -0
  56. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/model/layers/message_passing.py +0 -0
  57. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/model/layers/position_wise_feed_forward.py +0 -0
  58. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/model/layers/positional_encoding.py +0 -0
  59. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/model/mpnn.py +0 -0
  60. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/pipelines/mpnn.py +0 -0
  61. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/samplers/samplers.py +0 -0
  62. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/train.py +0 -0
  63. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/trainers/mpnn.py +0 -0
  64. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/transforms/feature_aggregation/mpnn.py +0 -0
  65. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/transforms/feature_aggregation/polymer_ligand_interface.py +0 -0
  66. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/transforms/feature_aggregation/token_encodings.py +0 -0
  67. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/transforms/feature_aggregation/user_settings.py +0 -0
  68. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/transforms/polymer_ligand_interface.py +0 -0
  69. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/utils/inference.py +0 -0
  70. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/utils/probability.py +0 -0
  71. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/src/mpnn/utils/weights.py +0 -0
  72. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/conftest.py +0 -0
  73. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_feature_collator.py +0 -0
  74. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_inference_engine.py +0 -0
  75. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_inference_utils.py +0 -0
  76. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_integration.py +0 -0
  77. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_loss.py +0 -0
  78. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_metrics.py +0 -0
  79. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_model.py +0 -0
  80. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_pipeline.py +0 -0
  81. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_polymer_ligand_interface.py +0 -0
  82. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_samplers.py +0 -0
  83. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/mpnn/tests/test_utils.py +0 -0
  84. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/README.md +0 -0
  85. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/callbacks/default.yaml +0 -0
  86. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/callbacks/dump_validation_structures.yaml +0 -0
  87. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/callbacks/metrics_logging.yaml +0 -0
  88. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/callbacks/train_logging.yaml +0 -0
  89. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/dataloader/default.yaml +0 -0
  90. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/base.yaml +0 -0
  91. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/pdb_and_distillation.yaml +0 -0
  92. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/pdb_only.yaml +0 -0
  93. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/disorder_distillation.yaml +0 -0
  94. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/domain_distillation.yaml +0 -0
  95. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/monomer_distillation.yaml +0 -0
  96. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/na_complex_distillation.yaml +0 -0
  97. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/pdb/af3_weighted_sampling.yaml +0 -0
  98. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/pdb/base.yaml +0 -0
  99. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/pdb/plinder.yaml +0 -0
  100. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/pdb/train_interface.yaml +0 -0
  101. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/pdb/train_pn_unit.yaml +0 -0
  102. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/train/rna_monomer_distillation.yaml +0 -0
  103. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/val/af3_ab_set.yaml +0 -0
  104. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/val/af3_validation.yaml +0 -0
  105. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/val/base.yaml +0 -0
  106. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/datasets/val/runs_and_poses.yaml +0 -0
  107. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/debug/default.yaml +0 -0
  108. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/debug/train_specific_examples.yaml +0 -0
  109. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/experiment/pretrained/rf3.yaml +0 -0
  110. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/experiment/pretrained/rf3_with_confidence.yaml +0 -0
  111. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/experiment/quick-rf3-with-confidence.yaml +0 -0
  112. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/experiment/quick-rf3.yaml +0 -0
  113. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/hydra/default.yaml +0 -0
  114. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/hydra/no_logging.yaml +0 -0
  115. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/inference.yaml +0 -0
  116. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/inference_engine/base.yaml +0 -0
  117. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/inference_engine/rf3.yaml +0 -0
  118. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/logger/csv.yaml +0 -0
  119. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/logger/default.yaml +0 -0
  120. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/logger/wandb.yaml +0 -0
  121. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/model/components/ema.yaml +0 -0
  122. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/model/components/rf3_net.yaml +0 -0
  123. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/model/components/rf3_net_with_confidence_head.yaml +0 -0
  124. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/model/optimizers/adam.yaml +0 -0
  125. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/model/rf3.yaml +0 -0
  126. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/model/rf3_with_confidence.yaml +0 -0
  127. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/model/schedulers/af3.yaml +0 -0
  128. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/paths/data/default.yaml +0 -0
  129. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/paths/default.yaml +0 -0
  130. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/train.yaml +0 -0
  131. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/cpu.yaml +0 -0
  132. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/ddp.yaml +0 -0
  133. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/loss/losses/confidence_loss.yaml +0 -0
  134. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/loss/losses/diffusion_loss.yaml +0 -0
  135. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/loss/losses/distogram_loss.yaml +0 -0
  136. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/loss/structure_prediction.yaml +0 -0
  137. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/loss/structure_prediction_with_confidence.yaml +0 -0
  138. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/metrics/structure_prediction.yaml +0 -0
  139. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/rf3.yaml +0 -0
  140. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/trainer/rf3_with_confidence.yaml +0 -0
  141. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/configs/validate.yaml +0 -0
  142. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/__init__.py +0 -0
  143. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/_version.py +0 -0
  144. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/alignment.py +0 -0
  145. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/callbacks/dump_validation_structures.py +0 -0
  146. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/callbacks/metrics_logging.py +0 -0
  147. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/chemical.py +0 -0
  148. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/cli.py +0 -0
  149. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/data/cyclic_transform.py +0 -0
  150. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/data/extra_xforms.py +0 -0
  151. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/data/ground_truth_template.py +0 -0
  152. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/data/paired_msa.py +0 -0
  153. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/data/pipeline_utils.py +0 -0
  154. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/data/pipelines.py +0 -0
  155. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/diffusion_samplers/inference_sampler.py +0 -0
  156. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/inference.py +0 -0
  157. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/inference_engines/__init__.py +0 -0
  158. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/inference_engines/rf3.py +0 -0
  159. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/kinematics.py +0 -0
  160. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/loss/af3_confidence_loss.py +0 -0
  161. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/loss/af3_losses.py +0 -0
  162. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/loss/loss.py +0 -0
  163. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/chiral.py +0 -0
  164. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/clashing_chains.py +0 -0
  165. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/distogram.py +0 -0
  166. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/lddt.py +0 -0
  167. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/metadata.py +0 -0
  168. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/metric_utils.py +0 -0
  169. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/predicted_error.py +0 -0
  170. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/rasa.py +0 -0
  171. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/metrics/selected_distances.py +0 -0
  172. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/RF3.py +0 -0
  173. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/RF3_blocks.py +0 -0
  174. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/RF3_structure.py +0 -0
  175. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/layers/af3_auxiliary_heads.py +0 -0
  176. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/layers/af3_diffusion_transformer.py +0 -0
  177. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/layers/attention.py +0 -0
  178. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/layers/layer_utils.py +0 -0
  179. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/layers/mlff.py +0 -0
  180. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/layers/outer_product.py +0 -0
  181. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/layers/pairformer_layers.py +0 -0
  182. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/model/layers/structure_bias.py +0 -0
  183. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/scoring.py +0 -0
  184. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/symmetry/resolve.py +0 -0
  185. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/train.py +0 -0
  186. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/trainers/rf3.py +0 -0
  187. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/util_module.py +0 -0
  188. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/utils/frames.py +0 -0
  189. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/utils/inference.py +0 -0
  190. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/utils/io.py +0 -0
  191. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/utils/loss.py +0 -0
  192. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/utils/predict_and_score.py +0 -0
  193. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/utils/predicted_error.py +0 -0
  194. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/utils/recycling.py +0 -0
  195. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/src/rf3/validate.py +0 -0
  196. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/.gitkeep +0 -0
  197. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/conftest.py +0 -0
  198. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/5vht_from_file.cif +0 -0
  199. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/5vht_from_json.json +0 -0
  200. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/8vkf_from_file.cif +0 -0
  201. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/example_from_pdb_with_inter_chain_bond.pdb +0 -0
  202. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/example_pdb_with_clashing_ligand_name.pdb +0 -0
  203. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/example_with_ncaa.json +0 -0
  204. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/inference_regression_tests/5vht_from_file/5vht_from_file_model.cif +0 -0
  205. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/inference_regression_tests/5vht_from_file/5vht_from_file_summary_confidences.json +0 -0
  206. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/inference_regression_tests/8vkf_from_file/8vkf_from_file_model.cif +0 -0
  207. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/inference_regression_tests/8vkf_from_file/8vkf_from_file_summary_confidences.json +0 -0
  208. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/msas/5vht_A.a3m +0 -0
  209. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/msas/8vkf_A.a3m +0 -0
  210. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/multiple_examples_from_json.json +0 -0
  211. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/ncaa/ligand_as_ncaa.cif +0 -0
  212. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/ncaa/penicillin_ts2_as_ncaa.cif +0 -0
  213. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/nested_examples/example_from_json.json +0 -0
  214. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/data/nested_examples/example_from_pdb_with_inter_chain_bonds.and.dots.pdb +0 -0
  215. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/test_chiral_metrics.py +0 -0
  216. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/test_inference_regression.py +0 -0
  217. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rf3/tests/test_write_confidence.py +0 -0
  218. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/.gitignore +0 -0
  219. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/README.md +0 -0
  220. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/__init__.py +0 -0
  221. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/callbacks/design_callbacks.yaml +0 -0
  222. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/callbacks/metrics_logging.yaml +0 -0
  223. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/callbacks/train_logging.yaml +0 -0
  224. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/dataloader/default.yaml +0 -0
  225. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/dataloader/fast.yaml +0 -0
  226. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/conditions/dna_condition.yaml +0 -0
  227. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/conditions/island.yaml +0 -0
  228. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/conditions/ppi.yaml +0 -0
  229. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/conditions/sequence_design.yaml +0 -0
  230. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/conditions/tipatom.yaml +0 -0
  231. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/conditions/unconditional.yaml +0 -0
  232. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/design_base.yaml +0 -0
  233. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/af3_train_interface.yaml +0 -0
  234. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/af3_train_pn_unit.yaml +0 -0
  235. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/base.yaml +0 -0
  236. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/base_no_weights.yaml +0 -0
  237. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/base_transform_args.yaml +0 -0
  238. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/na_complex_distillation.yaml +0 -0
  239. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/pdb_base.yaml +0 -0
  240. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/rfd3_train_interface.yaml +0 -0
  241. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/pdb/rfd3_train_pn_unit.yaml +0 -0
  242. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/train/rfd3_monomer_distillation.yaml +0 -0
  243. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/bcov_ppi_easy_medium.yaml +0 -0
  244. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/design_validation_base.yaml +0 -0
  245. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/dna_binder_design5.yaml +0 -0
  246. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/dna_binder_long.yaml +0 -0
  247. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/dna_binder_short.yaml +0 -0
  248. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/indexed.yaml +0 -0
  249. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/mcsa_41.yaml +0 -0
  250. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/mcsa_41_short_rigid.yaml +0 -0
  251. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/ppi_inference.yaml +0 -0
  252. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/sm_binder_hbonds.yaml +0 -0
  253. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/sm_binder_hbonds_short.yaml +0 -0
  254. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/unconditional.yaml +0 -0
  255. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/unconditional_deep.yaml +0 -0
  256. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/unindexed.yaml +0 -0
  257. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/val_examples/bcov_ppi_easy_medium_with_ori.yaml +0 -0
  258. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/val_examples/bcov_ppi_easy_medium_with_ori_spoof_helical_bundle.yaml +0 -0
  259. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/val_examples/bcov_ppi_easy_medium_with_ori_varying_lengths.yaml +0 -0
  260. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/datasets/val/val_examples/bpem_ori_hb.yaml +0 -0
  261. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/debug/default.yaml +0 -0
  262. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/debug/train_specific_examples.yaml +0 -0
  263. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/dev.yaml +0 -0
  264. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/experiment/debug.yaml +0 -0
  265. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/experiment/pretrain.yaml +0 -0
  266. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/experiment/test-uncond.yaml +0 -0
  267. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/experiment/test-unindexed.yaml +0 -0
  268. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/hydra/default.yaml +0 -0
  269. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/hydra/no_logging.yaml +0 -0
  270. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/inference.yaml +0 -0
  271. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/inference_engine/base.yaml +0 -0
  272. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/inference_engine/dev.yaml +0 -0
  273. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/inference_engine/rfdiffusion3.yaml +0 -0
  274. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/logger/csv.yaml +0 -0
  275. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/logger/default.yaml +0 -0
  276. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/logger/wandb.yaml +0 -0
  277. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/model/components/ema.yaml +0 -0
  278. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/model/components/rfd3_net.yaml +0 -0
  279. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/model/optimizers/adam.yaml +0 -0
  280. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/model/rfd3_base.yaml +0 -0
  281. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/model/samplers/edm.yaml +0 -0
  282. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/model/samplers/symmetry.yaml +0 -0
  283. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/model/schedulers/af3.yaml +0 -0
  284. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/paths/data/default.yaml +0 -0
  285. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/paths/default.yaml +0 -0
  286. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/train.yaml +0 -0
  287. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/trainer/cpu.yaml +0 -0
  288. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/trainer/ddp.yaml +0 -0
  289. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/trainer/loss/losses/diffusion_loss.yaml +0 -0
  290. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/trainer/loss/losses/sequence_loss.yaml +0 -0
  291. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/trainer/metrics/design_metrics.yaml +0 -0
  292. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/trainer/rfd3_base.yaml +0 -0
  293. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/configs/validate.yaml +0 -0
  294. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/demo.json +0 -0
  295. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/enzyme_design.md +0 -0
  296. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/get_na_input.sh +0 -0
  297. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input.md +0 -0
  298. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/1bna.pdb +0 -0
  299. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/1q75.pdb +0 -0
  300. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/2r5z.pdb +0 -0
  301. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/4zxb_croppped.pdb +0 -0
  302. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/5o45_cropped.pdb +0 -0
  303. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/5o4d.pdb +0 -0
  304. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/7v11.pdb +0 -0
  305. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/IAI.pdb +0 -0
  306. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/input_pdbs/M0255_1mg5.pdb +0 -0
  307. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/na_binder_design.json +0 -0
  308. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/na_binder_design.md +0 -0
  309. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/protein_binder_design.md +0 -0
  310. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/run_inf_tutorial.sh +0 -0
  311. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/sm_binder_design.md +0 -0
  312. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/docs/symmetry.md +0 -0
  313. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/.gitignore +0 -0
  314. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/Makefile +0 -0
  315. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/__init__.py +0 -0
  316. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/callbacks.py +0 -0
  317. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/cli.py +0 -0
  318. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/constants.py +0 -0
  319. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/engine.py +0 -0
  320. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/datasets.py +0 -0
  321. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/input_parsing.py +0 -0
  322. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/legacy_input_parsing.py +0 -0
  323. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/parsing.py +0 -0
  324. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/symmetry/atom_array.py +0 -0
  325. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/symmetry/checks.py +0 -0
  326. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/symmetry/contigs.py +0 -0
  327. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/symmetry/frames.py +0 -0
  328. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/inference/symmetry/symmetry_utils.py +0 -0
  329. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/metrics/design_metrics.py +0 -0
  330. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/metrics/hbonds_hbplus_metrics.py +0 -0
  331. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/metrics/hbonds_metrics.py +0 -0
  332. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/metrics/losses.py +0 -0
  333. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/metrics/metrics_utils.py +0 -0
  334. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/metrics/sidechain_metrics.py +0 -0
  335. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/RFD3.py +0 -0
  336. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/RFD3_diffusion_module.py +0 -0
  337. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/cfg_utils.py +0 -0
  338. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/inference_sampler.py +0 -0
  339. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/layers/attention.py +0 -0
  340. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/layers/block_utils.py +0 -0
  341. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/layers/blocks.py +0 -0
  342. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/layers/chunked_pairwise.py +0 -0
  343. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/layers/encoders.py +0 -0
  344. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/layers/layer_utils.py +0 -0
  345. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/model/layers/pairformer_layers.py +0 -0
  346. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/run_inference.py +0 -0
  347. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/testing/debug_utils.py +0 -0
  348. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/testing/testing_utils.py +0 -0
  349. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/train.py +0 -0
  350. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/trainer/dump_validation_structures.py +0 -0
  351. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/trainer/fabric_trainer.py +0 -0
  352. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/trainer/recycling.py +0 -0
  353. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/trainer/rfd3.py +0 -0
  354. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/trainer/trainer_utils.py +0 -0
  355. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/conditioning_base.py +0 -0
  356. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/conditioning_utils.py +0 -0
  357. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/design_transforms.py +0 -0
  358. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/dna_crop.py +0 -0
  359. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/hbonds.py +0 -0
  360. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/hbonds_hbplus.py +0 -0
  361. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/ncaa_transforms.py +0 -0
  362. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/pipelines.py +0 -0
  363. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/ppi_transforms.py +0 -0
  364. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/rasa.py +0 -0
  365. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/symmetry.py +0 -0
  366. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/training_conditions.py +0 -0
  367. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/util_transforms.py +0 -0
  368. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/transforms/virtual_atoms.py +0 -0
  369. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/utils/inference.py +0 -0
  370. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/src/rfd3/utils/io.py +0 -0
  371. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/conftest.py +0 -0
  372. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_conditioning.py +0 -0
  373. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_glycines.py +0 -0
  374. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_legacy_pipeline_equivalence.py +0 -0
  375. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_metrics.py +0 -0
  376. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_partial_diffusion.py +0 -0
  377. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_selections.py +0 -0
  378. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_subgraph_sampling.py +0 -0
  379. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_symmetry.py +0 -0
  380. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_tokenization.py +0 -0
  381. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/test_unindexing.py +0 -0
  382. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/transforms/regression_test_data/1p5d_0_inference_pretrain.pkl +0 -0
  383. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/transforms/regression_test_data/1p5d_0_train_pretrain.pkl +0 -0
  384. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/transforms/regression_test_data/1qys_0_inference_pretrain.pkl +0 -0
  385. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/transforms/regression_test_data/1qys_0_train_pretrain.pkl +0 -0
  386. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/transforms/regression_test_data/af2_122_train_test_unindexed.pkl +0 -0
  387. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/models/rfd3/tests/transforms/test_pipeline_regression.py +0 -0
  388. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/pyproject.toml +0 -0
  389. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/refactor.sh +0 -0
  390. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/__init__.py +0 -0
  391. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/callbacks/__init__.py +0 -0
  392. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/callbacks/callback.py +0 -0
  393. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/callbacks/health_logging.py +0 -0
  394. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/callbacks/metrics_logging.py +0 -0
  395. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/callbacks/timing_logging.py +0 -0
  396. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/callbacks/train_logging.py +0 -0
  397. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/common.py +0 -0
  398. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/constants.py +0 -0
  399. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/hydra/resolvers.py +0 -0
  400. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/inference_engines/base.py +0 -0
  401. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/inference_engines/checkpoint_registry.py +0 -0
  402. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/metrics/__init__.py +0 -0
  403. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/metrics/losses.py +0 -0
  404. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/metrics/metric.py +0 -0
  405. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/model/layers/blocks.py +0 -0
  406. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/testing/__init__.py +0 -0
  407. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/testing/fixtures.py +0 -0
  408. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/testing/pytest_hooks.py +0 -0
  409. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/trainers/fabric.py +0 -0
  410. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/training/EMA.py +0 -0
  411. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/training/checkpoint.py +0 -0
  412. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/training/schedulers.py +0 -0
  413. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/alignment.py +0 -0
  414. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/components.py +0 -0
  415. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/datasets.py +0 -0
  416. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/ddp.py +0 -0
  417. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/instantiators.py +0 -0
  418. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/logging.py +0 -0
  419. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/rigid.py +0 -0
  420. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/rotation_augmentation.py +0 -0
  421. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/squashfs.py +0 -0
  422. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/torch.py +0 -0
  423. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry/utils/weights.py +0 -0
  424. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/src/foundry_cli/__init__.py +0 -0
  425. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/tests/conftest.py +0 -0
  426. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/tests/test_torch_utils.py +0 -0
  427. {rc_foundry-0.1.1 → rc_foundry-0.1.3}/tests/test_weight_loading.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rc-foundry
3
- Version: 0.1.1
3
+ Version: 0.1.3
4
4
  Summary: Shared utilities and training infrastructure for biomolecular structure prediction models.
5
5
  Author-email: Institute for Protein Design <contact@ipd.uw.edu>
6
6
  License: BSD 3-Clause License
@@ -7,10 +7,10 @@
7
7
  "metadata": {},
8
8
  "outputs": [],
9
9
  "source": [
10
- "from cifutils import parse\n",
11
- "from cifutils.tools.inference import components_to_atom_array\n",
12
- "from cifutils.utils.visualize import view\n",
13
- "from cifutils.utils.io_utils import to_cif_file\n",
10
+ "from atomworks.io import parse\n",
11
+ "from atomwork.io.tools.inference import components_to_atom_array\n",
12
+ "from atomworks.io.utils.visualize import view\n",
13
+ "from atomworks.io.utils.io_utils import to_cif_file\n",
14
14
  "\n",
15
15
  "import os\n",
16
16
  "\n",
@@ -1,4 +1,3 @@
1
- #!/usr/bin/env -S /bin/sh -c '"$(dirname "$0")/../../../scripts/shebang/modelhub_exec.sh" "$0" "$@"'
2
1
  # JBs debugging file, please create your own and go crazy!
3
2
  import logging
4
3
  import os
@@ -1,4 +1,3 @@
1
- #!/usr/bin/env -S /bin/sh -c '"$(dirname "$0")/../../../scripts/shebang/modelhub_exec.sh" "$0" "$@"'
2
1
  """
3
2
  If you add the `/path/to/visualize.py` to your .bashrc/.zshrc like this:
4
3
 
@@ -1,9 +1,3 @@
1
- #!/usr/bin/env -S /bin/sh -c '"$(dirname "$0")/../../../scripts/shebang/modelhub_exec.sh" "$0" "$@"'
2
- # Usage:
3
- # >>> apptainer exec scripts/shebang/test_modelhub.sif pytest ./rfd3/tests/test_aa_design.py
4
- # To combine both make format and testing together you can use:
5
- # apptainer exec ./scripts/shebang/test_modelhub.sif make format || true && apptainer exec ./scripts/shebang/test_modelhub.sif pytest ./rfd3/tests/test_aa_design.py
6
-
7
1
  import contextlib
8
2
  import io
9
3
  import os
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '0.1.1'
32
- __version_tuple__ = version_tuple = (0, 1, 1)
31
+ __version__ = version = '0.1.3'
32
+ __version_tuple__ = version_tuple = (0, 1, 3)
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -24,7 +24,6 @@ from foundry.inference_engines.checkpoint_registry import (
24
24
  get_default_checkpoint_dir,
25
25
  )
26
26
 
27
- rootutils.setup_root(__file__, indicator=".project-root", pythonpath=True)
28
27
  load_dotenv(override=True)
29
28
 
30
29
  app = typer.Typer(help="Foundry model checkpoint installation utilities")
@@ -98,7 +97,7 @@ def install_model(
98
97
  raise typer.Exit(1)
99
98
 
100
99
  checkpoint_info = REGISTERED_CHECKPOINTS[model_name]
101
- dest_path = checkpoint_dir / checkpoint_info["filename"]
100
+ dest_path = checkpoint_dir / checkpoint_info.filename
102
101
 
103
102
  # Check if already exists
104
103
  if dest_path.exists() and not force:
@@ -109,12 +108,12 @@ def install_model(
109
108
  return
110
109
 
111
110
  console.print(
112
- f"[cyan]Installing {model_name}:[/cyan] {checkpoint_info['description']}"
111
+ f"[cyan]Installing {model_name}:[/cyan] {checkpoint_info.description}"
113
112
  )
114
113
 
115
114
  try:
116
115
  download_file(
117
- checkpoint_info["url"], dest_path, checkpoint_info.get("sha256")
116
+ checkpoint_info.url, dest_path, checkpoint_info.sha256
118
117
  )
119
118
  console.print(
120
119
  f"[green]✓[/green] Successfully installed {model_name} to {dest_path}"
@@ -186,7 +185,7 @@ def list_models():
186
185
  """List available model checkpoints."""
187
186
  console.print("[bold]Available models:[/bold]\n")
188
187
  for name, info in REGISTERED_CHECKPOINTS.items():
189
- console.print(f" [cyan]{name:8}[/cyan] - {info['description']}")
188
+ console.print(f" [cyan]{name:8}[/cyan] - {info.description}")
190
189
 
191
190
 
192
191
  @app.command()
@@ -1,114 +0,0 @@
1
- Bootstrap: localimage
2
- From: /net/software/containers/versions/modelhub/pytorch_25.06-py3.sif
3
- IncludeCmd: yes
4
-
5
- # RF3 Development Container - Dependencies only (excludes atomworks, which we expose through a submodule for development)
6
-
7
- # To build this Apptainer, from the project root, run:
8
- # apptainer build rf3-dev.sif .ipd/apptainer/rf3-dev.def
9
-
10
- %labels
11
- Author Institute for Protein Design
12
- Version 1.0-dev
13
- Description RosettaFold3 - Dependencies only (for development and model training)
14
-
15
- %setup
16
- # Create a directory in the container to bind the host's current working directory
17
- mkdir ${APPTAINER_ROOTFS}/foundry_host
18
- # ... for mounting `/projects` with --bind
19
- mkdir ${APPTAINER_ROOTFS}/projects
20
- # ... for mounting `/databases` with --bind
21
- mkdir ${APPTAINER_ROOTFS}/net
22
- # ... for mounting `/squash` with --bind
23
- mkdir ${APPTAINER_ROOTFS}/squash
24
-
25
- %files
26
- /etc/localtime
27
- /etc/hosts
28
- pyproject.toml /opt/core_pyproject.toml
29
- models/rf3/pyproject.toml /opt/rf3_pyproject.toml
30
- lib/atomworks/pyproject.toml /opt/atomworks_pyproject.toml
31
-
32
- %post
33
- ## GENERAL SETUP
34
-
35
- # Common symlinks (within container)
36
- ln -s /net/databases /databases
37
- ln -s /net/software /software
38
- ln -s /home /mnt/home
39
- ln -s /projects /mnt/projects
40
- ln -s /net /mnt/net
41
-
42
- # Update system and install essential packages
43
- apt-get update && apt-get install -y \
44
- build-essential \
45
- git \
46
- libxrender1 \
47
- libxrender-dev \
48
- libx11-6 \
49
- libx11-dev \
50
- libxext6 \
51
- libxext-dev \
52
- && rm -rf /var/lib/apt/lists/*
53
-
54
- ## PYTHON DEPENDENCY INSTALLATION
55
-
56
- # Upgrade pip
57
- python -m pip install --upgrade pip
58
-
59
- # Install uv for fast dependency resolution
60
- pip install uv
61
-
62
- # Auto-generate dependency lists for both core and RF3, with all extra dependencies
63
- # (Core)
64
- mv /opt/core_pyproject.toml /opt/pyproject.toml
65
- uv pip compile /opt/pyproject.toml --output-file /opt/core_requirements.txt --all-extras
66
- rm /opt/pyproject.toml
67
-
68
- # (RF3)
69
- mv /opt/rf3_pyproject.toml /opt/pyproject.toml
70
- uv pip compile /opt/pyproject.toml --output-file /opt/rf3_requirements.txt --all-extras
71
- rm /opt/pyproject.toml
72
-
73
- # (AtomWorks)
74
- mv /opt/atomworks_pyproject.toml /opt/pyproject.toml
75
- uv pip compile /opt/pyproject.toml --output-file /opt/atomworks_requirements.txt --all-extras
76
- rm /opt/pyproject.toml
77
-
78
- # Merge and dedupe requirements, excluding packages we don't want
79
- # (atomworks is mounted from host; torch/numpy/nvidia-* provided by base image)
80
- # (pynvml/packaging/pandas/markdown-it-py/triton from NGC container to avoid conflicts)
81
- # Deduplicate by package name (keeping first occurrence) to handle version conflicts
82
- cat /opt/core_requirements.txt /opt/rf3_requirements.txt /opt/atomworks_requirements.txt | \
83
- grep -vE "^(atomworks|torch(|vision|audio)|numpy|nvidia-.*|pynvml|packaging|pandas|markdown-it-py|triton)==" | \
84
- awk -F'==' '!seen[$1]++' > /opt/combined_requirements.txt
85
-
86
- # Print combined requirements for debugging
87
- echo "=== Combined requirements to install ==="
88
- cat /opt/combined_requirements.txt
89
- echo "========================================"
90
-
91
- # Install the cleaned, combined requirements (use uv for better resolver)
92
- uv pip install --system --break-system-packages -r /opt/combined_requirements.txt
93
-
94
- # Clean up to minimize container size
95
- uv cache clean
96
- pip cache purge
97
- apt-get clean
98
- rm -rf /var/lib/apt/lists/* 2>/dev/null || true
99
- rm -rf /root/.cache 2>/dev/null || true
100
- rm -rf /opt/*.txt 2>/dev/null || true
101
-
102
- %environment
103
- # (Flag to increase accessible GPU memory)
104
- export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
105
-
106
- # (Turn off NVLink)
107
- export NCCL_P2P_DISABLE=1
108
-
109
- %runscript
110
- # NOTE: The %runscript is invoked when the container is run without specifying a different command.
111
- exec python "$@"
112
-
113
- %help
114
- RosettaFold3 (RF3) development container with dependencies only.
@@ -1,81 +0,0 @@
1
- Bootstrap: localimage
2
- From: .ipd/apptainer/rf3-dev.sif
3
- IncludeCmd: yes
4
-
5
- # RF3 Full Production Container - Includes foundry, rf3, and atomworks packages installed
6
-
7
- # To build this Apptainer, from the project root, run:
8
- # apptainer build rf3-full.sif .ipd/apptainer/rf3-full.def
9
-
10
- %labels
11
- Author Institute for Protein Design
12
- Version 1.0.0
13
- Description RosettaFold3 - Full production container with all packages installed
14
-
15
- %setup
16
- # Copy entire repository to container
17
- echo "Copying repository..."
18
-
19
- # Create base directory
20
- mkdir -p ${APPTAINER_ROOTFS}/opt/foundry
21
-
22
- # Copy everything except large/unnecessary files
23
- rsync -av --info=progress2 \
24
- --exclude='.venv' \
25
- --exclude='__pycache__' \
26
- --exclude='*.pyc' \
27
- --exclude='.pytest_cache' \
28
- --exclude='*.egg-info' \
29
- --exclude='.ruff_cache' \
30
- --exclude='outputs' \
31
- --exclude='logs' \
32
- --exclude='*.sif' \
33
- --exclude='distillation' \
34
- --exclude='benchmarks' \
35
- --exclude='**/slurm_logs' \
36
- ./ ${APPTAINER_ROOTFS}/opt/foundry/
37
-
38
- echo "Repository copied successfully."
39
-
40
- %post
41
- echo "Installing packages into container..."
42
-
43
- # Do editable installs so everything works as in development
44
- cd /opt/foundry
45
-
46
- # Install foundry (editable, no dependencies - already in base image)
47
- echo "Installing foundry..."
48
- uv pip install --system --break-system-packages --no-deps -e .
49
-
50
- # Install rf3 (editable, no dependencies - already in base image)
51
- echo "Installing rf3..."
52
- cd /opt/foundry/models/rf3
53
- uv pip install --system --break-system-packages --no-deps -e .
54
-
55
- # Install atomworks (editable, no dependencies - already in base image)
56
- echo "Installing atomworks..."
57
- cd /opt/foundry/lib/atomworks
58
- uv pip install --system --break-system-packages --no-deps -e .
59
-
60
- # Cleanup caches only
61
- echo "Cleaning up caches..."
62
- uv cache clean
63
- pip cache purge
64
- apt-get clean
65
- rm -rf /var/lib/apt/lists/* 2>/dev/null || true
66
- rm -rf /root/.cache 2>/dev/null || true
67
-
68
- echo "Package installation complete."
69
-
70
- %runscript
71
- # Simple runscript - just run Python with any arguments
72
- exec python "$@"
73
-
74
- %help
75
- RosettaFold3 (RF3) full production container.
76
-
77
- Contains foundry, rf3, and atomworks packages installed in site-packages.
78
- All dependencies are included from the base rf3-dev container.
79
-
80
- Usage:
81
- apptainer exec --nvccli rf3-full.sif rf3 fold inputs="example.json"
@@ -1,81 +0,0 @@
1
- Bootstrap: localimage
2
- From: .ipd/apptainer/rf3-dev.sif
3
- IncludeCmd: yes
4
-
5
- # RFD3 Full Production Container - Includes foundry, rfd3, and atomworks packages installed
6
-
7
- # To build this Apptainer, from the project root, run:
8
- # apptainer build rfd3-full.sif .ipd/apptainer/rfd3-full.def
9
-
10
- %labels
11
- Author Institute for Protein Design
12
- Version 1.0.0
13
- Description RFDiffusion3 - Full production container with all packages installed
14
-
15
- %setup
16
- # Copy entire repository to container
17
- echo "Copying repository..."
18
-
19
- # Create base directory
20
- mkdir -p ${APPTAINER_ROOTFS}/opt/foundry
21
-
22
- # Copy everything except large/unnecessary files
23
- rsync -av --info=progress2 \
24
- --exclude='.venv' \
25
- --exclude='__pycache__' \
26
- --exclude='*.pyc' \
27
- --exclude='.pytest_cache' \
28
- --exclude='*.egg-info' \
29
- --exclude='.ruff_cache' \
30
- --exclude='outputs' \
31
- --exclude='logs' \
32
- --exclude='*.sif' \
33
- --exclude='distillation' \
34
- --exclude='benchmarks' \
35
- --exclude='**/slurm_logs' \
36
- ./ ${APPTAINER_ROOTFS}/opt/foundry/
37
-
38
- echo "Repository copied successfully."
39
-
40
- %post
41
- echo "Installing packages into container..."
42
-
43
- # Do editable installs so everything works as in development
44
- cd /opt/foundry
45
-
46
- # Install foundry (editable, no dependencies - already in base image)
47
- echo "Installing foundry..."
48
- uv pip install --system --break-system-packages --no-deps -e .[all]
49
-
50
- # Install rfd3 (editable, no dependencies - already in base image)
51
- echo "Installing rfd3..."
52
- cd /opt/foundry/models/rfd3
53
- uv pip install --system --break-system-packages --no-deps -e .
54
-
55
- # Install atomworks (editable, no dependencies - already in base image)
56
- echo "Installing atomworks..."
57
- cd /opt/foundry/lib/atomworks
58
- uv pip install --system --break-system-packages --no-deps -e .
59
-
60
- # Cleanup caches only
61
- echo "Cleaning up caches..."
62
- uv cache clean
63
- pip cache purge
64
- apt-get clean
65
- rm -rf /var/lib/apt/lists/* 2>/dev/null || true
66
- rm -rf /root/.cache 2>/dev/null || true
67
-
68
- echo "Package installation complete."
69
-
70
- %runscript
71
- # Simple runscript - just run Python with any arguments
72
- exec python "$@"
73
-
74
- %help
75
- RFDiffusion3 (RFD3) full production container.
76
-
77
- Contains foundry, rfd3, and atomworks packages installed in site-packages.
78
- All dependencies are included from the base rf3-dev container.
79
-
80
- Usage:
81
- apptainer exec --nvccli rfd3-full.sif rfd3 run_inference inputs="example.json"
@@ -1,6 +0,0 @@
1
- This directory contains scripts that are not to be run directly by the user.
2
- They are [SHEBANG scripts](https://en.wikipedia.org/wiki/Shebang_(Unix)) that are used to run the appropriate apptainer container.
3
-
4
- For example, the script `rf3_exec.sh` is used to run the RF3 apptainer container with the latest apptainer image stored locally or at the IPD.
5
-
6
- The shebang lines (`#!/bin/bash` ...) at the top of entry point scripts like `train.py` redirect the system to here to find the correct apptainer container.
@@ -1,129 +0,0 @@
1
- #!/usr/bin/bash
2
-
3
- ###################
4
- # You can add the path to this file as the shebang line in your python script.
5
- # Then by default, the python script will be executed with the python interpreter
6
- # in the SIF_PATH container. Here, we launch the container with nvidia gpu and slurm support.
7
- #
8
- # Example shebang: #!/usr/bin/env -S /bin/sh -c '"$(dirname "$0")/.ipd/shebang/mpnn_exec.sh" "$0" "$@"'
9
- ###################
10
-
11
- # Let the user know this script is setting things up behind the scene
12
- SCRIPT_PATH=$(realpath $0)
13
- SCRIPT_DIR=$(dirname $SCRIPT_PATH)
14
- echo '################## Start shebang info ##################'
15
- echo "The file $SCRIPT_PATH is being run as a shebang executable.
16
- It will...
17
-
18
- 1. Add 'src/foundry', 'models/mpnn/src', and 'lib/atomworks/src' to your PYTHONPATH.
19
- 2. Run your python script from the right container, which contains all dependencies.
20
- 3. Launch the container with slurm and nvidia gpu support."
21
-
22
- # Extract the path to the Python script from the arguments
23
- PYTHON_SCRIPT=$(realpath "$1")
24
- shift
25
-
26
- # Find repository root by looking for .project-root file
27
- find_repo_root() {
28
- local current_dir="$1"
29
- while [ "$current_dir" != "/" ]; do
30
- if [ -f "$current_dir/.project-root" ]; then
31
- echo "$current_dir"
32
- return 0
33
- fi
34
- current_dir="$(dirname "$current_dir")"
35
- done
36
- return 1
37
- }
38
-
39
- echo
40
- echo "Searching for repository root directory..."
41
- REPO_ROOT=$(find_repo_root "$(dirname "$PYTHON_SCRIPT")")
42
- if [ -z "$REPO_ROOT" ]; then
43
- echo "Error: Could not find .project-root file in any parent directory"
44
- exit 1
45
- else
46
- echo "... found repository root at '$REPO_ROOT'"
47
- fi
48
-
49
- # Function to add a directory to PYTHONPATH if it's not already included
50
- add_to_pythonpath() {
51
- local dir_path="$1"
52
- if [[ ":$PYTHONPATH:" != *":$dir_path:"* ]]; then
53
- export PYTHONPATH="$dir_path:$PYTHONPATH"
54
- echo "Added '$dir_path' to PYTHONPATH."
55
- else
56
- echo "'$dir_path' is already in PYTHONPATH."
57
- fi
58
- }
59
-
60
- # Add foundry, mpnn, and atomworks to PYTHONPATH
61
- echo
62
- echo "Adding foundry, MPNN, and atomworks to PYTHONPATH..."
63
- FOUNDRY_PATH="$REPO_ROOT/src"
64
- MPNN_PATH="$REPO_ROOT/models/mpnn/src"
65
- ATOMWORKS_PATH="$REPO_ROOT/lib/atomworks/src"
66
- add_to_pythonpath "$FOUNDRY_PATH"
67
- add_to_pythonpath "$MPNN_PATH"
68
- add_to_pythonpath "$ATOMWORKS_PATH"
69
-
70
- echo
71
- echo "Fetching the appropriate apptainer image..."
72
-
73
- SIF_PATH="$REPO_ROOT/.ipd/apptainer/rf3-dev.sif"
74
-
75
- echo "... looking for a local apptainer image at '$SIF_PATH'"
76
- if [ ! -f "$SIF_PATH" ]; then
77
- echo "... apptainer not found. To build it, run: apptainer build .ipd/apptainer/rf3-dev.sif .ipd/apptainer/rf3-dev.def"
78
- echo "Attempting to run $PYTHON_SCRIPT with $(which python)"
79
- SIF_PATH=""
80
- fi
81
-
82
- # Function to print debug=mode warning
83
- print_debug_warning() {
84
- echo
85
- echo "###############################################################################"
86
- echo "# #"
87
- echo "# ⚠️ WARNING ⚠️ #"
88
- echo "# RUNNING WITH DEBUGPY ON PORT $DEBUG_PORT #"
89
- echo "# DON'T FORGET TO ATTACH A DEBUGGER #"
90
- echo "# #"
91
- echo "###############################################################################"
92
- echo
93
- }
94
-
95
- if [ -n "$DEBUG_PORT" ]; then
96
- print_debug_warning
97
- python_cmd="python -m debugpy --listen $DEBUG_PORT --wait-for-client"
98
- else
99
- python_cmd="python"
100
- echo
101
- fi
102
-
103
- if [ ! -z $SIF_PATH ]; then
104
- echo "Running $PYTHON_SCRIPT with apptainer: $SIF_PATH."
105
-
106
- # Determine GPU binding method: prefer --nvccli, fallback to --nv, then no GPU
107
- GPU_FLAG=""
108
- if command -v nvidia-container-cli &> /dev/null && [ -c /dev/nvidiactl ] 2>/dev/null; then
109
- GPU_FLAG="--nvccli"
110
- echo "Using --nvccli for GPU support"
111
- elif [ -c /dev/nvidiactl ] 2>/dev/null; then
112
- GPU_FLAG="--nv"
113
- echo "Using --nv for GPU support"
114
- else
115
- echo "No GPU detected, running without GPU support"
116
- fi
117
-
118
- echo '################## End shebang info ####################'
119
- echo
120
- /usr/bin/apptainer exec $GPU_FLAG --slurm \
121
- --bind "$REPO_ROOT:$REPO_ROOT" \
122
- --env PYTHONPATH="\$PYTHONPATH:$PYTHONPATH" \
123
- $SIF_PATH $python_cmd "$PYTHON_SCRIPT" "$@"
124
- else
125
- echo "Running $PYTHON_SCRIPT with python: $(which python)"
126
- echo '################## End shebang info ####################'
127
- echo
128
- $python_cmd "$PYTHON_SCRIPT" "$@"
129
- fi
@@ -1,129 +0,0 @@
1
- #!/usr/bin/bash
2
-
3
- ###################
4
- # You can add the path to this file as the shebang line in your python script.
5
- # Then by default, the python script will be executed with the python interpreter
6
- # in the SIF_PATH container. Here, we launch the container with nvidia gpu and slurm support.
7
- #
8
- # Example shebang: #!/usr/bin/env -S /bin/sh -c '"$(dirname "$0")/.ipd/shebang/rf3_exec.sh" "$0" "$@"'
9
- ###################
10
-
11
- # Let the user know this script is setting things up behind the scene
12
- SCRIPT_PATH=$(realpath $0)
13
- SCRIPT_DIR=$(dirname $SCRIPT_PATH)
14
- echo '################## Start shebang info ##################'
15
- echo "The file $SCRIPT_PATH is being run as a shebang executable.
16
- It will...
17
-
18
- 1. Add 'src/foundry', 'models/rf3/src', and 'lib/atomworks/src' to your PYTHONPATH.
19
- 2. Run your python script from the right container, which contains all dependencies.
20
- 3. Launch the container with slurm and nvidia gpu support."
21
-
22
- # Extract the path to the Python script from the arguments
23
- PYTHON_SCRIPT=$(realpath "$1")
24
- shift
25
-
26
- # Find repository root by looking for .project-root file
27
- find_repo_root() {
28
- local current_dir="$1"
29
- while [ "$current_dir" != "/" ]; do
30
- if [ -f "$current_dir/.project-root" ]; then
31
- echo "$current_dir"
32
- return 0
33
- fi
34
- current_dir="$(dirname "$current_dir")"
35
- done
36
- return 1
37
- }
38
-
39
- echo
40
- echo "Searching for repository root directory..."
41
- REPO_ROOT=$(find_repo_root "$(dirname "$PYTHON_SCRIPT")")
42
- if [ -z "$REPO_ROOT" ]; then
43
- echo "Error: Could not find .project-root file in any parent directory"
44
- exit 1
45
- else
46
- echo "... found repository root at '$REPO_ROOT'"
47
- fi
48
-
49
- # Function to add a directory to PYTHONPATH if it's not already included
50
- add_to_pythonpath() {
51
- local dir_path="$1"
52
- if [[ ":$PYTHONPATH:" != *":$dir_path:"* ]]; then
53
- export PYTHONPATH="$dir_path:$PYTHONPATH"
54
- echo "Added '$dir_path' to PYTHONPATH."
55
- else
56
- echo "'$dir_path' is already in PYTHONPATH."
57
- fi
58
- }
59
-
60
- # Add foundry, rf3, and atomworks to PYTHONPATH
61
- echo
62
- echo "Adding foundry, RF3, and atomworks to PYTHONPATH..."
63
- FOUNDRY_PATH="$REPO_ROOT/src"
64
- RF3_PATH="$REPO_ROOT/models/rf3/src"
65
- ATOMWORKS_PATH="$REPO_ROOT/lib/atomworks/src"
66
- add_to_pythonpath "$FOUNDRY_PATH"
67
- add_to_pythonpath "$RF3_PATH"
68
- add_to_pythonpath "$ATOMWORKS_PATH"
69
-
70
- echo
71
- echo "Fetching the appropriate apptainer image..."
72
-
73
- SIF_PATH="$REPO_ROOT/.ipd/apptainer/rf3-dev.sif"
74
-
75
- echo "... looking for a local apptainer image at '$SIF_PATH'"
76
- if [ ! -f "$SIF_PATH" ]; then
77
- echo "... apptainer not found. To build it, run: apptainer build .ipd/apptainer/rf3-dev.sif .ipd/apptainer/rf3-dev.def"
78
- echo "Attempting to run $PYTHON_SCRIPT with $(which python)"
79
- SIF_PATH=""
80
- fi
81
-
82
- # Function to print debug=mode warning
83
- print_debug_warning() {
84
- echo
85
- echo "###############################################################################"
86
- echo "# #"
87
- echo "# ⚠️ WARNING ⚠️ #"
88
- echo "# RUNNING WITH DEBUGPY ON PORT $DEBUG_PORT #"
89
- echo "# DON'T FORGET TO ATTACH A DEBUGGER #"
90
- echo "# #"
91
- echo "###############################################################################"
92
- echo
93
- }
94
-
95
- if [ -n "$DEBUG_PORT" ]; then
96
- print_debug_warning
97
- python_cmd="python -m debugpy --listen $DEBUG_PORT --wait-for-client"
98
- else
99
- python_cmd="python"
100
- echo
101
- fi
102
-
103
- if [ ! -z $SIF_PATH ]; then
104
- echo "Running $PYTHON_SCRIPT with apptainer: $SIF_PATH."
105
-
106
- # Determine GPU binding method: prefer --nvccli, fallback to --nv, then no GPU
107
- GPU_FLAG=""
108
- if command -v nvidia-container-cli &> /dev/null && [ -c /dev/nvidiactl ] 2>/dev/null; then
109
- GPU_FLAG="--nvccli"
110
- echo "Using --nvccli for GPU support"
111
- elif [ -c /dev/nvidiactl ] 2>/dev/null; then
112
- GPU_FLAG="--nv"
113
- echo "Using --nv for GPU support"
114
- else
115
- echo "No GPU detected, running without GPU support"
116
- fi
117
-
118
- echo '################## End shebang info ####################'
119
- echo
120
- /usr/bin/apptainer exec $GPU_FLAG --slurm \
121
- --bind "$REPO_ROOT:$REPO_ROOT" \
122
- --env PYTHONPATH="\$PYTHONPATH:$PYTHONPATH" \
123
- $SIF_PATH $python_cmd "$PYTHON_SCRIPT" "$@"
124
- else
125
- echo "Running $PYTHON_SCRIPT with python: $(which python)"
126
- echo '################## End shebang info ####################'
127
- echo
128
- $python_cmd "$PYTHON_SCRIPT" "$@"
129
- fi