gelnesr commited on
Commit
613a8b9
·
verified ·
1 Parent(s): d8524ba

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +5 -5
app.py CHANGED
@@ -140,7 +140,7 @@ def handle_name(name=None, pdb_input=None, model_version="ESM3"):
140
  return f'{pdb_name}-Dyna1{"" if model_version == "ESM3" else "-ESM2"}'
141
 
142
  @spaces.GPU(duration=300)
143
- def run_model(model_version='ESM2', seq_input=None, struct_input=None, sequence_id=None):
144
  if model_version == "ESM3":
145
  logits = model((seq_input, struct_input), sequence_id)
146
  else:
@@ -159,11 +159,11 @@ def predict_dynamics(sequence=None, pdb_input=None, chain_id='A', use_pdb_seq=Fa
159
  base_name = handle_name(name, pdb_input, model_version)
160
 
161
  if model_version == "ESM3":
162
- model = ESM_model(method='esm3').to(DEVICE)
163
- model.load_state_dict(torch.load('Dyna-1/model/weights/dyna1.pt', map_location=DEVICE), strict=False)
164
  else:
165
  model = ESM_model(method='esm2', nheads=8, nlayers=12, layer=30).to(DEVICE)
166
- model.load_state_dict(torch.load('Dyna-1/model/weights/dyna1-esm2.pt', map_location=DEVICE), strict=False)
167
 
168
  model.eval()
169
 
@@ -194,7 +194,7 @@ def predict_dynamics(sequence=None, pdb_input=None, chain_id='A', use_pdb_seq=Fa
194
  if not (sequence or (pdb_input and model_version == "ESM3")):
195
  raise ValueError('Please provide a sequence' + (' or structure input' if model_version == "ESM3" else ''))
196
 
197
- logits = run_model(model_version, seq_input, struct_input, sequence_id)
198
 
199
  probabilities = utils.prob_adjusted(logits).cpu().detach().numpy()
200
 
 
140
  return f'{pdb_name}-Dyna1{"" if model_version == "ESM3" else "-ESM2"}'
141
 
142
  @spaces.GPU(duration=300)
143
+ def run_model(model, model_version='ESM2', seq_input=None, struct_input=None, sequence_id=None):
144
  if model_version == "ESM3":
145
  logits = model((seq_input, struct_input), sequence_id)
146
  else:
 
159
  base_name = handle_name(name, pdb_input, model_version)
160
 
161
  if model_version == "ESM3":
162
+ model = ESM_model(method='esm3')
163
+ model.load_state_dict(torch.load('Dyna-1/model/weights/dyna1.pt'), strict=False)
164
  else:
165
  model = ESM_model(method='esm2', nheads=8, nlayers=12, layer=30).to(DEVICE)
166
+ model.load_state_dict(torch.load('Dyna-1/model/weights/dyna1-esm2.pt'), strict=False)
167
 
168
  model.eval()
169
 
 
194
  if not (sequence or (pdb_input and model_version == "ESM3")):
195
  raise ValueError('Please provide a sequence' + (' or structure input' if model_version == "ESM3" else ''))
196
 
197
+ logits = run_model(model, model_version, seq_input, struct_input, sequence_id)
198
 
199
  probabilities = utils.prob_adjusted(logits).cpu().detach().numpy()
200