ruamel_yaml.constructor.ConstructorError:无法确定标记的构造函数';tag:yaml.org,2002:python/tuple';在&书信电报;unicode字符串>&引用;

ruamel_yaml.constructor.ConstructorError:无法确定标记的构造函数';tag:yaml.org,2002:python/tuple';在&书信电报;unicode字符串>&引用;,python,yaml,conda,ruamel.yaml,Python,Yaml,Conda,Ruamel.yaml,我正在尝试下载Kinetics-600数据集以进行活动识别,为此,我遵循本回购协议中的说明: 但是,在步骤conda env create-f environment.yml中,我得到以下错误: ruamel_yaml.constructor.constructor错误:无法确定 “”中标记“tag:yaml.org,2002:python/tuple”的构造函数,第2行第11列:通道:!!python/元组 我应该如何修复此错误 错误的完整报告如下: (base) /mnt/disks/mon

我正在尝试下载Kinetics-600数据集以进行活动识别,为此,我遵循本回购协议中的说明:

但是,在步骤
conda env create-f environment.yml中,我得到以下错误:

ruamel_yaml.constructor.constructor错误:无法确定 “”中标记“tag:yaml.org,2002:python/tuple”的构造函数,第2行第11列:通道:!!python/元组

我应该如何修复此错误

错误的完整报告如下:

(base) /mnt/disks/mona/ActivityNet/Crawler/Kinetics$ conda env create -f environment.yml

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "/opt/conda/lib/python3.7/site-packages/conda/exceptions.py", line 1079, in __call__
        return func(*args, **kwargs)
      File "/opt/conda/lib/python3.7/site-packages/conda_env/cli/main.py", line 80, in do_call
        exit_code = getattr(module, func_name)(args, parser)
      File "/opt/conda/lib/python3.7/site-packages/conda_env/cli/main_create.py", line 87, in execute
        spec = specs.detect(name=name, filename=filename, directory=os.getcwd())
      File "/opt/conda/lib/python3.7/site-packages/conda_env/specs/__init__.py", line 43, in detect
        if spec.can_handle():
      File "/opt/conda/lib/python3.7/site-packages/conda_env/specs/yaml_file.py", line 18, in can_handle
        self._environment = env.from_file(self.filename)
      File "/opt/conda/lib/python3.7/site-packages/conda_env/env.py", line 160, in from_file
        return from_yaml(yamlstr, filename=filename)
      File "/opt/conda/lib/python3.7/site-packages/conda_env/env.py", line 141, in from_yaml
        data = yaml_safe_load(yamlstr)
      File "/opt/conda/lib/python3.7/site-packages/conda/common/serialize.py", line 67, in yaml_safe_load
        return yaml.safe_load(string, version="1.2")
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/main.py", line 980, in safe_load
        return load(stream, SafeLoader, version)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/main.py", line 935, in load
        return loader._constructor.get_single_data()
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 108, in get_single_data
        return self.construct_document(node)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 118, in construct_document
        for _dummy in generator:
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 691, in construct_yaml_map
        value = self.construct_mapping(node)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 418, in construct_mapping
        return BaseConstructor.construct_mapping(self, node, deep=deep)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 242, in construct_mapping
        value = self.construct_object(value_node, deep=deep)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 164, in construct_object
        data = constructor(self, node)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 711, in construct_undefined
        node.start_mark,
    ruamel_yaml.constructor.ConstructorError: could not determine a constructor for the tag 'tag:yaml.org,2002:python/tuple'
      in "<unicode string>", line 2, column 11:
        channels: !!python/tuple
                  ^ (line: 2)

`$ /opt/conda/bin/conda-env create -f environment.yml`

  environment variables:
            BINARIES_PATH=/opt/deeplearning/binaries
                 CIO_TEST=<not set>
  CONDA_AUTO_UPDATE_CONDA=false
        CONDA_DEFAULT_ENV=base
                CONDA_EXE=/opt/conda/bin/conda
CONDA_MKL_INTERFACE_LAYER_BACKUP=
             CONDA_PREFIX=/opt/conda
    CONDA_PROMPT_MODIFIER=(base)
         CONDA_PYTHON_EXE=/opt/conda/bin/python
               CONDA_ROOT=/opt/conda
              CONDA_SHLVL=1
           CURL_CA_BUNDLE=<not set>
              DL_BIN_PATH=/opt/deeplearning/bin
         DL_METADATA_PATH=/opt/deeplearning/metadata
                  DL_PATH=/opt/deeplearning
        ENV_URI_FILE_PATH=/opt/deeplearning/metadata/env_uri
    ENV_VERSION_FILE_PATH=/opt/deeplearning/metadata/env_version
      FRAMEWORK_FILE_PATH=/opt/deeplearning/metadata/framework
                 INFOPATH=/home/linuxbrew/.linuxbrew/share/info:
        JUPYTER_DEPS_PATH=/opt/deeplearning/jupyter
          LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/nccl2/lib:/usr/local/cuda/extras/CUPT
                          I/lib64
                  MANPATH=/home/linuxbrew/.linuxbrew/share/man:
                     PATH=/opt/conda/bin:/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbr
                          ew/sbin:/usr/local/cuda/bin:/opt/conda/bin:/opt/conda/condabin:/usr/lo
                          cal/bin:/usr/bin:/bin:/usr/local/games:/usr/games
               PYTHONPATH=/mnt/disks/mona/SlowFast/slowfast:
       REQUESTS_CA_BUNDLE=<not set>
