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

使用Hugging Face DiffusionPipeline时遇TypeError问题求助

解决导入DiffusionPipeline时的TypeError: expected string or bytes-like object错误

问题描述

尝试使用Hugging Face的DiffusionPipeline实现文本生成图像功能,在导入阶段触发错误:TypeError: expected string or bytes-like object,完整报错回溯如下:

The traceback:
 File "c:\Users\BHAVYA SHAH\Desktop\Artificial Intelligence\app.py", line 9, in <module>
    from diffusers import DiffusionPipeline
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\diffusers\__init__.py", line 26, in <module>
    from .pipelines import DDIMPipeline, DDPMPipeline, KarrasVePipeline, LDMPipeline, PNDMPipeline, ScoreSdeVePipeline
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\diffusers\pipelines\__init__.py", line 11, in <module>
    from .latent_diffusion import LDMTextToImagePipeline
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\diffusers\pipelines\latent_diffusion\__init__.py", line 6, in <module>
    from .pipeline_latent_diffusion import LDMBertModel, LDMTextToImagePipeline
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\diffusers\pipelines\latent_diffusion\pipeline_latent_diffusion.py", line 9, in <module>
    from transformers.activations import ACT2FN
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\transformers\__init__.py", line 30, in <module>
    from . import dependency_versions_check
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\transformers\dependency_versions_check.py", line 17, in <module>
    from .utils.versions import require_version, require_version_core
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\transformers\utils\__init__.py", line 34, in <module>
    from .generic import (
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\transformers\utils\generic.py", line 29, in <module>
    from .import_utils import is_flax_available, is_tf_available, is_torch_available, is_torch_fx_proxy
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\transformers\utils\import_utils.py", line 376, in <module>
    torch_version = version.parse(importlib_metadata.version("torch"))
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\packaging\version.py", line 49, in parse
    return Version(version)
  File "C:\Users\BHAVYA SHAH\anaconda3\lib\site-packages\packaging\version.py", line 264, in __init__ 
    match = self._regex.search(version)
TypeError: expected string or bytes-like object

解决方案

从报错回溯可判断,问题根源是importlib_metadata.version("torch")未返回有效字符串版本号,大概率是Torch安装损坏或依赖库版本不兼容导致,按以下步骤处理:

  • 重新安装Torch
    先卸载当前可能损坏的Torch安装:

    pip uninstall torch -y
    

    根据硬件环境安装对应版本的Torch:

    • 若使用CUDA 11.8:
      pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
      
    • 若使用CPU:
      pip install torch torchvision torchaudio
      
  • 验证Torch版本获取是否正常
    运行以下代码检查版本读取是否正常:

    import importlib_metadata
    print(importlib_metadata.version("torch"))
    

    若能正常输出版本号,说明Torch安装修复成功;若仍报错,继续下一步。

  • 更新版本解析依赖库
    packaging和importlib_metadata负责版本解析,版本过旧可能引发异常:

    pip install --upgrade packaging importlib_metadata
    
  • 更新核心依赖库
    确保Diffusers和Transformers为最新兼容版本:

    pip install --upgrade diffusers transformers
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 01:05:25