I am using Google colab for one of my projects. I have a list of packages which I need to run the notebook perfectly. So, should I have to install all packages each time I start colab or only installing once I can use them forever?
I am using Google colab for one of my projects. I have a list of packages which I need to run the notebook perfectly. So, should I have to install all packages each time I start colab or only installing once I can use them forever?
You'll need to install it each time. From the FAQ:
Where is my code executed? What happens to my execution state if I close the browser window? Code is executed in a virtual machine dedicated to your account. Virtual machines are recycled when idle for a while, and have a maximum lifetime enforced by the system.
EDIT: I incorrectly assumed you wanted to install R packages, but I'll leave this here in case it's useful to someone. I'm not familiar enough with Python to know whether a solution like this would be feasible.
The accepted answer is indeed correct, you will need to install your packages to the virtual machine every time you run it. However, you can use the lib and lib.loc arguments of install.packages and library to your advantage.
I've managed to circumvent this issue somewhat by creating a library of packages in my google drive.
I then connect to drive at the beginning of the notebook and load the packages from there. Here's how I did it.
%reload_ext rpy2.ipython
from google.colab import drive
drive.mount('/content/mydrive')
%%R
lib_loc <- "/content/mydrive/r-lib"
install.packages("data.table", lib = lib_loc)
drive.flush_and_unmount()
%%R
lib_loc <- "/content/mydrive/r-lib"
library(data.table, lib.loc = lib_loc)
In case you're wondering, the %%R is a call to the R engine inside a Python notebook.
Hope this helps.
If you connect to a local runtime then you can install once and use forever.
Here is how: https://research.google.com/colaboratory/local-runtimes.html