Deep learning Conda Colab收集包元数据(current_repodata.json)时出错:失败的InvalidVersionSpec:Invalid version';4.19.112+';:空版本组件
浏览器:谷歌浏览器最新版本 我根据这篇文章在colab中设置了conda,几天前它工作得很好。 在那之后,我试图建立 通过运行这些命令Deep learning Conda Colab收集包元数据(current_repodata.json)时出错:失败的InvalidVersionSpec:Invalid version';4.19.112+';:空版本组件,deep-learning,anaconda,conda,google-colaboratory,miniconda,Deep Learning,Anaconda,Conda,Google Colaboratory,Miniconda,浏览器:谷歌浏览器最新版本 我根据这篇文章在colab中设置了conda,几天前它工作得很好。 在那之后,我试图建立 通过运行这些命令 !conda create -n FairMOT --yes !conda activate FairMOT --yes !conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.0 -c pytorch --yes 现在,这是我收到的错误输出 CommandNotFoundError:
!conda create -n FairMOT --yes
!conda activate FairMOT --yes
!conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.0 -c pytorch --yes
现在,这是我收到的错误输出
CommandNotFoundError: Your shell has not been properly configured to use 'conda deactivate'.
To initialize your shell, run
$ conda init <SHELL_NAME>
Currently supported shells are:
- bash
- fish
- tcsh
- xonsh
- zsh
- powershell
See 'conda init --help' for more information and options.
IMPORTANT: You may need to close and restart your shell after running 'conda init'.
Collecting package metadata (current_repodata.json): failed
InvalidVersionSpec: Invalid version '4.19.112+': empty version component
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
To initialize your shell, run
$ conda init <SHELL_NAME>
Currently supported shells are:
- bash
- fish
- tcsh
- xonsh
- zsh
- powershell
See 'conda init --help' for more information and options.
IMPORTANT: You may need to close and restart your shell after running 'conda init'.
Collecting package metadata (current_repodata.json): failed
InvalidVersionSpec: Invalid version '4.19.112+': empty version component
CommandNotFoundError:您的shell未正确配置为使用“conda deactivate”。
要初始化shell,请运行
$conda init
当前支持的shell有:
-猛击
-鱼
-tcsh
-克逊什
-zsh
-动力壳
有关更多信息和选项,请参阅“conda init--help”。
重要提示:在运行“conda init”后,您可能需要关闭并重新启动shell。
收集包元数据(current_repodata.json):失败
InvalidVersionSpec:无效版本“4.19.112+”:空版本组件
CommandNotFoundError:您的shell未正确配置为使用“conda activate”。
要初始化shell,请运行
$conda init
当前支持的shell有:
-猛击
-鱼
-tcsh
-克逊什
-zsh
-动力壳
有关更多信息和选项,请参阅“conda init--help”。
重要提示:在运行“conda init”后,您可能需要关闭并重新启动shell。
收集包元数据(current_repodata.json):失败
InvalidVersionSpec:无效版本“4.19.112+”:空版本组件
我创建了一个快速修复程序。我不认为这是一个长期的解决办法 更改引发
InvalidVersionSpec
错误的文件内容。在我的例子中,这是文件/usr/local/lib/python3.7/site packages/conda/models/version.py。您可以使用获取案例中此文件的位置!conda创建您的_env--verbose
。(请注意,一个文件会生成异常,但另一个文件会引发InvalidVersionSpec
,请选择后者)
以下是我们感兴趣的代码行:
#导入。。。
#类定义。。。
@带_元类(SingleStrArgCachingType)
类VersionOrder(对象):
# ...
def ___;初始(自,vstr):
# ...
#以下行引发异常:
如果不是c:
引发InvalidVersionSpec(vstr,“空版本组件”)
在类VersionOrder
的\uuuu init\uuuu
方法的第一行添加以下内容:
如果isinstance(vstr,str)和vstr='4.19.112+':
vstr='4.19.112'
看起来是这样的:
#导入。。。
#类定义。。。
@带_元类(SingleStrArgCachingType)
类VersionOrder(对象):
# ...
def ___;初始(自,vstr):
如果isinstance(vstr,str)和vstr='4.19.112+':#添加了代码
vstr='4.19.112'
# ...
#以下行引发异常:
如果不是c:
引发InvalidVersionSpec(vstr,“空版本组件”)
现在的情况基本上是从版本名中删除+
。它会创建错误,因此可能是版本规范的输入错误,或者是conda的VersionOrder
类在处理此语法时出现的错误。我建议将此解决方案作为快速修复,以避免对这两个文件产生副作用
如何在Colab中轻松实现这一点
使用cat打印文件/usr/local/lib/python3.7/site-packages/conda/models/version.py的内容:
!cat/usr/local/lib/python3.7/site-packages/conda/models/version.py
使用剪贴板复制内容并将其粘贴到新的代码单元中,该单元以magic命令%%file my_new_version_file.py开始:
%%file my_new_version_file.py
# Paste your clipboard here
接下来,在这个新单元格中添加前面提到的代码并运行它。
这将创建一个包含单元格内容的文件my\u new\u version\u file.py
然后使用shutil
将生成的文件移动到原始文件的路径中:
导入shutil
move('my_new_version_file.py','/usr/local/lib/python3.7/site packages/conda/models/version.py')
版本'4.19.112+”
指的是Linux版本,您可以在这里找到!目录中的cat/proc/version
。这并不能解决手头的问题,但可能是一个寻找的好地方。运行时使用选项--verbose
!conda create
您应该会看到有问题的文件,在我的例子中是:/usr/local/lib/python3.7/site packages/conda/models/version.py
。关于如何解决这个问题有什么更新吗?让我高兴!谢谢!您可以将%%file my\u new\u version\u file.py
更改为%%file new\u version\u file.py
,使其与下面使用的文件名一致。