导入错误:无法从“gensim.utils”导入名称“已弃用”

问题描述

在导入以下行时,Jupyter 编译器导致错误

ImportError: cannot import name 'deprecated' from 'gensim.utils
from gensim.summarization.summarizer import summarize
from gensim.summarization import keywords**

错误如下:

~\AppData\Local\Programs\Python\python39\Lib\site-packages\gensim\summarization\summarizer.py in <module>
     54 
     55 import logging
---> 56 from gensim.utils import deprecated
     57 from gensim.summarization.pagerank_weighted import pagerank_weighted as _pagerank
     58 from gensim.summarization.textcleaner import clean_text_by_sentences as _clean_text_by_sentences

ImportError: cannot import name 'deprecated' from 'gensim.utils' (C:\Users\PavanKumar\AppData\Local\Programs\Python\python39\Lib\site-packages\gensim\utils.py)

解决方法

summarization 代码已从 Gensim 4.0 中删除。见:

https://github.com/RaRe-Technologies/gensim/wiki/Migrating-from-Gensim-3.x-to-4#12-removed-gensimsummarization

12。移除了 gensim.summarization

尽管它的名字听起来很一般,但该模块并不满足 生产中的大多数用例,并且可能会浪费人们的 时间。参见this Github ticket 这背后的更多动机。

如果你需要它,你可以试试:

  • 安装旧的 gensim 版本;或者……
  • 将源代码复制到您自己的本地模块

但是,我希望您可能会对它的不灵活以及它的功能有限感到失望。它是提取性摘要——从那些已经存在的句子中选择几个关键句子——只有当源文本已经以说明性的风格将高级摘要与细节混合在一起时,才会给出令人印象深刻的结果。而且它的词分析/排序方法非常粗糙且难以定制。