回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正试图在Google Colab中导入Tensorflow的最新rc2版本(目前为2.2.0rc2),但从我的setup.py安装脚本安装时无法导入</p>
<p>当我使用Colab单元格中的<code>!pip install tensorflow==2.2.0rc2</code>手动安装Tensorflow时,一切正常,我可以导入Tensorflow</p>
<p>接下来是如何在Google Colab中安装依赖项:</p>
<pre><code># Executes the cell in bash mode
%%bash
if [ ! -d "/content/deep-deblurring/" ];
then
git clone https://github.com/ElPapi42/deep-deblurring;
cd deep-deblurring/
else
cd deep-deblurring/;
git pull;
fi;
git checkout development
cd ..
pip uninstall -y tensorflow tensor2tensor tensorboard tensorboardcolab tensorflow-datasets tensorflow-estimator tensorflow-gan tensorflow-hub tensorflow-metadata tensorflow-privacy tensorflow-probability
pip install colab-env
pip install --upgrade grpcio
cd deep-deblurring/
python setup.py install
cd ..
</code></pre>
<p>下一个是我的setup.py文件:</p>
<pre class="lang-py prettyprint-override"><code>#!/usr/bin/python
# coding=utf-8
"""Setup and install the package and all the dependencies."""
from setuptools import setup, find_packages
with open('requirements.txt') as pro:
INSTALL_REQUIRES = pro.read().split('\n')
setup(
author='Whitman Bohorquez, Mo Rebaie',
author_email='whitman-2@hotmail.com',
name='deblurrer',
license='MIT',
description='Image Deblurring using Deep Learning Architecture',
version='1.0.0',
url='',
packages=find_packages(),
include_package_data=True,
python_requires='>=3.6',
install_requires=INSTALL_REQUIRES,
classifiers=[
'Development Status :: Alpha',
'Programming Language :: Python',
'Programming Language :: Python :: 3.6',
'Intended Audience :: Developers',
],
)
</code></pre>
<p>下一个是存储库中的requirements.txt:</p>
<pre><code>grpcio == 1.27.2
kaggle
numpy
tensorflow >= 2.2.0rc2
pandas
</code></pre>
<p>实际上,Google Colab附带了Tensorflow 2.2.0rc1,但我想要rc2。当我执行:</p>
<pre class="lang-py prettyprint-override"><code>import tensorflow as tf
print(tf.__version__)
</code></pre>
<p>在执行setup.py安装脚本之前,导入工作正常。但是在使用setup.py完成安装之后,会抛出错误<code>ImportError: No module named 'tensorflow'</code></p>
<p>我在执行<code>python setup.py install</code>之前和之后检查了tensorflow的安装,一切似乎都正常,安装前使用tensorflow 2.2.0rc1,安装后使用2.2.0rc2</p>
<p>正如我首先提到的,当我使用<code>!pip install tensorflow==2.2.0rc2</code>手动安装tensorflow时,导入工作正常,所以问题一定是围绕<code>setup.py</code>文件或需求,类似的,但我没有看到它</p>
<p>希望你们的帮助</p>
<p>PD:这个项目设置在上周五的最后一周开始工作,但今天我尝试运行它,突然没有明显的原因而停止工作</p>
<p>PD2:<a href="https://colab.research.google.com/drive/1Qv8h4ceEtDTq5lvt1uKJG8dk53_bUqBZ" rel="nofollow noreferrer">https://colab.research.google.com/drive/1Qv8h4ceEtDTq5lvt1uKJG8dk53_bUqBZ</a>这是我与您共享的一个Colab笔记本,它设置了重现问题的代码</p>
<p>PD3:这是导入tensorflow时Google Colab中的完整错误回溯抛出:</p>
<pre><code>---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
/usr/lib/python3.6/importlib/_bootstrap.py in _find_spec(name, path, target)
AttributeError: '_TensorflowImportHook' object has no attribute 'find_spec'
During handling of the above exception, another exception occurred:
ImportError Traceback (most recent call last)
2 frames
<ipython-input-7-69e5d056d1fc> in <module>()
----> 1 import tensorflow as tf
2
3 tf.__version__
/usr/local/lib/python3.6/dist-packages/google/colab/_import_hooks/_tensorflow.py in find_module(self, fullname, path)
26 if fullname != 'tensorflow':
27 return None
---> 28 self.module_info = imp.find_module(fullname.split('.')[-1], path)
29 return self
30
/usr/lib/python3.6/imp.py in find_module(name, path)
295 break # Break out of outer loop when breaking out of inner loop.
296 else:
--> 297 raise ImportError(_ERR_MSG.format(name), name=name)
298
299 encoding = None
ImportError: No module named 'tensorflow'
---------------------------------------------------------------------------
NOTE: If your import is failing due to a missing package, you can
manually install dependencies using either !pip or !apt.
To view examples of installing some common dependencies, click the
"Open Examples" button below.
---------------------------------------------------------------------------
</code></pre>