Metadata-Version: 2.1 Name: SummerTime Version: 0.1 Summary: A summarization mode Home-page: https://github.com/LILYlab Author: Ansong Ni, Murori Mutuma, Zhangir Azerbayev, Yusen Zhang, Tao Yu, Dragomir Radev Author-email: ansong.ni@yale.edu, murorimutuma@gmail.com, zhangir.azerbayev@yale.edu License: UNKNOWN Description: # SummerTime A library to help users choose appropriate summarization tools based on their specific tasks or needs. Includes models, evaluation metrics, and datasets. ## Installation and setup #### Create and activate a new `conda` environment: ```bash conda create -n st python=3.7 conda activate st ``` #### `pip` dependencies for local demo: ```bash pip install -r requirements.txt ``` ## Quick Start Imports model, initializes default model, and summarizes sample documents. ```python import model as st_model model = st_model.summarizer() documents = [ """ PG&E stated it scheduled the blackouts in response to forecasts for high winds amid dry conditions. The aim is to reduce the risk of wildfires. Nearly 800 thousand customers were scheduled to be affected by the shutoffs which were expected to last through at least midday tomorrow.""" ] model.summarize(documents) # ["California's largest electricity provider has turned off power to hundreds of thousands of customers."] ``` Also, please run `demo.ipynb` demo Jupyter notebook for more examples. To start demo Jupyter notebook on localhost: ```bash jupyter notebook demo.ipynb ``` ## Models Import and initialization: ```python import model as st_model default_model = std_model.summarizer() bart_model = std_model.bart_model.BartModel() pegasus_model = std_model.pegasus_model.PegasusModel() lexrank_model = std_model.lexrank_model.LexRankModel() textrank_model = st_model.textrank_model.TextRankModel() ``` All models can be initialized with the following optional options: ```python def __init__(self, trained_domain: str=None, max_input_length: int=None, max_output_length: int=None, ): ``` All models implement the following methods: ```python def summarize(self, corpus: Union[List[str], List[List[str]]], queries: List[str]=None) -> List[str]: def show_capability(cls) -> None: def generate_basic_description(cls) -> str: ``` ## Evaluation Import and initialization: ```python import eval as st_eval bert_eval = st_eval.bertscore() bleu_eval = st_eval.bleu_eval() rouge_eval = st_eval.rouge() rougewe_eval = st_eval.rougewe() ``` All evaluation metrics can be initialized with the following optional arguments: ```python def __init__(self, metric_name): ``` All evaluation metric objects implement the following methods: ```python def evaluate(self, model, data): def get_dict(self, keys): ``` ## Datasets Import and initialization: ```python import dataset.stdatasets as st_data ``` ## Contributors This repository is built by the [LILY Lab](https://yale-lily.github.io/) at Yale University, led by Prof. [Dragomir Radev](https://cpsc.yale.edu/people/dragomir-radev). The main contributors are [Ansong Ni](https://niansong1996.github.io), Zhangir Azerbayev, Troy Feng, Murori Mutuma and Yusen Zhang (Penn State). For comments and question, please open an issue. Platform: UNKNOWN Classifier: Programming Language :: Python :: 3 Classifier: License :: OSI Approved :: MIT License Classifier: Operating System :: OS Independent Description-Content-Type: text/markdown