boltz-vsynthes 1.0.4__py3-none-any.whl → 1.0.5__py3-none-any.whl

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.
boltz/main.py CHANGED
@@ -669,9 +669,25 @@ def process_inputs(
669
669
  processed_dir = out_dir / "processed"
670
670
  processed_dir.mkdir(parents=True, exist_ok=True)
671
671
 
672
- # Create structure directory
672
+ # Create central directories
673
673
  structure_dir = processed_dir / "structures"
674
+ msa_dir = processed_dir / "msa"
675
+ records_dir = processed_dir / "records"
676
+ processed_msa_dir = processed_dir / "processed" / "msa"
677
+ processed_constraints_dir = processed_dir / "processed" / "constraints"
678
+ processed_templates_dir = processed_dir / "processed" / "templates"
679
+ processed_mols_dir = processed_dir / "processed" / "mols"
680
+ predictions_dir = processed_dir / "predictions"
681
+
682
+ # Create all central directories
674
683
  structure_dir.mkdir(parents=True, exist_ok=True)
684
+ msa_dir.mkdir(parents=True, exist_ok=True)
685
+ records_dir.mkdir(parents=True, exist_ok=True)
686
+ processed_msa_dir.mkdir(parents=True, exist_ok=True)
687
+ processed_constraints_dir.mkdir(parents=True, exist_ok=True)
688
+ processed_templates_dir.mkdir(parents=True, exist_ok=True)
689
+ processed_mols_dir.mkdir(parents=True, exist_ok=True)
690
+ predictions_dir.mkdir(parents=True, exist_ok=True)
675
691
 
676
692
  # Process each input file in its own directory
677
693
  for input_file in data:
@@ -680,22 +696,23 @@ def process_inputs(
680
696
  file_out_dir.mkdir(parents=True, exist_ok=True)
681
697
 
682
698
  # Create output directories for this file
683
- msa_dir = file_out_dir / "msa"
684
- records_dir = file_out_dir / "processed" / "records"
685
- processed_msa_dir = file_out_dir / "processed" / "msa"
686
- processed_constraints_dir = file_out_dir / "processed" / "constraints"
687
- processed_templates_dir = file_out_dir / "processed" / "templates"
688
- processed_mols_dir = file_out_dir / "processed" / "mols"
689
- predictions_dir = file_out_dir / "predictions"
690
-
699
+ file_msa_dir = file_out_dir / "msa"
700
+ file_records_dir = file_out_dir / "processed" / "records"
701
+ file_processed_msa_dir = file_out_dir / "processed" / "msa"
702
+ file_processed_constraints_dir = file_out_dir / "processed" / "constraints"
703
+ file_processed_templates_dir = file_out_dir / "processed" / "templates"
704
+ file_processed_mols_dir = file_out_dir / "processed" / "mols"
705
+ file_predictions_dir = file_out_dir / "predictions"
706
+
707
+ # Create all file-specific directories
691
708
  file_out_dir.mkdir(parents=True, exist_ok=True)
692
- msa_dir.mkdir(parents=True, exist_ok=True)
693
- records_dir.mkdir(parents=True, exist_ok=True)
694
- processed_msa_dir.mkdir(parents=True, exist_ok=True)
695
- processed_constraints_dir.mkdir(parents=True, exist_ok=True)
696
- processed_templates_dir.mkdir(parents=True, exist_ok=True)
697
- processed_mols_dir.mkdir(parents=True, exist_ok=True)
698
- predictions_dir.mkdir(parents=True, exist_ok=True)
709
+ file_msa_dir.mkdir(parents=True, exist_ok=True)
710
+ file_records_dir.mkdir(parents=True, exist_ok=True)
711
+ file_processed_msa_dir.mkdir(parents=True, exist_ok=True)
712
+ file_processed_constraints_dir.mkdir(parents=True, exist_ok=True)
713
+ file_processed_templates_dir.mkdir(parents=True, exist_ok=True)
714
+ file_processed_mols_dir.mkdir(parents=True, exist_ok=True)
715
+ file_predictions_dir.mkdir(parents=True, exist_ok=True)
699
716
 
700
717
  # Load CCD
701
718
  if boltz2:
@@ -708,27 +725,34 @@ def process_inputs(
708
725
  process_input_partial = partial(
709
726
  process_input,
710
727
  ccd=ccd,
711
- msa_dir=msa_dir,
728
+ msa_dir=file_msa_dir,
712
729
  mol_dir=mol_dir,
713
730
  boltz2=boltz2,
714
731
  use_msa_server=use_msa_server,
715
732
  msa_server_url=msa_server_url,
716
733
  msa_pairing_strategy=msa_pairing_strategy,
717
734
  max_msa_seqs=max_msa_seqs,
718
- processed_msa_dir=processed_msa_dir,
719
- processed_constraints_dir=processed_constraints_dir,
720
- processed_templates_dir=processed_templates_dir,
721
- processed_mols_dir=processed_mols_dir,
735
+ processed_msa_dir=file_processed_msa_dir,
736
+ processed_constraints_dir=file_processed_constraints_dir,
737
+ processed_templates_dir=file_processed_templates_dir,
738
+ processed_mols_dir=file_processed_mols_dir,
722
739
  structure_dir=structure_dir, # Use the central structure directory
723
- records_dir=records_dir,
740
+ records_dir=file_records_dir,
724
741
  )
725
742
 
726
743
  # Process this input file
727
744
  click.echo(f"Processing {input_file.name}")
728
745
  process_input_partial(input_file)
729
746
 
747
+ # Copy MSA files to central MSA directory
748
+ for msa_file in file_processed_msa_dir.glob("*.npz"):
749
+ target_msa_file = msa_dir / msa_file.name
750
+ if not target_msa_file.exists():
751
+ import shutil
752
+ shutil.copy2(msa_file, target_msa_file)
753
+
730
754
  # Load records for this file
731
- records = [Record.load(p) for p in records_dir.glob("*.json")]
755
+ records = [Record.load(p) for p in file_records_dir.glob("*.json")]
732
756
  all_records.extend(records)
733
757
 
734
758
  # Create combined manifest
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: boltz-vsynthes
3
- Version: 1.0.4
3
+ Version: 1.0.5
4
4
  Summary: Boltz for V-Synthes
5
5
  Requires-Python: <3.13,>=3.10
6
6
  Description-Content-Type: text/markdown
@@ -1,5 +1,5 @@
1
1
  boltz/__init__.py,sha256=F_-so3S40iZrSZ89Ge4TS6aZqwWyZXq_H4AXGDlbA_g,187
2
- boltz/main.py,sha256=ZNaNplHLMr9OmLMhbivgducwbGCrn8g67WRPpuhh9GA,40084
2
+ boltz/main.py,sha256=sF_fNSzOElFhnlUBrnRidY1Dg_dduIHl23CREMo_ICc,41374
3
3
  boltz/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  boltz/data/const.py,sha256=1M-88Z6HkfKY6MkNtqcj3b9P-oX9xEXluh3qM_u8dNU,26779
5
5
  boltz/data/mol.py,sha256=maOpPHEGX1VVXCIFY6pQNGF7gUBZPAfgSvuPf2QO1yc,34268
@@ -104,9 +104,9 @@ boltz/model/optim/scheduler.py,sha256=nB4jz0CZ4pR4n08LQngExL_pNycIdYI8AXVoHPnZWQ
104
104
  boltz/model/potentials/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
105
  boltz/model/potentials/potentials.py,sha256=vev8Vjfs-ML1hyrdv_R8DynG4wSFahJ6nzPWp7CYQqw,17507
106
106
  boltz/model/potentials/schedules.py,sha256=m7XJjfuF9uTX3bR9VisXv1rvzJjxiD8PobXRpcBBu1c,968
107
- boltz_vsynthes-1.0.4.dist-info/licenses/LICENSE,sha256=8GZ_1eZsUeG6jdqgJJxtciWzADfgLEV4LY8sKUOsJhc,1102
108
- boltz_vsynthes-1.0.4.dist-info/METADATA,sha256=5oK6_h_oPquPVFGAwT9rRFOd7F9RJ8jrC7UGKR8tRVQ,7171
109
- boltz_vsynthes-1.0.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
110
- boltz_vsynthes-1.0.4.dist-info/entry_points.txt,sha256=n5a5I35ntu9lmyr16oZgHPFY0b0YxjiixY7m7nbMTLc,41
111
- boltz_vsynthes-1.0.4.dist-info/top_level.txt,sha256=MgU3Jfb-ctWm07YGMts68PMjSh9v26D0gfG3dFRmVFA,6
112
- boltz_vsynthes-1.0.4.dist-info/RECORD,,
107
+ boltz_vsynthes-1.0.5.dist-info/licenses/LICENSE,sha256=8GZ_1eZsUeG6jdqgJJxtciWzADfgLEV4LY8sKUOsJhc,1102
108
+ boltz_vsynthes-1.0.5.dist-info/METADATA,sha256=-MCCHAI1TOA1tlDaX-X6npP-HgYgJZht77XK-J9CeAI,7171
109
+ boltz_vsynthes-1.0.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
110
+ boltz_vsynthes-1.0.5.dist-info/entry_points.txt,sha256=n5a5I35ntu9lmyr16oZgHPFY0b0YxjiixY7m7nbMTLc,41
111
+ boltz_vsynthes-1.0.5.dist-info/top_level.txt,sha256=MgU3Jfb-ctWm07YGMts68PMjSh9v26D0gfG3dFRmVFA,6
112
+ boltz_vsynthes-1.0.5.dist-info/RECORD,,