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 :)