首页 > 编程问答 >句子转换器导入失败:没有名为“numpy.strings”的模块

句子转换器导入失败:没有名为“numpy.strings”的模块

时间:2024-07-21 01:52:44浏览次数:22  
标签:python python-3.x visual-studio-code huggingface sentence-transformers

我有一个使用 python 3.11 安装了 Sentence-Transformers 的虚拟环境。我应该拥有所有依赖项,例如 torch 和 numpy 等。我正在 vs-code jupyter 笔记本中运行,到目前为止它在 Colab 上似乎运行良好。

什么是 numpy.strings?尝试导入时出现此错误:

ModuleNotFoundError                       Traceback (most recent call last)
Cell In[96], line 1
----> 1 from sentence_transformers import SentenceTransformer

File ~/Desktop/Heeyo/.venv/lib/python3.11/site-packages/sentence_transformers/__init__.py:7
      4 import importlib
      5 import os
----> 7 from sentence_transformers.cross_encoder.CrossEncoder import CrossEncoder
      8 from sentence_transformers.datasets import ParallelSentencesDataset, SentencesDataset
      9 from sentence_transformers.LoggingHandler import LoggingHandler

File ~/Desktop/Heeyo/.venv/lib/python3.11/site-packages/sentence_transformers/cross_encoder/__init__.py:1
----> 1 from .CrossEncoder import CrossEncoder
      3 __all__ = ["CrossEncoder"]

File ~/Desktop/Heeyo/.venv/lib/python3.11/site-packages/sentence_transformers/cross_encoder/CrossEncoder.py:16
     13 from transformers.tokenization_utils_base import BatchEncoding
     14 from transformers.utils import PushToHubMixin
---> 16 from sentence_transformers.evaluation.SentenceEvaluator import SentenceEvaluator
     17 from sentence_transformers.readers import InputExample
     18 from sentence_transformers.SentenceTransformer import SentenceTransformer

File ~/Desktop/Heeyo/.venv/lib/python3.11/site-packages/sentence_transformers/evaluation/__init__.py:1
----> 1 from .BinaryClassificationEvaluator import BinaryClassificationEvaluator
...

File ~/Desktop/Heeyo/.venv/lib/python3.11/site-packages/numpy/__init__.py:376, in __getattr__(attr)
      0 <Error retrieving source code with stack_data see ipython/ipython#13598>

ModuleNotFoundError: No module named 'numpy.strings'

我已尝试重新安装所有相关软件包,但似乎没有帮助。


看到此错误是因为“numpy.strings”模块已从 NumPy 1.20.0 中删除。看来 Sentence-Transformers 或其依赖项之一使用的是与较旧 NumPy 版本兼容的旧代码。

要解决此问题,可以尝试以下两种解决方案:

1. 降级的 NumPy 版本:

  • 卸载当前的 NumPy 安装: bash pip uninstall numpy
  • 安装 1.20.0 之前的版本: bash pip install numpy==1.19.5 (可以选择任何 1.19.5 之前的版本,但建议选择 1.19.x 系列的最新版本。)

2. 升级 Sentence-Transformers:

  • 检查是否有更新的 Sentence-Transformers 版本,该版本解决了与较新 NumPy 版本的兼容性问题: bash pip install --upgrade sentence-transformers
  • 如果升级没有解决问题,可能需要查看 Sentence-Transformers 文档或 GitHub 存储库,以查找有关此特定问题的任何已知问题或解决方法。

如果这两种解决方案都不起作用,可能需要创建一个新的虚拟环境并从头开始安装所有内容,以确保所有软件包版本都兼容。

请记住,使用较旧的 NumPy 版本可能不是一个长期的解决方案,因为它可能会带来安全风险或与其他软件包不兼容。 因此,建议在可能的情况下尝试升级 Sentence-Transformers 或寻找替代解决方案。

标签:python,python-3.x,visual-studio-code,huggingface,sentence-transformers
From: 78773499

