sumy
Add Arabic language support
用于从 HTML 页面或纯文本中提取摘要的简单库和命令行实用程序。该软件包还包含用于文本摘要的简单评估框架。文档中描述了已实现的汇总方法。我还维护了各种编程语言中摘要器的替代实现的列表。
很有可能是这样。但如果没有,添加它也不是太难。
确保您已安装 Python 3.6+ 和 pip(Windows、Linux)。简单地运行(首选方式):
$ [sudo] pip install sumy
$ [sudo] pip install git+git://github.com/miso-belica/sumy.git # for the fresh version
感谢那里的一些好人,尝试 sumy 的最简单方法是在浏览器中访问 https://huggingface.co/spaces/issam9/sumy_space
Sumy 包含用于快速总结文档的命令行实用程序。
$ sumy lex-rank --length=10 --url=https://en.wikipedia.org/wiki/Automatic_summarization # what's summarization?
$ sumy lex-rank --language=uk --length=30 --url=https://uk.wikipedia.org/wiki/Україна
$ sumy luhn --language=czech --url=https://www.zdrojak.cz/clanky/automaticke-zabezpeceni/
$ sumy edmundson --language=czech --length=3% --url=https://cs.wikipedia.org/wiki/Bitva_u_Lipan
$ sumy --help # for more info
某些汇总方法的各种评估方法可以通过以下命令执行:
$ sumy_eval lex-rank reference_summary.txt --url=https://en.wikipedia.org/wiki/Automatic_summarization
$ sumy_eval lsa reference_summary.txt --language=czech --url=https://www.zdrojak.cz/clanky/automaticke-zabezpeceni/
$ sumy_eval edmundson reference_summary.txt --language=czech --url=https://cs.wikipedia.org/wiki/Bitva_u_Lipan
$ sumy_eval --help # for more info
如果您不想安装,可以尝试将其作为容器。
$ docker run --rm misobelica/sumy lex-rank --length=10 --url=https://en.wikipedia.org/wiki/Automatic_summarization
或者您可以在项目中像库一样使用 sumy。使用下面的代码创建文件sumy_example.py
(不要将其命名为sumy.py
)来测试它。
# -*- coding: utf-8 -*-
from __future__ import absolute_import
from __future__ import division , print_function , unicode_literals
from sumy . parsers . html import HtmlParser
from sumy . parsers . plaintext import PlaintextParser
from sumy . nlp . tokenizers import Tokenizer
from sumy . summarizers . lsa import LsaSummarizer as Summarizer
from sumy . nlp . stemmers import Stemmer
from sumy . utils import get_stop_words
LANGUAGE = "english"
SENTENCES_COUNT = 10
if __name__ == "__main__" :
url = "https://en.wikipedia.org/wiki/Automatic_summarization"
parser = HtmlParser . from_url ( url , Tokenizer ( LANGUAGE ))
# or for plain text files
# parser = PlaintextParser.from_file("document.txt", Tokenizer(LANGUAGE))
# parser = PlaintextParser.from_string("Check this out.", Tokenizer(LANGUAGE))
stemmer = Stemmer ( LANGUAGE )
summarizer = Summarizer ( stemmer )
summarizer . stop_words = get_stop_words ( LANGUAGE )
for sentence in summarizer ( parser . document , SENTENCES_COUNT ):
print ( sentence )
我在浏览互联网时发现了一些有趣的项目,或者有时人们给我写了一封带有问题的电子邮件,我很好奇他们如何使用 sumy :)