You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已安装InstructorEmbedding仍报依赖缺失错误的技术求助

问题解决:InstructorEmbedding依赖缺失导致ImportError

问题描述

在Jupyter Notebook环境(Python 3.12/3.11)中,已安装InstructorEmbedding库,但运行以下代码时持续出现ImportError,重启内核无效:

import torch
from langchain.embeddings import HuggingFaceInstructEmbeddings

DEVICE = "cuda:0" if torch.cuda.is_available() else "cpu"


embedding = HuggingFaceInstructEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2", model_kwargs={"device": DEVICE})

报错信息

---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
File /opt/conda/lib/python3.11/site-packages/langchain_community/embeddings/huggingface.py:151, in HuggingFaceInstructEmbeddings.__init__(self, **kwargs)
    150 try:
---> 151     from InstructorEmbedding import INSTRUCTOR
    153     self.client = INSTRUCTOR(
    154         self.model_name, cache_folder=self.cache_folder, **self.model_kwargs
    155     )

File /opt/conda/lib/python3.11/site-packages/InstructorEmbedding/__init__.py:1
----> 1 from .instructor import *

File /opt/conda/lib/python3.11/site-packages/InstructorEmbedding/instructor.py:9
      8 from torch import Tensor, device
----> 9 from sentence_transformers import SentenceTransformer
     10 from sentence_transformers.models import Transformer

ModuleNotFoundError: No module named 'sentence_transformers'

The above exception was the direct cause of the following exception:

ImportError                               Traceback (most recent call last)
Cell In[2], line 10
      4 DEVICE = "cuda:0" if torch.cuda.is_available() else "cpu"
      6 #loader = PyPDFDirectoryLoader("aircraft_pdfs")
      7 #docs = loader.load()
      8 #print(len(docs))  # length of all pages together
---> 10 embedding = HuggingFaceInstructEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2", model_kwargs={"device": DEVICE})

File /opt/conda/lib/python3.11/site-packages/langchain_community/embeddings/huggingface.py:157, in HuggingFaceInstructEmbeddings.__init__(self, **kwargs)
    153     self.client = INSTRUCTOR(
    154         self.model_name, cache_folder=self.cache_folder, **self.model_kwargs
    155     )
    156 except ImportError as e:
---> 157     raise ImportError("Dependencies for InstructorEmbedding not found.") from e

ImportError: Dependencies for InstructorEmbedding not found.

当前已安装包(pip freeze部分输出)

transformers==4.37.2
torch==2.2.0
langchain==0.1.6
InstructorEmbedding==1.0.1
...

解决方案

从报错栈可知,InstructorEmbedding内部依赖sentence_transformers库,但当前环境未安装该包,导致模块找不到。执行以下命令安装缺失依赖:

pip install sentence-transformers

安装完成后,重启Jupyter内核,重新运行代码即可解决问题。

内容的提问来源于stack exchange,提问作者CSe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 03:52:36