RF Diffusion Contigmap Config¶
Builds a Contigmap configuration JSON for RF Diffusion. It parses user-friendly string inputs that describe which sequence/structure regions to mask or keep, as well as the intended sequence length or range. The result is a structured config dictionary to plug into the RF Diffusion node.

Usage¶
Use this node when preparing RF Diffusion runs that need explicit control over masked regions (sequence or structure), selective unmasking, and sequence length constraints. Connect its output to the RF Diffusion node's contigmap_config input. In unconditional runs, typically only the length is set and other fields are left empty.
Inputs¶
| Field | Required | Type | Description | Example |
|---|---|---|---|---|
| inpaint_seq | True | STRING | Sequence regions to mask (same format style as contigs). Use chain/range syntax for conditional scenarios. | A10-25/5-10/A60-75 |
| inpaint_str | True | STRING | 3D structure regions to mask (by chain and residue index range). | B165-178 |
| inpaint_str_helix | True | STRING | Secondary-structure helix regions to mask (comma-separated inclusive ranges). | 10-20,30-40 |
| inpaint_str_strand | True | STRING | Secondary-structure beta-strand regions to mask (comma-separated inclusive ranges). | 50-60,70-80 |
| inpaint_str_loop | True | STRING | Secondary-structure loop regions to mask (comma-separated inclusive ranges). | 25-29,65-69 |
| provide_seq | True | STRING | Sequence regions to explicitly unmask (keep provided sequence). Useful to fix parts of the diffused regions. | 172-177,200-205 |
| length | True | STRING | Desired sequence length or a range. For unconditional designs, specify only length or a range. | 100-150 |
Outputs¶
| Field | Type | Description | Example |
|---|---|---|---|
| contigmap_config | JSON | Contigmap configuration to pass into RF Diffusion. | {'inpaint_seq': 'A10-25/5-10/A60-75', 'inpaint_str': 'B165-178', 'inpaint_str_helix': '10-20,30-40', 'inpaint_str_strand': '50-60,70-80', 'inpaint_str_loop': '25-29,65-69', 'provide_seq': '172-177,200-205', 'length': '100-150'} |
Important Notes¶
- Empty strings are allowed for all inputs; they will be treated as not set.
- In unconditional generation, only length should be provided; other fields should be left empty.
- Ranges are inclusive. Multiple ranges are typically comma-separated; complex sequence layouts may use chain/range syntax similar to contigs.
- Secondary-structure mask fields (helix/strand/loop) are supported by newer RF Diffusion updates; ensure your backend supports them.
- Ensure your region specifications match any input structure and overall contigs layout used in RF Diffusion.
Troubleshooting¶
- Validation error: Check formatting of ranges and chain IDs (e.g., use A10-25 or comma-separated ranges like 10-20,30-40).
- Unconditional run rejected: Clear all mask fields and only provide length.
- Conditional run issues: Ensure regions align with your input PDB chains and residue numbering.
- Unexpected behavior with secondary-structure masks: Remove helix/strand/loop masks to test baseline, then reintroduce gradually.
- Downstream RF Diffusion errors: Verify contigmap_config matches the contigs strategy used in the RF Diffusion node.