RESTRICTION_TYPE_FILE_PATH=/opt/deeplearning/restriction
                 SRC_PATH=/opt/deeplearning/src
            SSL_CERT_FILE=<not set>
          TITLE_FILE_PATH=/opt/deeplearning/metadata/title
           TUTORIALS_PATH=/opt/deeplearning/workspace/tutorials
        VERSION_FILE_PATH=/opt/deeplearning/metadata/version
           WORKSPACE_PATH=/opt/deeplearning/workspace

     active environment : base
    active env location : /opt/conda
            shell level : 1
       user config file : /home/mona/.condarc
 populated config files : /opt/conda/.condarc
          conda version : 4.9.2
    conda-build version : not installed
         python version : 3.7.8.final.0
       virtual packages : __cuda=11.0=0
                          __glibc=2.28=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /opt/conda  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /opt/conda/pkgs
                          /home/mona/.conda/pkgs
       envs directories : /opt/conda/envs
                          /home/mona/.conda/envs
               platform : linux-64
             user-agent : conda/4.9.2 requests/2.24.0 CPython/3.7.8 Linux/4.19.0-13-cloud-amd64 debian/10 glibc/2.28
                UID:GID : 1016:1017
             netrc file : None
           offline mode : False


An unexpected error has occurred. Conda has prepared the above report.

If submitted, this report will be used by core maintainers to improve
future releases of conda.
Would you like conda to send this report to the core maintainers?

[y/N]: y
Upload successful.

Thank you for helping to improve conda.
Opt-in to always sending reports (and not see this message again)
by running

    $ conda config --set report_errors true


$ conda config --set report_errors true

$ conda env create -f environment.yml

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "/opt/conda/lib/python3.7/site-packages/conda/exceptions.py", line 1079, in __call__
        return func(*args, **kwargs)
      File "/opt/conda/lib/python3.7/site-packages/conda_env/cli/main.py", line 80, in do_call
        exit_code = getattr(module, func_name)(args, parser)
      File "/opt/conda/lib/python3.7/site-packages/conda_env/cli/main_create.py", line 87, in execute
        spec = specs.detect(name=name, filename=filename, directory=os.getcwd())
      File "/opt/conda/lib/python3.7/site-packages/conda_env/specs/__init__.py", line 43, in detect
        if spec.can_handle():
      File "/opt/conda/lib/python3.7/site-packages/conda_env/specs/yaml_file.py", line 18, in can_handle
        self._environment = env.from_file(self.filename)
      File "/opt/conda/lib/python3.7/site-packages/conda_env/env.py", line 160, in from_file
        return from_yaml(yamlstr, filename=filename)
      File "/opt/conda/lib/python3.7/site-packages/conda_env/env.py", line 141, in from_yaml
        data = yaml_safe_load(yamlstr)
      File "/opt/conda/lib/python3.7/site-packages/conda/common/serialize.py", line 67, in yaml_safe_load
        return yaml.safe_load(string, version="1.2")
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/main.py", line 980, in safe_load
        return load(stream, SafeLoader, version)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/main.py", line 935, in load
        return loader._constructor.get_single_data()
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 108, in get_single_data
        return self.construct_document(node)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 118, in construct_document
        for _dummy in generator:
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 691, in construct_yaml_map
        value = self.construct_mapping(node)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 418, in construct_mapping
        return BaseConstructor.construct_mapping(self, node, deep=deep)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 242, in construct_mapping
        value = self.construct_object(value_node, deep=deep)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 164, in construct_object
        data = constructor(self, node)
      File "/opt/conda/lib/python3.7/site-packages/ruamel_yaml/constructor.py", line 711, in construct_undefined
        node.start_mark,
    ruamel_yaml.constructor.ConstructorError: could not determine a constructor for the tag 'tag:yaml.org,2002:python/tuple'
      in "<unicode string>", line 2, column 11:
        channels: !!python/tuple
                  ^ (line: 2)

`$ /opt/conda/bin/conda-env create -f environment.yml`

  environment variables:
            BINARIES_PATH=/opt/deeplearning/binaries
                 CIO_TEST=<not set>
  CONDA_AUTO_UPDATE_CONDA=false
        CONDA_DEFAULT_ENV=base
                CONDA_EXE=/opt/conda/bin/conda
