Spaces:
Running
on
Zero
Running
on
Zero
add api call
Browse files
app.py
CHANGED
@@ -1,16 +1,11 @@
|
|
1 |
import gradio as gr
|
2 |
import py3Dmol
|
3 |
import io
|
4 |
-
import torch
|
5 |
import numpy as np
|
6 |
import os
|
7 |
import traceback
|
8 |
import spaces
|
9 |
-
|
10 |
-
# os.system("pip install esm")
|
11 |
-
|
12 |
-
from huggingface_hub import login
|
13 |
-
from esm.models.esm3 import ESM3
|
14 |
from esm.sdk.api import ESM3InferenceClient, ESMProtein, GenerationConfig
|
15 |
from esm.utils.structure.protein_chain import ProteinChain
|
16 |
from Bio.Data import PDBData
|
@@ -18,14 +13,16 @@ import biotite.structure as bs
|
|
18 |
from biotite.structure.io import pdb
|
19 |
from esm.utils import residue_constants as RC
|
20 |
|
21 |
-
# Login to Hugging Face Hub
|
22 |
-
hf_token = os.environ.get("HUGGINGFACE_TOKEN")
|
23 |
-
if not hf_token:
|
24 |
-
raise ValueError("HUGGINGFACE_TOKEN environment variable is not set")
|
25 |
-
login(token=hf_token)
|
26 |
-
|
27 |
# Initialize the model
|
28 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
|
30 |
amino3to1 = {
|
31 |
'ALA': 'A', 'CYS': 'C', 'ASP': 'D', 'GLU': 'E', 'PHE': 'F',
|
@@ -122,7 +119,7 @@ def get_protein(pdb_file) -> ESMProtein:
|
|
122 |
def add_noise_to_coordinates(protein: ESMProtein, noise_level: float) -> ESMProtein:
|
123 |
"""Add Gaussian noise to the atom positions of the protein."""
|
124 |
coordinates = protein.coordinates
|
125 |
-
noise =
|
126 |
noisy_coordinates = coordinates + noise
|
127 |
return ESMProtein(sequence=protein.sequence, coordinates=noisy_coordinates)
|
128 |
|
|
|
1 |
import gradio as gr
|
2 |
import py3Dmol
|
3 |
import io
|
|
|
4 |
import numpy as np
|
5 |
import os
|
6 |
import traceback
|
7 |
import spaces
|
8 |
+
from esm.sdk import client
|
|
|
|
|
|
|
|
|
9 |
from esm.sdk.api import ESM3InferenceClient, ESMProtein, GenerationConfig
|
10 |
from esm.utils.structure.protein_chain import ProteinChain
|
11 |
from Bio.Data import PDBData
|
|
|
13 |
from biotite.structure.io import pdb
|
14 |
from esm.utils import residue_constants as RC
|
15 |
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
# Initialize the model
|
17 |
+
token = os.environ.get("ESM_API_TOKEN")
|
18 |
+
if not token:
|
19 |
+
raise ValueError("ESM_API_TOKEN environment variable is not set")
|
20 |
+
|
21 |
+
model = client(
|
22 |
+
model="esm3-medium-2024-03",
|
23 |
+
url="https://forge.evolutionaryscale.ai",
|
24 |
+
token=token,
|
25 |
+
)
|
26 |
|
27 |
amino3to1 = {
|
28 |
'ALA': 'A', 'CYS': 'C', 'ASP': 'D', 'GLU': 'E', 'PHE': 'F',
|
|
|
119 |
def add_noise_to_coordinates(protein: ESMProtein, noise_level: float) -> ESMProtein:
|
120 |
"""Add Gaussian noise to the atom positions of the protein."""
|
121 |
coordinates = protein.coordinates
|
122 |
+
noise = np.random.randn(*coordinates.shape) * noise_level
|
123 |
noisy_coordinates = coordinates + noise
|
124 |
return ESMProtein(sequence=protein.sequence, coordinates=noisy_coordinates)
|
125 |
|