运行BERTopic官方代码时遭遇bertopic.dimensionality模块未找到错误
问题分析与解决
核心原因:版本不匹配
你遇到的ModuleNotFoundError确实是BERTopic版本不一致导致的。bertopic.dimensionality模块是在较新的BERTopic版本中引入的,旧版本无此模块结构,相关类的定义位置不同。
解决步骤
1. 升级到最新稳定版
执行以下命令安装/升级至BERTopic最新版本:
pip install --upgrade bertopic
2. 版本兼容替代方案(若无法升级)
如果受环境限制无法升级,可通过自定义类实现跳过降维的功能:
from bertopic import BERTopic from bertopic.backend import BaseEmbedder # 自定义空降维模型,等效于新版的BaseDimensionalityReduction class EmptyDimensionalityReduction(BaseEmbedder): def fit_transform(self, X): return X topic_model = BERTopic(umap_model=EmptyDimensionalityReduction())
3. 验证版本
升级完成后,检查当前BERTopic版本是否满足要求:
import bertopic print(bertopic.__version__)
官方文档中bertopic.dimensionality模块的内容需要0.14.0及以上版本支持,确保你的版本不低于该数值。
内容的提问来源于stack exchange,提问作者jvqp
相关产品推荐
相关产品推荐

