Colabctl Save

Google Colaboratory background/task executioner & controller.

Project README

colabctl v0.2.1

Task executioner & controller for Google Colaboratory notebooks. Google Colaboratory is a game-changing innovation. It allows anyone to access powerful hardware for machine learning, for free. Unfortunately, it's not possible to run colab notebooks programmatically or otherwise in the background unless you leave your browser running. Colabctl is a sort of shim that solves this problem by using headless Selenium.

BROKEN NOTICE

After realizing a few issues being submitted, I reran the code and saw that there are a few new issues due to Google changing their code. I'm now working to correct them. It shouldn't take too long, depending on what exactly they've done.

TODOs

  • Resolve issues #1 #2 #3 #4
  • Async execution of tasks.
  • Proper module structure for user command install via pip.
  • Better args parsing.
  • Revise & refactor the Seleium code.
  • Proper logging.

Pull requests welcomed.

Usage

First, add your Colaboratory URLs to notebooks.csv.

In colab, go to tools -> keyboard shortcuts and set "Clear all outputs" to CTRL + SHIFT + Q

In colab, go to tools -> keyboard shortcuts and set "Reset all runtimes" to CTRL + SHIFT + k

At the end of your notebook, add: print("forkin"+"me")

Now you're ready:

python colabctl.py <end-string> <sleep-seconds>

Example:

python colabctl.py forkinme 1800

Important!!!

Notice that the example delay is 1,800 seconds (30 minutes). Please DO NOT poll Google Colaboratory frequently. We're very lucky to have these notebooks and even luckier that this ctl is even possible. Please don't push them to block us from doing this.

Thank you

Open Source Agenda is not affiliated with "Colabctl" Project. README Source: bitnom/colabctl
Stars
249
Open Issues
9
Last Commit
1 month ago
Repository
License

Open Source Agenda Badge

Open Source Agenda Rating