Semantic Textual Similarity and Dialogue System package for Python


Keywords
Natural, Language, Processing, NLP, Sentence, Similarity, Semantic, Textual, STS, Dialogue, Agents, Chatbot, Framework, asapppy, natural-language-processing, python, semantic-textual-similarity, sentence-similarity
License
MIT
Install
pip install ASAPPpy==0.2b1

Documentation

ASAPPpy

ASAPPpy is a Python package for developing models to compute the Semantic Textual Similarity (STS) between texts in Portuguese. These models follow a supervised learning approach to learn an STS function from annotated sentence pairs, considering a variety of lexical, syntactic, semantic and distributional features.

ASAPPpy can also be used to develop STS based dialogue agents and deploy them to Slack.

Development

If you want to contribute to this project, please follow the Google Python Style Guide.

Installation

Before getting started, verify that pip >= 20.3.3. If not, update it with this command:

pip install --upgrade pip

To install the latest version of ASAPPpy use the following command:

pip install ASAPPpy

After finishing the installation, you might need to download the word embeddings models. Given that they were obtained from various sources, we collected them and they can be downloaded at once by running the Python interpreter in your terminal followed by these commands:

import ASAPPpy
ASAPPpy.download()

Finally, if you have never used spaCy before and you want to use the dependency parsing features, you will need to run the next command in the terminal:

python -m spacy download pt_core_news_sm

Alternatively, you can check the latest version of ASAPPpy using this command:

git clone https://github.com/ZPedroP/ASAPPpy.git

Project History

ASAP(P) is the name of a collection of systems developed by the Natural Language Processing group at CISUC for computing STS based on a regression method and a set of lexical, syntactic, semantic and distributional features extracted from text. It was used to participate in several STS evaluation tasks, for English and Portuguese, but was only recently integrated into two single independent frameworks: ASAPPpy (available here), in Python, and ASAPPj, in Java.

Help and Support

Documentation

Coming soon...

Communication

If you have any questions feel free to open a new issue and we will respond as soon as possible.

Citation

When citing ASAPPpy in academic papers and theses, please use the following BibTeX entry:

@inproceedings{santos_etal:assin2020,
    title = {ASAPPpy: a Python Framework for Portuguese STS},
    author = {José Santos and Ana Alves and Hugo {Gonçalo Oliveira}},
    url = {http://ceur-ws.org/Vol-2583/2_ASAPPpy.pdf},
    year = {2020},
    date = {2020-01-01},
    booktitle = {Proceedings of the ASSIN 2 Shared Task: Evaluating Semantic Textual Similarity and Textual Entailment in Portuguese},
    volume = {2583},
    pages = {14--26},
    publisher = {CEUR-WS.org},
    series = {CEUR Workshop Proceedings},
    keywords = {aia, asap, sts},
    pubstate = {published},
    tppubtype = {inproceedings}
}