RosettaCommons / RosettaCommons/RFdiffusion

Partial diffusion for improved binder design

Open
#326 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
3.1k
Forks
644
PR merge metrics
No merged PRs in 30d

Description

Hi,

Problem/Context
I am interested in designing a better binder for a receptor. I have a PDB file for the current state-of-the-art binder (A1-83) bound to the receptor (B1-354). I am thinking of using partial diffusion in order to generate new binders that are hopefully better binders than the current state-of-the-art. This problem is similar to the one from the Baker group's recent paper (see Partial Diffusion description in Supplementary Materials).

Current implementation & Questions
To mitigate risk, I am interested in specifically focusing the partial diffusion on the residues that are shown to be in close proximity to the receptor in the PDB. These close residues of the binder are B1-12,B30-50. Currently, this is my toy function to run...

../../../RFdiffusion/scripts/run_inference.py inference.output_prefix=outputs/design_partialdiffusion_peptidewithsequence_v1 inference.input_pdb=input_pdbs/fold_2025_02_22_22_50_model_0.pdb 'contigmap.contigs=[83-83/0 B1-354]' diffuser.partial_T=25 inference.num_designs=10 'contigmap.provide_seq=[12-28,50-82]' 'ppi.hotspot_res=[B22,B179,B266]' 'potentials.guiding_potentials=interface_ncontacts' 'potentials.guide_decay=quadratic'

As you can see from the above function, I am considering including and would appreciate help thinking through the arguments...

  • 'contigmap.contigs=[83-83/0 B1-354]': My understanding is that the partial diffusion will only be over the 83 residues of the binder here. Is this more appropriate for my use case than partially diffusing over both the receptor and binder?
  • 'contigmap.provide_seq=[12-28,50-82]': These residues are the ones on the binder that are not close to the receptor, so don't seem as necessary for binding. Is this appropriate to include for this argument? Should I also include all the residues of the receptor here? Perhaps I misunderstand its purpose.
  • 'ppi.hotspot_res=[B22,B179,B266]': to specify the hotspot residues on the receptor itself that are in close proximity to the binder in my PDB. Is this appropriate here? I saw this issue but don't know if it was solved.
  • ‘potentials.guiding_potentials=interface_ncontacts’ & ‘potentials.guide_decay=quadratic’: This is motivated by methods of the recent Baker paper mentioned above. Is this the appropriate implementation for auxiliary potentials? Could I also include the hotspot residues on the receptor for the argument 'potentials.olig_custom_contact'?

Thank you for your help!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with scripts/run_inference.py and trace how contigmap.contigs, contigmap.provide_seq, ppi.hotspot_res, and the guiding-potential arguments are handled. The issue needs maintainer clarification before implementation; done would be a confirmed, reproducible partial-diffusion configuration or a specific scoped change.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
bioinformatics, machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.