相关文章

  • 有人可以解决我的代码中的问题吗?而且我无法在我的电脑上安装 nsetools。如何在 python
    从nsetools导入Nseimportpandasaspdnse=Nse()all_stock_codes=nse.get_stock_codes()companies_with_low_pe=[]对于all_stock_codes中的代码:如果代码=='符号':继续尝试:stock_quote=nse.get_quote(代码)pe_ratio=stock_quote.get('priceT......
  • 将 python 脚本的 stdin 重定向到 fifo 会导致 RuntimeError: input():lost sys.stdin
    我有这个python脚本,它的作用是充当服务器,它从重定向到fifo的stdin读取命令:test.py:whileTrue:try:line=input()exceptEOFError:breakprint(f'Received:{line}')在bash中运行命令:mkfifotestfifotest.py<testfifo......
  • Python/Flask mysql 游标:为什么它不起作用?
    fromflaskimportFlaskfromflask_mysqldbimportMySQLapp=Flask(__name__)app.config['MYSQL_HOST']='localhost'app.config['MYSQL_USER']='root'app.config['MYSQL_PASSWORD']='password'a......
  • Python pandas to_csv 导致 OSError: [Errno 22] 参数无效
    我的代码如下:importpandasaspdimportnumpyasnpdf=pd.read_csv("path/to/my/infile.csv")df=df.sort_values(['distance','time'])df.to_csv("path/to/my/outfile.csv")此代码成功从infile.csv(一个3GBcsv文件)读取数据,对其进行排......
  • 从 python 中的字符串列表中提取 def 定义函数的标签
    我想使用Python中的正常def过程创建函数,并将标签分配给从字符串列表中提取的命名空间。如何实现这一点?这个问题的动机:我正在创建一个与sympy兼容的python函数库,供数学家用于符号计算实验。许多函数需要初始化具有相关标签的多个对象的系统,这些标签分别由用户提供的字......
  • 在 Raspberry Pi 4 上使用 Python 从具有 SPI 连接的 MT6816 磁性编码器读取
    我对这个领域完全陌生,并不真正知道自己在做什么并且需要帮助。我正在尝试使用MT681614位磁性编码器通过RaspberryPi的SPI连接读取绝对角度。我有以下问题:在硬件方面,是否只是简单地连接必要的连接(3.3V、MOSI、MISO、SCK、GND、CE01)?对于编码......
  • PythonW 不运行脚本。严重地
    因此,使用Windows10和Python3.6。我创建了一个.py脚本,它可以使用命令pythonmyscript.py在命令提示符下正常运行,但是当我制作该脚本的精确副本并为其赋予扩展名.pyw,并尝试使用pythonw运行它时命令pythonwmyscript.pyw,什么也没有发生......
  • 如何使用Python和Selenium模拟产品购买以获取库存信息
    我正在开发一项网络抓取服务,主要针对时尚行业。我的目标是提供有关产品的全面数据,包括库存水平。为了实现这一目标,我需要模拟购买以确定每种尺寸的产品的最大可用数量。我一直在使用Python和Selenium进行网络抓取部分,但在准确模拟购买方面面临着挑战检索股票信息的过程。......
  • 连接Python套接字的问题
    当我写“关闭”时,我试图让我的电报机器人关闭计算机。我不想将机器人连接到网站上的托管。我选择我的手机(AndroidRedmiNote10)作为托管。我在上面安装了Termux和Pydroid。我写了两个文件:main到我的电脑,client到我的手机。通过在计算机上运行这两个文件,一切正常。但是,当我在......
  • 如何修复导入 Numexpr Python 时的错误
    在Windows10Python3.7.9(IDLE)上,我成功安装了“pipinstallnumexpr”,但在“importnumexprasne”时出现错误:Traceback(最近一次调用):文件“<pyshell#21>”,第267行,位于将numexpr导入为ne文件“C:\Python379\lib\site-packages\numexpr_init_.py”......