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

Python3.11下transformers库pipeline模块导入失败求助

问题解决:ImportError: cannot import name 'formatargspec' from 'inspect'

问题根源

从报错追踪可知,旧版本的wrapt库在Python 3.11环境中尝试调用已被移除的inspect.formatargspec函数(Python 3.11正式移除了该废弃函数)。导入transformers.pipeline时会间接触发TensorFlow的导入流程,而TensorFlow依赖旧版wrapt,最终导致报错。

解决方案

方案1:升级wrapt到兼容版本

直接升级wrapt到支持Python 3.11的版本(>=1.14.1版本已修复该问题):

pip install --upgrade wrapt

若使用conda环境:

conda update wrapt

方案2:升级TensorFlow到兼容Python 3.11的版本

如果升级wrapt后仍有问题,可能是旧版TensorFlow与Python 3.11不兼容,建议升级到TensorFlow 2.13及以上版本:

pip install --upgrade tensorflow

方案3:禁用Transformers对TensorFlow的加载(若不需要TF)

如果你的场景不需要TensorFlow,可以在导入Transformers前设置环境变量禁用TF相关模块:

import os
os.environ["TRANSFORMERS_NO_TF"] = "1"
from transformers import pipeline

补充说明

你提到Transformers 4.28.0版本无此问题,是因为该版本的Transformers在导入pipeline时,可能没有触发TensorFlow的导入逻辑,或者当时的依赖版本组合恰好兼容Python 3.11。

内容的提问来源于stack exchange,提问作者Luis Enrique Garduno Morales

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 13:55:54