princeton-nlp / SimCSE

[EMNLP 2021] SimCSE: Simple Contrastive Learning of Sentence Embeddings https://arxiv.org/abs/2104.08821
MIT License
3.39k stars 512 forks source link

Runtime error when importing simcse #168

Closed VictorMatt01 closed 2 years ago

VictorMatt01 commented 2 years ago

Hi there, i followed the instalation guide and executed 'pip install simcse', but i got the following error and I don't know how to fix it.


ImportError Traceback (most recent call last) Input In [20], in <cell line: 1>() ----> 1 import simcse

File /anaconda/envs/py38_default/lib/python3.8/site-packages/simcse/init.py:1, in ----> 1 from .tool import SimCSE

File /anaconda/envs/py38_default/lib/python3.8/site-packages/simcse/tool.py:7, in 5 import torch 6 from torch import Tensor, device ----> 7 import transformers 8 from transformers import AutoModel, AutoTokenizer 9 from sklearn.metrics.pairwise import cosine_similarity

File /anaconda/envs/py38_default/lib/python3.8/site-packages/transformers/init.py:43, in 40 from typing import TYPE_CHECKING 42 # Check the dependencies satisfy the minimal versions required. ---> 43 from . import dependency_versions_check 44 from .file_utils import ( 45 _LazyModule, 46 is_flax_available, (...) 53 is_vision_available, 54 ) 55 from .utils import logging

File /anaconda/envs/py38_default/lib/python3.8/site-packages/transformers/dependency_versions_check.py:36, in 33 if pkg in deps: 34 if pkg == "tokenizers": 35 # must be loaded here, or else tqdm check may fail ---> 36 from .file_utils import is_tokenizers_available 38 if not is_tokenizers_available(): 39 continue # not required, check version only if installed

File /anaconda/envs/py38_default/lib/python3.8/site-packages/transformers/file_utils.py:51, in 49 import requests 50 from filelock import FileLock ---> 51 from huggingface_hub import HfApi, HfFolder, Repository 52 from transformers.utils.versions import importlib_metadata 54 from . import version

File /anaconda/envs/py38_default/lib/python3.8/site-packages/huggingface_hub/init.py:63, in 61 from .hub_mixin import ModelHubMixin, PyTorchModelHubMixin 62 from .inference_api import InferenceApi ---> 63 from .keras_mixin import ( 64 KerasModelHubMixin, 65 from_pretrained_keras, 66 push_to_hub_keras, 67 save_pretrained_keras, 68 ) 69 from .repository import Repository 70 from .snapshot_download import snapshot_download

File /anaconda/envs/py38_default/lib/python3.8/site-packages/huggingface_hub/keras_mixin.py:24, in 21 logger = logging.get_logger(name) 23 if is_tf_available(): ---> 24 import tensorflow as tf 27 def _extract_hyperparameters_from_keras(model): 28 if model.optimizer is not None:

File /anaconda/envs/py38_default/lib/python3.8/site-packages/tensorflow/init.py:37, in 34 import sys as _sys 35 import typing as _typing ---> 37 from tensorflow.python.tools import module_util as _module_util 38 from tensorflow.python.util.lazy_loader import LazyLoader as _LazyLoader 40 # Make sure code inside the TensorFlow codebase can use tf2.enabled() at import.

File /anaconda/envs/py38_default/lib/python3.8/site-packages/tensorflow/python/init.py:37, in 29 # We aim to keep this file minimal and ideally remove completely. 30 # If you are adding a new file with @tf_export decorators, 31 # import it in modules_with_exports.py instead. 32 33 # go/tf-wildcard-import 34 # pylint: disable=wildcard-import,g-bad-import-order,g-import-not-at-top 36 from tensorflow.python import pywrap_tensorflow as _pywrap_tensorflow ---> 37 from tensorflow.python.eager import context 39 # pylint: enable=wildcard-import 40 41 # Bring in subpackages. 42 from tensorflow.python import data

File /anaconda/envs/py38_default/lib/python3.8/site-packages/tensorflow/python/eager/context.py:35, in 33 from tensorflow.python import pywrap_tfe 34 from tensorflow.python import tf2 ---> 35 from tensorflow.python.client import pywrap_tf_session 36 from tensorflow.python.eager import executor 37 from tensorflow.python.eager import monitoring

File /anaconda/envs/py38_default/lib/python3.8/site-packages/tensorflow/python/client/pywrap_tf_session.py:19, in 17 # pylint: disable=invalid-import-order,g-bad-import-order, wildcard-import, unused-import 18 from tensorflow.python import pywrap_tensorflow ---> 19 from tensorflow.python.client._pywrap_tf_session import * 20 from tensorflow.python.client._pywrap_tf_session import _TF_SetTarget 21 from tensorflow.python.client._pywrap_tf_session import _TF_SetConfig

ImportError: SystemError: <built-in method contains of dict object at 0x7f9a366a83c0> returned a result with an error set

gaotianyu1350 commented 2 years ago

Hi,

It seems to be a tensor flow error. SimCSE does not need tensor flow. Maybe you can try uninstalling tensor flow and running it again.