Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| import sys | |
| import pandas as pd | |
| from transformers import AutoTokenizer, AutoModel, AutoConfig | |
| # Add the current directory to the system path | |
| metalatte_path = '.' | |
| sys.path.insert(0, metalatte_path) | |
| # Import the custom configuration and model | |
| from configuration import MetaLATTEConfig | |
| from modeling_metalatte import MultitaskProteinModel | |
| AutoConfig.register("metalatte", MetaLATTEConfig) | |
| AutoModel.register(MetaLATTEConfig, MultitaskProteinModel) | |
| tokenizer = AutoTokenizer.from_pretrained("facebook/esm2_t33_650M_UR50D") | |
| config = AutoConfig.from_pretrained("ChatterjeeLab/MetaLATTE") | |
| model = AutoModel.from_pretrained("ChatterjeeLab/MetaLATTE", config=config) | |
| def predict(sequence): | |
| inputs = tokenizer(sequence, return_tensors="pt") | |
| raw_probs, predictions = model.predict(**inputs) | |
| id2label = config.id2label | |
| results = {} | |
| for i, pred in enumerate(predictions[0]): | |
| metal = id2label[i] | |
| probability = raw_probs[0][i].item() | |
| results[metal] = '✓' if pred == 1 else '' | |
| df = pd.DataFrame([results]) | |
| return df | |
| iface = gr.Interface( | |
| fn=predict, | |
| inputs=gr.Textbox(lines=3, placeholder="Enter protein sequence here..."), | |
| outputs=gr.Dataframe(headers=list(config.id2label.values())), | |
| title="MetaLATTE: Metal Binding Prediction", | |
| description="Enter a protein sequence to predict its metal binding properties." | |
| ) | |
| iface.launch() |