簡體   English   中英

無法使用 PyCharm 和 venv 導入 TF

[英]Can't import TF using PyCharm and venv

我讀了這個這個這個 這些不是我的情況。 我也試圖用這個來解決我的問題。

問題描述

我安裝了 cuda 10.0、pip 19.0.2、python 3.6.7、ipython 7.2.0、tensorflow-gpu 1.13.0-rc1、PyCharm CE 2018.3.4。 所有python模塊都安裝在虛擬環境中。

我在 PyCharm 中選擇了 venv 解釋器作為項目解釋器和 Python 控制台解釋器。

當我嘗試導入 tensorflow 時

import tensorflow as tf

我使用終端 ipython 成功,使用 PyCharm 失敗。

/home/roman/dev/venv/bin/python /home/roman/dev/box.neuro/test.py
Traceback (most recent call last):
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "/home/roman/dev/venv/lib/python3.6/imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "/home/roman/dev/venv/lib/python3.6/imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/roman/dev/box.neuro/test.py", line 1, in <module>
    import tensorflow as tf
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/python/__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/home/roman/dev/venv/lib/python3.6/site-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "/home/roman/dev/venv/lib/python3.6/imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "/home/roman/dev/venv/lib/python3.6/imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/errors

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

Process finished with exit code 1

附加信息

我確認我以下列方式使用了相同的 ipython。 我檢查了import requests ,注意到它沒有在終端和 PyCharm 中導入,將它安裝在終端中並驗證我現在可以在兩者中導入它。

我檢查了以下內容:

import os
print(os.environ['PATH'])

注意到終端和 PyCharm 的區別。 然后我在設置->構建、執行、部署->控制台->Python控制台中添加了環境變量PATH 現在輸出是一樣的,但我仍然無法在 PyCharm 中導入 tensorflow。

我檢查了以下內容:

import os
print(os.environ['LD_LIBRARY_PATH'])

注意到終端和 PyCharm 的區別。 PyCharm IPython 輸出為空,終端 IPython 輸出如下:

'/usr/local/cuda-10.0/lib64'

我自己找到了解決方法。 我在設置->構建、執行、部署->控制台->Python控制台中添加了環境變量“LD_LIBRARY_PATH”。 為了使用運行/調試配置,我為它們添加了相同的環境變量。 它不是用戶友好的,因為我應該一次又一次地為每個配置做它。

以前我在不同的計算機上都安裝了 PyCharm,它可以與 TF 一起正常工作,或者說 cuda 庫更好。

另外,我在 PyCharm 跟蹤器上發現了問題 因此,如果您對修復感興趣,請隨時為它投票。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM