Spyder: 使用脚本多次加载pytorch模块会在IPython控制台上导致RuntimeError。

创建于 2018-04-30  ·  3评论  ·  资料来源: spyder-ide/spyder

问题描述

在编辑器窗口上运行文件时,多次导入pytorch会在IPython控制台中导致运行时错误。
我正在使用pytorch 0.4.0。

哪些步骤将重现该问题?

  1. 运行Spyder3。
  2. 在编辑器窗口中编写“导入割炬”。
  3. 运行脚本。
  4. 再次运行脚本。

什么是预期的输出? 你看到了什么呢?

期待没有例外。 但是某些编译/重新加载现有模块似乎会导致错误。
请注意,以下步骤是肮脏的怪异解决方案。

  1. 运行Spyder3。
  2. IPython控制台中编写“ import torch”,然后按Enter。
  3. 在编辑器窗口中编写“导入割炬”。
  4. 运行脚本。
  5. 再次运行脚本。
    简而言之,最初在IPython控制台上加载pytorch模块即可解决该问题,但我不知道为什么。

在下面粘贴回溯/错误(如果适用)

Traceback (most recent call last):

  File "<ipython-input-3-bc7ab1fdfb9b>", line 1, in <module>
    runfile('/Users/aaa/.spyder-py3/temp.py', wdir='/Users/aaa/.spyder-py3')

  File "/usr/local/lib/python3.6/site-packages/spyder/utils/site/sitecustomize.py", line 705, in runfile
    execfile(filename, namespace)

  File "/usr/local/lib/python3.6/site-packages/spyder/utils/site/sitecustomize.py", line 102, in execfile
    exec(compile(f.read(), filename, 'exec'), namespace)

  File "/Users/aaa/.spyder-py3/temp.py", line 7, in <module>
    import torch

  File "/usr/local/lib/python3.6/site-packages/torch/__init__.py", line 184, in <module>
    from .tensor import Tensor

  File "/usr/local/lib/python3.6/site-packages/torch/tensor.py", line 12, in <module>
    class Tensor(torch._C._TensorBase):

  File "/usr/local/lib/python3.6/site-packages/torch/tensor.py", line 170, in Tensor
    """)

RuntimeError: method 'detach' already has a docstring

套件版本

  • Spyder:3.2.8
  • 的Python:3.6.4
  • Qt:
  • PyQt:
  • 作业系统:macOS 10.13.4

依存关系

IPython >=4.0    :  6.3.1 (OK)
cython >=0.21    :  0.28.2 (OK)
jedi >=0.9.0     :  0.12.0 (OK)
nbconvert >=4.0  :  5.3.1 (OK)
numpy >=1.7      :  1.14.1 (OK)
pandas >=0.13.1  :  0.22.0 (OK)
psutil >=0.3     :  5.4.5 (OK)
pycodestyle >=2.3:  2.4.0 (OK)
pyflakes >=0.6.0 :  1.6.0 (OK)
pygments >=2.0   :  2.2.0 (OK)
pylint >=0.25    :  1.8.4 (OK)
qtconsole >=4.2.0:  4.3.1 (OK)
rope >=0.9.4     :  0.10.7 (OK)
sphinx >=0.6.6   :  1.7.4 (OK)
sympy >=0.7.3    :  1.1.1 (OK)
IPython Console Bug

所有3条评论

感谢您的举报。 我们将在下一个错误修正版本中解决此问题。

自己注意:我们需要将pytorch添加到UMR黑名单模块列表中。

@dalthviz ,请按照我上面的说明进行此工作。

我在spyder中使用pytorch(由“ pip install --user torch”安装)。 重新运行文件时出现错误(“ RuntimeError:方法'detach'已经具有文档字符串”),但是禁用UMR解决了该问题。 但是,在寻找原因时,我注意到两件事:

  1. 我无法在GUI的UMR排除项中添加割炬(“未安装在计算机上”)
  2. 在umr.py中,“ pytorch”被硬编码在列表中。 我想知道这是否正确,因为它是通过“ import torch”导入的
此页面是否有帮助?
0 / 5 - 0 等级

相关问题

Khalilsqu picture Khalilsqu  ·  3评论

JesterEE picture JesterEE  ·  3评论

gabrielclow picture gabrielclow  ·  3评论

yousefoleyaei picture yousefoleyaei  ·  3评论

ok97465 picture ok97465  ·  3评论