无法为拥抱脸变压器库安装 tensorflow

Posted

技术标签:

【中文标题】无法为拥抱脸变压器库安装 tensorflow【英文标题】:Cant install tensorflow for huggingface transformers library 【发布时间】:2021-09-15 05:52:29 【问题描述】:

我试图在我的 python 项目中使用 huggingface 转换器库。我是第一次使用 python 程序员,即使我的机器上已经安装了 tensorflow,我也遇到了这个错误消息:

>>> from transformers import pipeline

None of PyTorch, TensorFlow >= 2.0, or Flax have been found. Models won't be available and only tokenizers, configuration and file/data utilities can be used.

我发现 tensorflow 不存在,尽管我已经通过pip 安装了它。我已经尝试卸载它并重新安装它,但是当我尝试导入包时,它只是以ModuleNotFoundError

的形式返回
>>> import tensorflow

Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    import tensorflow
  File "C:\Users\######\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages\tensorflow\__init__.py", line 41, in <module>
    from tensorflow.python.tools import module_util as _module_util
ModuleNotFoundError: No module named 'tensorflow.python

我已尝试使用pipconda 进行卸载和重新安装。我什至尝试使用相同的方法安装pytorch。它总是说软件包已成功安装,但错误仍然存​​在。

我使用的是 Python 3.9,我的操作系统是 Windows 10。我不知道我做错了什么。但我知道解决方案肯定不会是卸载并重新安装一个包。

Pip 版本 (pip -V):

pip 21.1.3 from c:\users\######\appdata\local\programs\python\python39\lib\site-packages\pip (python 3.9)

Python 版本 (python -V):

Python 3.9.5

Python 路径列表 我尝试将sys.path 的输出与pip -V 的输出进行比较。 我看到的pip -V 路径最近的路径在底部,但是我没有找到确切的目录。

>>> import sys
>>> sys.path

['', 'C:\\windows\\system32', 'C:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.9_3.9.1520.0_x64__qbz5n2kfra8p0', 'C:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.9_3.9.1520.0_x64__qbz5n2kfra8p0\\python39.zip', 'C:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.9_3.9.1520.0_x64__qbz5n2kfra8p0\\DLLs', 'C:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.9_3.9.1520.0_x64__qbz5n2kfra8p0\\lib', 'C:\\Users\\######\\AppData\\Local\\Microsoft\\WindowsApps\\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0', 'C:\\Users\\######\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python39\\site-packages', 'C:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.9_3.9.1520.0_x64__qbz5n2kfra8p0', 'C:\\Program Files\\WindowsApps\\PythonSoftwareFoundation.Python.3.9_3.9.1520.0_x64__qbz5n2kfra8p0\\lib\\site-packages']

最近的路径:

C:\Users\######\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.9_qbz5n2kfra8p0\LocalCache\local-packages\Python39\site-packages

【问题讨论】:

如果安装了,可以在from transformers ...之前运行import tensorflow吗? 您安装了多个 python 解释器,这就是为什么安装的东西不会显示在您的 python 解释器中,使用 pip -V 并将其与解释器中出现的 python 版本进行比较(当您运行 python 时) 在不了解它们的作用以及它们是否适用于您的情况下随机运行命令,不会帮助您学习。 不一定,如下,打开一个python解释器,导入sys,然后调用sys.path和pip -V的输出比较 另外,最好发布导入 TensorFlow 时产生的整个回溯。 【参考方案1】:

来自 cmets

你安装了多个 python 解释器,这就是为什么 安装的东西不会显示在你的 python 解释器中,使用pip -V 并将其与解释器中出现的 python 版本进行比较。删除一个并只使用一个然后你的问题将是 已解决(转述自 Dr.Snoopy)

【讨论】:

以上是关于无法为拥抱脸变压器库安装 tensorflow的主要内容,如果未能解决你的问题,请参考以下文章

如何使用拥抱脸变压器批量制作训练器垫输入?

使用拥抱面变压器只保存最佳重量

如何更改拥抱脸转换器的默认缓存目录

Jupyter 笔记本中的 ModuleNotFoundError 拥抱脸数据集

带有张量流的拥抱脸转换器将两个文件保存为模型权重

基于 BERT 的 CNN - 卷积和 Maxpooling