Jupyter notebook和anaconda环境bug

Jupyter notebook and anaconda environment bug

我发现 Jupyter 的一个非常奇怪的行为并让我重新安装它,但问题仍然存在。

我有一台安装了 anaconda(最新版本)的 Windows 机器。有两种环境:

请注意,这两个环境是直接从全新安装的 anaconda 创建的,除了安装 tensorflow-gpu 之外,我没有接触任何东西。

当我通过 Anaconda 启动 Jupyter 时,它在两种环境的主文件夹“C:\User\user”上正常启动,即安装了正确的软件包和正确版本的 python。我还可以通过 Anaconda 或 Windows(始终在主目录中)启动 Powershell 实例,并启动 Jupyter,这两种环境都按预期运行(软件包,python 版本)。到目前为止一切顺利...

当我想从主目录以外的目录启动 Jupyter 时,问题就出现了。我将所有项目文件保存在一个单独的分区 (D:) 中,因此我通过 cmd/powershell(通过 Anaconda 或 Win 启动)导航到该目录并键入“jupyter notebook”。笔记本打开那个导演和:

Jupyter 只报告环境名称,但实际上它使用基础环境,即使它是从所述环境启动的。这怎么能改变?

为什么Jupyter从用户目录启动时可以正常运行?

如果这不容易解决,有什么解决方法? Jupyter 不识别符号链接,因此如果它不是 home 的子目录,我将无法导航到另一个目录。

最后,我也尝试通过 python -m ipykernel install --user --name tf-gpu --display-name "Tensorflow GPU (tf-gpu)" 添加 env 作为内核,但它似乎并没有改变什么。

更新 1:

当然我通过conda activate tf-gpu激活了tf-gpu并检查了python版本和tensorflow(正确结果),问题是在启动jupyter notebook时。 notebook 报告了 tf-gpu env 但错误的 python 版本并且 tf 丢失。

更新 2:

经过一番搜索后,如果系统中安装了 python 的多个版本,jupyter notebook 似乎很难选择 python 版本(在我的例子中,每个环境环境中安装了 2、1 个).如果您认为这就是我们使用环境的原因,那就太荒谬了...

我猜你遇到这个问题的原因是因为你从 conda 基础环境启动了 jupyter notebook。您将在评论提示中看到一个(基地)。

要解决此问题,当您使用命令提示符启动时,请在启动 Jupyter notebook 之前执行 conda activate tf-gpu,现在检查您的版本是否正确。

我所做的工作是 运行 ipython3 notebook 在启动笔记本服务器的环境中,一切正常工作正确的环境名称和正确的 python 版本和包(tensorflow 是正常工作)。这一定更新了一些配置文件,因为我现在可以 运行 来自不同文件夹的 jupyter notebook 并且 gpu-tfu env 工作正常。

请记住,只有当我在不同分区的主目录 (C:\User\user) 之外启动 jupyter 时,才会出现这些问题。另请记住,这是一个 Windows 安装,用户路径、环境等可能会发生比 linux.

更复杂的事情