Gecko App Save

A web application that interfaces two GEC systems. [web instance is down]

Project README

GECko+

logo of gecko

More than a Grammatical Error Corrector

GECko+ is an English language assisting tool that corrects mistakes of various types on written texts. While many well-settled pieces of software of its kind correct mistakes at the grammatical level (orthography and syntax), our novel pipeline allows the tool to perform corrections both at grammatical and at discourse level.

demo

Use cases examples

Original text Corrected text
Whoever is happy wil make other persons happy to. Whoever is happy will make other people happy too.
The weather was so nice! Yesterday I go to beach. Yesterday I went to the beach. The weather was so nice!
The wood are lovely, dark,, and deep. And miles to go before I sleep. But I have promises to keep. The woods are lovely, dark, and deep. But I have promises to keep. And miles to go before I sleep.
Fool me twice, shame on me. Fool me once, shame on you. Fool me once, shame on you. Fool me twice, shame on me.
Secondy, prepare the pan using oil and butter. Then, put onions and carrots together with salt an pepper, inside the pan. Lastly, let them cooked for 15 minutes, and remove off the food fom the pan. First of all, cut some onions and carrots. First of all, cut some onions and carrots. Secondly, prepare the pan using oil and butter. Then, put the onions and carrots together with salt and pepper, inside the pan. Lastly, let them cook for 15 minutes, and remove the food from the pan.

Running locally and developing

Option 1 - Using a virtual environment

  1. Clone the repository.

  2. Create a virtual environment with Python 3.7.

  3. Install the requirements files pip install -r requirements.txt. If it doesn't work, the following can be a workaround: python3.7 -m pip install -r requirements.txt

  4. Download the models by executing:

    • mkdir -p application/models/gector/data/model_files && cd application/models/gector/data/model_files && curl -O https://grammarly-nlp-data-public.s3.amazonaws.com/gector/xlnet_0_gector.th.
    • mkdir -p application/models/sentence_reorder && cd application/models/sentence_reorder/ && curl -O http://tts.speech.cs.cmu.edu/sentence_order/nips_bert.tar && tar -xf nips_bert.tar && rm nips_bert.tar && mv nips_bert/ model/.
  5. Run the web app locally by executing run.py. The default development URL is http://127.0.0.1:5000/.

Option 2 - Using Docker

  1. Build the Docker image: docker build -t gecko-app ..
  2. Run the image: docker run -d -p 3000:80 gecko-app. The URL will be http://0.0.0.0:3000/.

Acknowledgments

Our tool implements the two following models, for tackling, respectively, grammatical and discourse errors:

  • Kostiantyn Omelianchuk, Vitaliy Atrasevych, Artem Chernodub and Oleksandr Skurzhanskyi "GECToR -- Grammatical Error Correction: Tag, Not Rewrite". In Proceedings of the Fifteenth Workshop on Innovative Use of NLP for Building Educational Applications. [arXiv]
  • Prabhumoye, Shrimai, Ruslan Salakhutdinov, and Alan W. Black. "Topological Sort for Sentence Ordering." In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics. [arXiv]

Citation

The paper describing GECko+ is finally out! If you find this tool useful in your research, please consider citing it:

@inproceedings{calo-etal-2021-gecko,
    title = "{GEC}ko+: a Grammatical and Discourse Error Correction Tool",
    author = "Cal{\`o}, Eduardo  and
      Jacqmin, L{\'e}o  and
      Rosemplatt, Thibo  and
      Amblard, Maxime  and
      Couceiro, Miguel  and
      Kulkarni, Ajinkya",
    booktitle = "Actes de la 28e Conf{\'e}rence sur le Traitement Automatique des Langues Naturelles. Volume 3 : D{\'e}monstrations",
    month = "6",
    year = "2021",
    address = "Lille, France",
    publisher = "ATALA",
    url = "https://aclanthology.org/2021.jeptalnrecital-demo.3",
    pages = "8--11",
    abstract = "We introduce GECko+, a web-based writing assistance tool for English that corrects errors both at the sentence and at the discourse level. It is based on two state-of-the-art models for grammar error correction and sentence ordering. GECko+ is available online as a web application that implements a pipeline combining the two models.",
}

Contribute

We accept contributions, whether they intend to fix an issue or to add new functionalities. Don't hesitate to submit a pull request!

https://github.com/psawa/gecko-app/issues

License

The software is distributed under Common Creative 4.0 license.

License: CC BY-NC-SA 4.0

Open Source Agenda is not affiliated with "Gecko App" Project. README Source: psawa/gecko-app

Open Source Agenda Badge

Open Source Agenda Rating