CONDA_MKL_INTERFACE_LAYER_BACKUP=
             CONDA_PREFIX=/opt/conda
    CONDA_PROMPT_MODIFIER=(base)
         CONDA_PYTHON_EXE=/opt/conda/bin/python
               CONDA_ROOT=/opt/conda
              CONDA_SHLVL=1
           CURL_CA_BUNDLE=<not set>
              DL_BIN_PATH=/opt/deeplearning/bin
         DL_METADATA_PATH=/opt/deeplearning/metadata
                  DL_PATH=/opt/deeplearning
        ENV_URI_FILE_PATH=/opt/deeplearning/metadata/env_uri
    ENV_VERSION_FILE_PATH=/opt/deeplearning/metadata/env_version
      FRAMEWORK_FILE_PATH=/opt/deeplearning/metadata/framework
                 INFOPATH=/home/linuxbrew/.linuxbrew/share/info:
        JUPYTER_DEPS_PATH=/opt/deeplearning/jupyter
          LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/nccl2/lib:/usr/local/cuda/extras/CUPT
                          I/lib64
                  MANPATH=/home/linuxbrew/.linuxbrew/share/man:
                     PATH=/opt/conda/bin:/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbr
                          ew/sbin:/usr/local/cuda/bin:/opt/conda/bin:/opt/conda/condabin:/usr/lo
                          cal/bin:/usr/bin:/bin:/usr/local/games:/usr/games
               PYTHONPATH=/mnt/disks/mona/SlowFast/slowfast:
       REQUESTS_CA_BUNDLE=<not set>
RESTRICTION_TYPE_FILE_PATH=/opt/deeplearning/restriction
                 SRC_PATH=/opt/deeplearning/src
            SSL_CERT_FILE=<not set>
          TITLE_FILE_PATH=/opt/deeplearning/metadata/title
           TUTORIALS_PATH=/opt/deeplearning/workspace/tutorials
        VERSION_FILE_PATH=/opt/deeplearning/metadata/version
           WORKSPACE_PATH=/opt/deeplearning/workspace

     active environment : base
    active env location : /opt/conda
            shell level : 1
       user config file : /home/mona/.condarc
 populated config files : /opt/conda/.condarc
                          /home/mona/.condarc
          conda version : 4.9.2
    conda-build version : not installed
         python version : 3.7.8.final.0
       virtual packages : __cuda=11.0=0
                          __glibc=2.28=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /opt/conda  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /opt/conda/pkgs
                          /home/mona/.conda/pkgs
       envs directories : /opt/conda/envs
                          /home/mona/.conda/envs
               platform : linux-64
             user-agent : conda/4.9.2 requests/2.24.0 CPython/3.7.8 Linux/4.19.0-13-cloud-amd64 debian/10 glibc/2.28
                UID:GID : 1016:1017
             netrc file : None
           offline mode : False


An unexpected error has occurred. Conda has prepared the above report.

Upload successful.

似乎
environment.yml
是在conda使用
yaml.load
时编写的,但它
yaml.safe\u load

1.1.1 (2019-03-22) 使用yaml.safe_load而不是yaml.load删除yaml load警告。 当包含为空时,修复非类型对象不可编辑错误

您可以尝试删除
!!python/tuple
(还有
!!python/unicode
,它什么都不做)来自
环境。yml
但是不清楚它为什么会出现,它可能会给您带来另一个错误

什么
!!python/tuple
指示YAML将以下序列加载为tuple而不是list。这样做的一个原因是加载的值将在哈希数据结构(dict或set)中使用,因为元组是可哈希的,而列表不是。但是,通常在YAML文件中已使用该值作为映射时执行此操作,但这里的情况并非如此


出现错误的原因是因为
yaml.safe_load
使用安全加载程序,它不像旧的“危险”加载程序那样调用任意构造函数(因为这是一个安全问题)。因此,您不能用它加载元组。

此外,由于yaml已经使用了4年,因此它们需要添加自由通道(默认情况下)。
name: kinetics
channels: !!python/tuple
- !!python/unicode
  'defaults'
dependencies:
- joblib=0.9.4=py27_0
- menpo::ffmpeg=3.1.3=0
- mkl=2017.0.1=0
- numpy=1.12.1=py27_0
- openssl=1.0.2k=1
- pandas=0.19.2=np112py27_1
- pip=9.0.1=py27_1
- python=2.7.13=0
- python-dateutil=2.6.0=py27_0
- pytz=2017.2=py27_0
- readline=6.2=2
- setuptools=27.2.0=py27_0
- six=1.10.0=py27_0
- sqlite=3.13.0=0
- tk=8.5.18=0
- wheel=0.29.0=py27_0
- zlib=1.2.8=3
- pip:
  - decorator==4.0.11
  - olefile==0.44
  - youtube-dl==2017.6.5
prefix: /home/cabaf/.conda/envs/kinetics