So this is probably something stupid, but I’m having trouble running Python 3.6 inside my notebooks locally. I’m getting the syntax error screen when trying to import things as noted on other threads here.
When I check my version in the shell, all seems fine:
So I’ve done some googling and python developers tend to get extremely ‘hand wavy’ with their environment solutions (“So then I just dingle-jab my framostat. Easy.”) So I was wondering if anybody had any advice for me here. I feel sure there’s some way to configure this, or at least find the root cause of it. Any help in understanding this would be helpful. (Environment issues in Ruby are much easier for me) For me, this is much more about de-mystifying things than it is about running notebooks locally as opposed to on AWS. On AWS everything goes fine, but I’d like the freedom to develop locally until I’m ready to actually train/test/etc.
I believe that the python version that you get in the notebook is whatever python version the shell was where you started jupyter notebook, based on a very very few tests.
It doesn’t seem like you have this added to your path in the terminal you are running the jupyter notebook from: export PATH="/home/<usr_name>/anaconda3/bin:$PATH"
Make sure you install jupyter notebook. If you create a new environment but didn’t install jupyter. You will still able to start notebook but it actually calls notebook from your root environment instead of the conda env.
This tells you which python is being used. Based on the path that you are showing it looks like Pythin 3.5 would run. You could run the jupyter notebook from the conda environment manually. So if your conda environment is named fastai then you could run something like
This should run the conda environment’s jupyter. If not, check whether you activated the conda environment by running something like conda activate fastai from the root of your conda environment.
Probably good for some clarification here. I’m not running a lesson notebook, I’ve started my own project that I plan to deploy one day. So I don’t know how much that will change things.
Here are the whichs requested:
brianh@cenote:~/code/set-game$
brianh@cenote:~/code/set-game$ which python
/home/brianh/anaconda3/bin/python
brianh@cenote:~/code/set-game$
brianh@cenote:~/code/set-game$
brianh@cenote:~/code/set-game$ which jupyter
/home/brianh/.local/bin/jupyter
brianh@cenote:~/code/set-game$
I tried to run conda activate fastai, but got this blurb:
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If your shell is Bash or a Bourne variant, enable conda for the current user with
$ echo ". /home/brianh/anaconda3/etc/profile.d/conda.sh" >> ~/.bashrc
or, for all users, enable conda with
$ sudo ln -s /home/brianh/anaconda3/etc/profile.d/conda.sh /etc/profile.d/conda.sh
The options above will permanently enable the 'conda' command, but they do NOT
put conda's base (root) environment on PATH. To do so, run
$ conda activate
in your terminal, or to put the base environment on PATH permanently, run
$ echo "conda activate" >> ~/.bashrc
Previous to conda 4.4, the recommended way to activate conda was to modify PATH in
your ~/.bashrc file. You should manually remove the line that looks like
export PATH="/home/brianh/anaconda3/bin:$PATH"
^^^ The above line should NO LONGER be in your ~/.bashrc file! ^^^
After following the instructions in the blurb, but before running conda activate fastai, I’m now getting a no module found 'torch' error instead of the original error, so I think that part fixed the python version mess. Now after running conda activate fastai I’m getting a no module named 'fastai' in my notebook. I’ll see if I can figure that one out, but I’ll post again here if I run out of luck.