baker-laboratory / RoseTTAFold-All-Atom

Other
652 stars 118 forks source link

remove build strings from env to make it more portable and add UI #51

Open duerrsimon opened 8 months ago

duerrsimon commented 8 months ago

environment.yml changes: The environment.yml contains build strings for all conda packages. When I was trying to install conda claimed it will take 2h+ to fix possible conflicts because the environment was inconsistent. We're running pretty standard Debian Linux 11 workstations in the lab so it should not take this long to install the environment. Especially in HPC environments the currently required builds of the requested packages might not fit with the specs of the machine.

Removing the build strings allows the package manager to pick builds of the requested packages that match the specific hardware/os configuration better.

After I removed the build strings the environment installed without any error in a few minutes. Inference works perfectly too.

BTW: The environment would become even more portable by using conda env export --from-history --no-builds Some background here: https://stackoverflow.com/a/56780297

New UI for generating input and running predictions

This pull request also adds a UI that can be launched using python ui.py from the main directory. Run locally the UI will either generate the input files like https://hf.co/spaces/simonduerr/RFAA (dry run) or also run the prediction and output the predicted structure plus plots of the pLDDT, PAE and PDE. image

duerrsimon commented 7 months ago

Added the UI to run the predictions locally to this pull request.

GXcells commented 4 months ago

Hi, by chance do you have a standalone UI to review the output? (without needing al dependencies related to the inference). I don't want to change the installation of RFAA on our virtual machine but it would be very helpful to run the review UI on my local machine.

duerrsimon commented 4 months ago

if you install gradio and gradio-molecule3d on your remote machine you will be able to start the computations and view the output locally thanks to the link sharing feature of gradio. If you only have the results you can also adapt the ui.py included in this pull request. You just need to modify the run_rf2aa and predict functions and delete all the input fields in the with gr.Blocks() part.