【心酸报错】cannot import name ‘split_torch_state_dict_into_shards‘ from ‘huggingface_hub‘

D:\mydatapro\venv_net\Lib\site-packages\transformers\utils\generic.py:311: FutureWarning: `torch.utils._pytree._register_pytree_node` is deprecated. Please use `torch.utils._pytree.register_pytree_node` instead.
  torch.utils._pytree._register_pytree_node(
Traceback (most recent call last):
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\utils\import_utils.py", line 1184, in _get_module
    return importlib.import_module("." + module_name, self.__name__)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\Anaconda\Lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\generation\utils.py", line 27, in <module>
    from ..integrations.deepspeed import is_deepspeed_zero3_enabled
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\integrations\__init__.py", line 14, in <module>
    from .bitsandbytes import (
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\integrations\bitsandbytes.py", line 18, in <module>
    from accelerate import init_empty_weights
  File "D:\mydatapro\venv_net\Lib\site-packages\accelerate\__init__.py", line 16, in <module>
    from .accelerator import Accelerator
  File "D:\mydatapro\venv_net\Lib\site-packages\accelerate\accelerator.py", line 34, in <module>
    from huggingface_hub import split_torch_state_dict_into_shards
ImportError: cannot import name 'split_torch_state_dict_into_shards' from 'huggingface_hub' (D:\mydatapro\venv_net\Lib\site-packages\huggingface_hub\__init__.py)

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

Traceback (most recent call last):
  File "D:\mydatapro\myweb\create_ChatGlm2.py", line 50, in <module>
    llm.load_model(model_path = r'F:\\THUDM\\chatglm2-6b-int4')
  File "D:\mydatapro\myweb\create_ChatGlm2.py", line 33, in load_model
    self.model = AutoModel.from_pretrained(model_path,trust_remote_code=True,revision="v1.0").float()
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\models\auto\auto_factory.py", line 550, in from_pretrained
    model_class = get_class_from_dynamic_module(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\dynamic_module_utils.py", line 497, in get_class_from_dynamic_module  
    return get_class_in_module(class_name, final_module.replace(".py", ""))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\dynamic_module_utils.py", line 199, in get_class_in_module
    module = importlib.import_module(module_path)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "E:\Anaconda\Lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\shuhu/.cache\huggingface\modules\transformers_modules\chatglm2-6b-int4\modeling_chatglm.py", line 21, in <module> 
    from transformers.modeling_utils import PreTrainedModel
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\modeling_utils.py", line 39, in <module>
    from .generation import GenerationConfig, GenerationMixin
  File "<frozen importlib._bootstrap>", line 1229, in _handle_fromlist
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\utils\import_utils.py", line 1174, in __getattr__
    module = self._get_module(self._class_to_module[name])
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\mydatapro\venv_net\Lib\site-packages\transformers\utils\import_utils.py", line 1186, in _get_module
    raise RuntimeError(
RuntimeError: Failed to import transformers.generation.utils because of the following error (look up to see its traceback):        
cannot import name 'split_torch_state_dict_into_shards' from 'huggingface_hub' (D:\mydatapro\venv_net\Lib\site-packages\huggingface_hub\__init__.py)

huggingface_hub版本不够

pip install --upgrade huggingface-hub==0.24.5

在这里插入图片描述

### 解决 `ImportError: cannot import name 'PILLOW_VERSION' from 'PIL'` 错误 当尝试导入 `torchvision` 出现此错误时,通常是因为使用的 Pillow 版本较高,在这些版本中已经移除了 `PILLOW_VERSION` 的定义。具体来说,自 Pillow 7.0.0 起不再支持该变量[^5]。 #### 修改源码方法 一种临时性的解决办法是在本地修改引发错误的 Python 文件中的相应部分: 1. **定位文件** 寻找并打开导致错误的具体 `.py` 文件,通常是 `functional.py` 或者其他涉及图像处理功能的部分。 2. **编辑代码** 使用文本编辑器(如记事本)找到所有引用 `PILLOW_VERSION` 的地方,并将其替换为 `__version__`。例如: ```python from PIL import Image, ImageOps, ImageEnhance, __version__ ``` 通过上述更改可以绕过这个特定的兼容性问题[^3]。 #### 升级或降级依赖库的方法 另一种更为推荐的方式是调整环境中所安装软件包的版本来匹配彼此之间的兼容需求。对于 Anaconda 用户而言,可以通过创建一个新的虚拟环境并指定合适的 PyTorchTorchVision 版本来解决问题。比如: ```bash conda create -n myenv python=3.7 conda activate myenv pip install torch==1.8.0 torchvision==0.9.0 pillow-simd ``` 这里选择了较新的稳定版次作为例子;实际操作时应根据项目要求和个人偏好选择适当版本组合[^4]。 另外也可以考虑直接更新整个 Pillow 库至最新状态,这可能会自动修复一些已知的问题: ```bash pip uninstall pillow pip install --upgrade pillow ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只天蝎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值