Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create Gradio-based GUI #589

Open
wants to merge 138 commits into
base: master
Choose a base branch
from
Open

Create Gradio-based GUI #589

wants to merge 138 commits into from

Conversation

MilesCranmer
Copy link
Owner

@MilesCranmer MilesCranmer commented Mar 31, 2024

Seems like it would be useful to have a GUI for PySR as some people would like to use it but don’t have much programming experience. It’s also a bit nicer on the interactivity side.

This PR creates a Gradio-based GUI for PySR and stores it in the main repo. Pushing this repo to HuggingFace will result in a working space:

Screenshot 2024-07-09 at 00 03 09

https://huggingface.co/spaces/MilesCranmer/PySR

This can even be executed in the web browser.

TODO:

  • Add the virtualenv to PATH so regular Python calls work
  • Turn off the progress visual in loading elements in gradio
  • Have a reader process which can evaluate predictions of the model
  • Add more options to the GUI
  • Have the GUI also have a button which generates the Python code corresponding to if you had run it with a script
  • Have the process be persistent so Julia doesn’t need to recompile
  • Add action to sync PySR with hugging face
  • Put gui within normal PySR code, but with lazy loading of matplotlib and gradio. Add a gui command to the CLI. (Cancelled)
    • Would be nice, but it requires loading PySR when starting the GUI which is incompatible with gradio.
  • Refactor to be object-oriented
  • Do some manual tests where we spam click the buttons and verify correct behaviour

@coveralls
Copy link

coveralls commented Jul 8, 2024

Pull Request Test Coverage Report for Build 9947023449

Details

  • 10 of 10 (100.0%) changed or added relevant lines in 2 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.04%) to 93.586%

Totals Coverage Status
Change from base Build 9941458369: 0.04%
Covered Lines: 1138
Relevant Lines: 1216

💛 - Coveralls

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants