Skip to content

Bug fix: resolved the issue where some identical chains in a homo-oli…#140

Open
yx0516 wants to merge 1 commit intoHannesStark:mainfrom
yx0516:feature/fix_homooligomer_label_seq
Open

Bug fix: resolved the issue where some identical chains in a homo-oli…#140
yx0516 wants to merge 1 commit intoHannesStark:mainfrom
yx0516:feature/fix_homooligomer_label_seq

Conversation

@yx0516
Copy link
Copy Markdown

@yx0516 yx0516 commented Dec 28, 2025

When designing specific residues in a known homooligomer, the pipeline occasionally outputs a structure that contains only one copy of the identical chains, triggering an error.
For example, the below structure has five chains: A, B, C, D, E, where A, B and C form a homooligomer. After the first design step, the returned model keeps only chains A, D and E, while chains B and C are silently dropped. The resulting error message is as follows:
File "/data/PRG/tools/boltz/apps/boltzgen/src/boltzgen/task/predict/data_from_generated.py", line 321, in getitem_from_paths
feat = self.get_feat(generated_path, design_mask, ss_type, binding_type)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/data/PRG/tools/boltz/apps/boltzgen/src/boltzgen/task/predict/data_from_generated.py", line 379, in get_feat
design_chains = np.unique(asym_id[chain_design_mask])
~~~~~~~^^^^^^^^^^^^^^^^^^^
IndexError: boolean index did not match indexed array along axis 0; size of axis is 391 but size of corresponding boolean axis is 715

The yaml file are as following:

design_spec.yaml

The reason is that: in the parse_pdb function (src/boltzgen/data/parse/pdb_parser.py), label_seq was assigned only to the first sub-chain (chain A) of an entity, while the remaining identical sub-chains (B and C) were left without label_seq.
After adding the corresponding fix, the issue was resolved.

…gomeric structure were ignored during design.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant