无法从“变压器”导入名称“TFBertForQuestionAnswering”

Posted

技术标签:

【中文标题】无法从“变压器”导入名称“TFBertForQuestionAnswering”【英文标题】:cannot import name 'TFBertForQuestionAnswering' from 'transformers' 【发布时间】:2020-11-04 12:58:23 【问题描述】:

目前我正在使用变压器(3.0.2)和python(3.7.3),遇到以下错误:

from transformers import BertTokenizer, TFBertForQuestionAnswering

model = TFBertForQuestionAnswering.from_pretrained('bert-base-cased')
f = open(model_path, "wb")
pickle.dump(model, f)

如何解决这个问题?

【问题讨论】:

你安装了 TensorFlow 吗?如果没有,请尝试pip install tensorflow。如果是,请尝试在交互式 Python shell 中导入 TFBertForQuestionAnswering。它可能会为您提供比运行脚本时更详细的错误消息。 【参考方案1】:

升级您的 TensorFlow 库。它适用于 2.3.1。版本。

【讨论】:

【参考方案2】:

某些 TensorFlow 组件仅在您安装了 TensorFlow2 后才可用。确保您拥有您正在使用的环境所需的版本!

【讨论】:

为了让您的答案更有用,请添加代码 sn-p 或说明原始发布者如何检查版本。也许您可以编辑您的答案并扩展如何安装最新的软件包。欢迎来到 S/O!

以上是关于无法从“变压器”导入名称“TFBertForQuestionAnswering”的主要内容,如果未能解决你的问题,请参考以下文章

变压器:导入包时出错。 “ImportError:无法从 'torch.optim.lr_scheduler' 导入名称 'SAVE_STATE_WARNING'”

无法从“变压器”导入“AutoModelForSequenceClassification”

导入sklearn时Python出错..无法从'joblib.logger'导入名称'Logger'

从 urllib2 导入请求 - 无法导入名称请求

python ImportError:无法从'faker'导入名称'Faker'

Python 导入错误:无法从“sklearn.externals”导入名称“六”