使用Keras-NLP预训练BERT模型时的TensorFlow依赖版本冲突问题
解决Keras-NLP、Keras、TensorFlow及相关依赖的版本冲突问题
核心版本匹配规则
- Keras 3.x 需搭配 Keras-NLP 0.10.0及以上 版本
- TensorFlow 版本必须 ≥2.15.0(2.15版本开始原生支持Keras 3作为独立后端)
tensorflow-text版本必须与TensorFlow主版本完全一致(例如TensorFlow 2.15.0对应tensorflow-text 2.15.0)- 若使用Windows平台的
tensorflow-intel,其版本需与TensorFlow版本保持一致
正确安装步骤(新建虚拟环境下执行)
按以下顺序安装,避免pip自动触发版本替换:
- 安装指定版本的TensorFlow(Windows平台替换为
tensorflow-intel)pip install tensorflow==2.15.0 # Windows平台执行: # pip install tensorflow-intel==2.15.0 - 安装对应版本的tensorflow-text
pip install tensorflow-text==2.15.0 - 安装Keras 3.x及兼容的Keras-NLP
pip install keras>=3.0.0 keras-nlp>=0.10.0
验证安装
运行以下测试代码确认环境正常:
import keras_nlp bert_classifier = keras_nlp.models.BertClassifier.from_preset("bert_tiny_en_uncased") print("BERT模型加载成功")
冲突原因说明
- 直接先安装Keras 3和Keras-NLP时,pip会默认安装依赖Keras 2.x的旧版TensorFlow,导致版本冲突
- 单独升级TensorFlow时,旧版TensorFlow的依赖规则会强制卸载Keras 3并安装Keras 2,同时未同步升级的
tensorflow-text会与新TensorFlow版本不兼容
内容的提问来源于stack exchange,提问作者PamPamPam
相关产品推荐
相关产品推荐

