Skip to content

We now require users to upgrade torch to at least v2.6 in order to use the function. #38464

Open
@mattdornfeld

Description

@mattdornfeld

System Info

Ran into this bug #38329. Tried installing from main to get access to this fix #38376, but ran into this bug

(python) MacBookPro~/projects/bastet[embedding_app_python L|✚2…1] % python3 embeddingApp/embedding_app/main.py
Traceback (most recent call last):
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/embedding_app/main.py", line 30, in <module>
    model: EmbeddingModel = create_embedding_model()
                            ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/embedding_app/utils.py", line 9, in create_embedding_model
    return SentenceTransformer(configs.EMBEDDING_MODEL_NAME, cache_folder=str(configs.EMBEDDING_MODEL_CACHE_DIR))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/sentence_transformers/SentenceTransformer.py", line 309, in __init__
    modules, self.module_kwargs = self._load_sbert_model(
                                  ^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/sentence_transformers/SentenceTransformer.py", line 1824, in _load_sbert_model
    module = module_class.load(module_path)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/sentence_transformers/models/CLIPModel.py", line 98, in load
    return CLIPModel(model_name=input_path)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/sentence_transformers/models/CLIPModel.py", line 18, in __init__
    self.model = transformers.CLIPModel.from_pretrained(model_name)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/transformers/modeling_utils.py", line 314, in _wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/transformers/modeling_utils.py", line 4695, in from_pretrained
    ) = cls._load_pretrained_model(
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/transformers/modeling_utils.py", line 4954, in _load_pretrained_model
    load_state_dict(checkpoint_files[0], map_location="meta", weights_only=weights_only).keys()
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/transformers/modeling_utils.py", line 559, in load_state_dict
    check_torch_load_is_safe()
  File "/Users/matthewdornfeld/projects/bastet/embeddingApp/build/python/lib/python3.11/site-packages/transformers/utils/import_utils.py", line 1417, in check_torch_load_is_safe
    raise ValueError(
ValueError: Due to a serious vulnerability issue in `torch.load`, even with `weights_only=True`, we now require users to upgrade torch to at least v2.6 in order to use the function. This version restriction does not apply when loading files with safetensors.

I am on an x86 Mac and cannot upgrade to Torch 2.6

(python) MacBookPro~/projects/bastet % pip3 install torch==2.6.0
ERROR: Could not find a version that satisfies the requirement torch==2.6.0 (from versions: 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.1.2, 2.2.0, 2.2.1, 2.2.2)
ERROR: No matching distribution found for torch==2.6.0

Who can help?

No response

Information

  • The official example scripts
  • My own modified scripts

Tasks

  • An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
  • My own task or dataset (give details below)

Reproduction

  1. Install from main, version 4.1.0, 3.4.0, or 2.7.0 in PyPi. It seems like this change was pushed to every version?
  2. Attempt to load SentenceTransformer("clip-ViT-B-32", cache_folder="/tmp/cache")

Expected behavior

SentenceTransformer should load the clip model without a bug

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions