新的 anaconda 环境从我没有安装的包开始

问题描述 投票:0回答:1

我一直在尝试解决损坏的 pytorch 安装问题,并通过使用

conda remove -n <env> --all
删除环境并重新创建它,进行了几次新的开始。在某些时候,我注意到新创建的环境根本不“新鲜”:当从该环境启动 python 时,我仍然能够
import
来自已删除的同名环境的包,即
pytorch
,未安装在
base
环境中(
activate base
随后尝试导入
pytorch
不起作用,如预期)。我试过了

conda create -n <random name>

甚至随机命名的空环境也莫名其妙地安装了

pytorch
。在创建环境之前运行
conda clean --all
并不能阻止这种情况的发生。

造成这种情况的原因是什么?如何防止这种情况发生?

python pytorch anaconda conda
1个回答
0
投票

出现该问题的原因是 Conda 可能会重用缓存的包或默认配置,导致像 PyTorch 这样的意外包出现在新环境中。解决方法如下:


修复步骤

  1. 检查默认包
    确保 PyTorch 未配置为默认安装:

    conda config --show default_packages
    conda config --remove-key default_packages
    
  2. 清理缓存
    删除所有缓存文件和包数据:

    conda clean --all
    
  3. 创建一个最小的环境
    使用

    --no-default-packages
    标志:

    conda create -n myenv python=3.12 --no-default-packages
    
  4. 验证包来源
    如果 PyTorch 仍然存在,请检查其来源:

    import torch
    print(torch.__file__)
    

    如果路径在Conda之外,请设置

    PYTHONNOUSERSITE=1
    以防止系统级包泄漏。

  5. 重新安装Conda(可选)
    如果问题仍然存在,请重新安装 Conda 以重置所有配置:

    rm -rf ~/miniconda3  # or your Conda install path
    
© www.soinside.com 2019 - 2024. All rights reserved.