EEnzymeProject / app.py.txt
airghoxir's picture
Upload 4 files
94b02a2 verified
import gradio as gr
import numpy as np
from tensorflow.keras.models import load_model
# Load model
model = load_model("ldh_predictor.h5")
# Encoding function
aa_to_int = {aa:i+1 for i, aa in enumerate('ACDEFGHIKLMNPQRSTVWY')}
max_length = 500
def predict_ldh(sequence):
encoded = [aa_to_int.get(aa, 0) for aa in sequence[:max_length]]
if len(encoded) < max_length:
encoded += [0] * (max_length - len(encoded))
prob = model.predict(np.array([encoded]))[0][0]
return {"LDH": float(prob), "Not LDH": float(1-prob)}
# Gradio interface
interface = gr.Interface(
fn=predict_ldh,
inputs=gr.Textbox(lines=5, placeholder="Paste protein sequence...", label="Protein Sequence"),
outputs=gr.Label(label="Prediction"),
title="🧬 DeepEnzyme: LDH Classifier",
examples=[
["MATLKDQLIYNLLKEEQTPQNKITVVGVGAVGMACAISILMKDLADELALVDVIEDKLKGEMMDLQHGSLFLRTPKIVSGKDYNVTANSKLVIITAGARQQEGESRLNLVQRNVNIFKFIIPNVVKYSPNCKLLIVSNPVDILTYVAWKISGFPKNRVIGSGCNLDSARFRYLMGERLGVHPLSCHGWVLGEHGDSSVPVWSGMNVAGVSLKTLHPDLGTDKDKEQWKEVHKQVVESAYEVIKLKGYTSWAIGLSVADLAESIMKNLRRVHPVSTMIKGLYGIKDDVFLSVPCILGQNGISDLVKVTLTSEEEARLKKSADTLWGIQKELQF"],
["MSEPIRVLVTGAAGQIAYSLLYSIGNGSVFGKDQPIILVLLDITPMMGVLDGVLMELQDCALPLLKDVIATDKEDVAFKDLDVAILVGSMPRREGMERKDLLKANVKIFKSQGAALDKYAKKSVKVIVVGNPANTNCLTASKSAPSIPKENFSCLTRLDHNRAKAQIALKLGVTANDVKNVIIWGNHSSTQYPDVNHAKVKLQGKEVGVYEALKDDSWLKGEFVTTVQQRGAAVIKARKLSSAMSAAKAICDHVRDIWFGTPEGEFVSMGVISDGNSYGVPDDLLYSFPVVIKNKTWKFVEGLPINDFSREKMDLTAKELTEEKESAFEFLSSA"]
],
description="Predict whether a protein is Lactate Dehydrogenase (LDH) using deep learning."
)
interface.launch()