RosettaCommons / RFdiffusion

Code for running RFdiffusion
Other
1.81k stars 352 forks source link

TypeError: __init__() missing 2 required positional arguments: 'd_time_emb' and 'd_time_emb_proj' #167

Open johnnytam100 opened 12 months ago

johnnytam100 commented 12 months ago

Hi RFDiffusion! I am meeting an error by running the examples/design_ppi.sh which said missing 2 required positional arguments: 'd_time_emb' and 'd_time_emb_proj'

Any idea how to deal with this?

(SE3nv) jupyter@tam-notebook:~/test/test_RFDiffusion/RFdiffusion$ ./scripts/run_inference.py inference.output_prefix=example_outputs/design_ppi inference.input_pdb=input_pdbs/insulin_target.pdb 'contigmap.contigs=[A1-150/0 70-100]' 'ppi.hotspot_res=[A59,A83,A91]' inference.num_designs=10 denoiser.noise_scale_ca=0 denoiser.noise_scale_frame=0

[2023-12-07 05:54:20,274][__main__][INFO] - Found GPU with device_name Tesla T4. Will run RFdiffusion on Tesla T4
Reading models from /home/jupyter/test/test_RFDiffusion/RFdiffusion/rfdiffusion/inference/../../models
[2023-12-07 05:54:20,275][rfdiffusion.inference.model_runners][INFO] - Reading checkpoint from /home/jupyter/test/test_RFDiffusion/RFdiffusion/rfdiffusion/inference/../../models/Complex_base_ckpt.pt
This is inf_conf.ckpt_path
/home/jupyter/test/test_RFDiffusion/RFdiffusion/rfdiffusion/inference/../../models/Complex_base_ckpt.pt
Assembling -model, -diffuser and -preprocess configs from checkpoint
USING MODEL CONFIG: self._conf[model][n_extra_block] = 4
USING MODEL CONFIG: self._conf[model][n_main_block] = 32
USING MODEL CONFIG: self._conf[model][n_ref_block] = 4
USING MODEL CONFIG: self._conf[model][d_msa] = 256
USING MODEL CONFIG: self._conf[model][d_msa_full] = 64
USING MODEL CONFIG: self._conf[model][d_pair] = 128
USING MODEL CONFIG: self._conf[model][d_templ] = 64
USING MODEL CONFIG: self._conf[model][n_head_msa] = 8
USING MODEL CONFIG: self._conf[model][n_head_pair] = 4
USING MODEL CONFIG: self._conf[model][n_head_templ] = 4
USING MODEL CONFIG: self._conf[model][d_hidden] = 32
USING MODEL CONFIG: self._conf[model][d_hidden_templ] = 32
USING MODEL CONFIG: self._conf[model][p_drop] = 0.15
USING MODEL CONFIG: self._conf[model][SE3_param_full] = {'num_layers': 1, 'num_channels': 32, 'num_degrees': 2, 'n_heads': 4, 'div': 4, 'l0_in_features': 8, 'l0_out_features': 8, 'l1_in_features': 3, 'l1_out_features': 2, 'num_edge_features': 32}
USING MODEL CONFIG: self._conf[model][SE3_param_topk] = {'num_layers': 1, 'num_channels': 32, 'num_degrees': 2, 'n_heads': 4, 'div': 4, 'l0_in_features': 64, 'l0_out_features': 64, 'l1_in_features': 3, 'l1_out_features': 2, 'num_edge_features': 64}
USING MODEL CONFIG: self._conf[model][freeze_track_motif] = False
USING MODEL CONFIG: self._conf[model][use_motif_timestep] = True
USING MODEL CONFIG: self._conf[diffuser][T] = 50
USING MODEL CONFIG: self._conf[diffuser][b_0] = 0.01
USING MODEL CONFIG: self._conf[diffuser][b_T] = 0.07
USING MODEL CONFIG: self._conf[diffuser][schedule_type] = linear
USING MODEL CONFIG: self._conf[diffuser][so3_type] = igso3
USING MODEL CONFIG: self._conf[diffuser][crd_scale] = 0.25
USING MODEL CONFIG: self._conf[diffuser][so3_schedule_type] = linear
USING MODEL CONFIG: self._conf[diffuser][min_b] = 1.5
USING MODEL CONFIG: self._conf[diffuser][max_b] = 2.5
USING MODEL CONFIG: self._conf[diffuser][min_sigma] = 0.02
USING MODEL CONFIG: self._conf[diffuser][max_sigma] = 1.5
USING MODEL CONFIG: self._conf[preprocess][sidechain_input] = False
USING MODEL CONFIG: self._conf[preprocess][motif_sidechain_input] = True
USING MODEL CONFIG: self._conf[preprocess][d_t1d] = 24
USING MODEL CONFIG: self._conf[preprocess][d_t2d] = 44
USING MODEL CONFIG: self._conf[preprocess][prob_self_cond] = 0.5
USING MODEL CONFIG: self._conf[preprocess][str_self_cond] = True
USING MODEL CONFIG: self._conf[preprocess][predict_previous] = False
Error executing job with overrides: ['inference.output_prefix=example_outputs/design_ppi', 'inference.input_pdb=input_pdbs/insulin_target.pdb', 'contigmap.contigs=[A1-150/0 70-100]', 'ppi.hotspot_res=[A59,A83,A91]', 'inference.num_designs=10', 'denoiser.noise_scale_ca=0', 'denoiser.noise_scale_frame=0']
Traceback (most recent call last):
  File "/home/jupyter/test/test_RFDiffusion/RFdiffusion/./scripts/run_inference.py", line 54, in main
    sampler = iu.sampler_selector(conf)
  File "/home/jupyter/test/test_RFDiffusion/RFdiffusion/rfdiffusion/inference/utils.py", line 521, in sampler_selector
    sampler = model_runners.SelfConditioning(conf)
  File "/home/jupyter/test/test_RFDiffusion/RFdiffusion/rfdiffusion/inference/model_runners.py", line 37, in __init__
    self.initialize(conf)
  File "/home/jupyter/test/test_RFDiffusion/RFdiffusion/rfdiffusion/inference/model_runners.py", line 106, in initialize
    self.model = self.load_model()
  File "/home/jupyter/test/test_RFDiffusion/RFdiffusion/rfdiffusion/inference/model_runners.py", line 226, in load_model
    model = RoseTTAFoldModule(**self._conf.model, d_t1d=self.d_t1d, d_t2d=self.d_t2d, T=self._conf.diffuser.T).to(self.device)
TypeError: __init__() missing 2 required positional arguments: 'd_time_emb' and 'd_time_emb_proj'

Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace.
Guo-Stone commented 11 months ago

I also met this problem when I ran this code. But I have the previous version of RFdiffusion. I add two lines to config/inference/base.yaml file, and it works. I hope I can help you. Weixin Image_20231227144308