RFdiffusion3 / app.py
gabboud's picture
move generation scripts to pipelines, only download rfd3, create output directory for run
94ff1b9
Raw
History Blame
1.67 kB
import gradio as gr
import warnings
import os
import subprocess
from pathlib import Path
import shutil
import spaces
from atomworks.io.utils.visualize import view
from lightning.fabric import seed_everything
from rfd3.engine import RFD3InferenceConfig, RFD3InferenceEngine
from utils import download_weights
from utils.pipelines import test_rfd3_from_notebook, unconditional_generation
download_weights()
# Gradio UI
with gr.Blocks(title="RFD3 Test") as demo:
gr.Markdown("# RFdiffusion3 (RFD3) for Backbone generation")
gr.Markdown("Models auto-downloaded on launch. Click to test.")
test_btn = gr.Button("Run RFD3 Test")
output = gr.Textbox(label="Test Result")
test_btn.click(test_rfd3_from_notebook, outputs=output)
gr.Markdown("Unconditional generation of backbones")
with gr.Row():
num_designs_per_batch = gr.Number(
value=2,
label="Number of Designs per Batch",
precision=0,
minimum=1,
maximum=8
)
num_batches = gr.Number(
value=5,
label="Number of Batches",
precision=0,
minimum=1,
maximum=10
)
length = gr.Number(
value=40,
label="Length of Protein (number of residues)",
precision=0,
minimum=10,
maximum=200
)
gen_btn = gr.Button("Run Unconditional Generation")
gen_output = gr.Textbox(label="Generation Result")
gen_btn.click(unconditional_generation, inputs=[num_batches, num_designs_per_batch, length], outputs=gen_output)
if __name__ == "__main__":
demo.launch()