win10系统 python3.11.9 的 sentence_transformers安装报错解决

pip install sentence_transformers报错的解决
可以直接看 ‘解决方法’ 这块

系统配置

我的系统是 win10专业版Python 3.11.9

问题过程

pip install sentence_transformers安装成功
但是运行代码后报错:

(.venv) PS D:\embeddings> & d:/embeddings/.venv/Scripts/python.exe d:/embeddings/gte-Qwen2-7B-instruct.py
Traceback (most recent call last):
  File "d:\embeddings\gte-Qwen2-7B-instruct.py", line 9, in <module>
    model = SentenceTransformer("Alibaba-NLP/gte-Qwen2-7B-instruct", trust_remote_code=True)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\embeddings\.venv\Lib\site-packages\sentence_transformers\SentenceTransformer.py", line 287, in __init__ 
    modules = self._load_sbert_model(
              ^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\embeddings\.venv\Lib\site-packages\sentence_transformers\SentenceTransformer.py", line 1487, in _load_sbert_model
    module = Transformer(model_name_or_path, cache_dir=cache_folder, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\embeddings\.venv\Lib\site-packages\sentence_transformers\models\Transformer.py", line 54, in __init__   
    self._load_model(model_name_or_path, config, cache_dir, **model_args)
  File "D:\embeddings\.venv\Lib\site-packages\sentence_transformers\models\Transformer.py", line 85, in _load_model    self.auto_model = AutoModel.from_pretrained(
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\embeddings\.venv\Lib\site-packages\transformers\models\auto\auto_factory.py", line 551, in from_pretrained
    model_class = get_class_from_dynamic_module(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ed
    model_class = get_class_from_dynamic_module(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    model_class = get_class_from_dynamic_module(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\embeddings\.venv\Lib\site-packages\transformers\dynamic_module_utils.py", line 502, in get_class_from_dy  File "D:\embeddings\.venv\Lib\site-packages\transformers\dynamic_module_utils.py", line 502, in get_class_from_dynamic_module
namic_module
                   ^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\embeddings\.venv\Lib\site-packages\transformers\dynamic_module_utils.py", line 327, in get_cached_module_file
    modules_needed = check_imports(resolved_module_file)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\embeddings\.venv\Lib\site-packages\transformers\dynamic_module_utils.py", line 182, in check_imports    
    raise ImportError(
ImportError: This modeling file requires the following packages that were not found in your environment: flash_attn. Run `pip install flash_attn`

可以看到terminal提示需要 pip install flash_attn
于是我继续pip install flash_attn
报错
ModuleNotFoundError: No module named 'torch'

(.venv) PS D:\embeddings> pip install flash_attn
Collecting flash_attn
  Using cached flash_attn-2.6.1.tar.gz (2.6 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [20 lines of output]
      Traceback (most recent call last):
        File "D:\embeddings\.venv\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 353, in <module>
          main()
        File "D:\embeddings\.venv\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "D:\embeddings\.venv\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
                 ^^^^^^^^^^^^^^^^^^^^^
        File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-7h0x5mak\overlay\Lib\site-packages\setuptools\build_meta.py", line 327, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-7h0x5mak\overlay\Lib\site-packages\setuptools\build_meta.py", line 297, in _get_build_requires
          self.run_setup()
        File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-7h0x5mak\overlay\Lib\site-packages\setuptools\build_meta.py", line 497, in run_setup
          super().run_setup(setup_script=setup_script)
        File "C:\Users\Administrator\AppData\Local\Temp\pip-build-env-7h0x5mak\overlay\Lib\site-packages\setuptools\build_meta.py", line 313, in run_setup
          exec(code, locals())
        File "<string>", line 19, in <module>
      ModuleNotFoundError: No module named 'torch'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.

解决方法

步骤一:
安装CUDA Toolkit以及cuda:
cuda官网的下载页面选择匹配自己系统的CUDA Toolkit进行无脑安装
步骤二:
指定 sentence-transformers版本安装
pip install sentence-transformers==2.2.0

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值