- Overview
- Features
- Installation
- Usage
- System Architecture
- Evaluation
- Contributing
- License
- Acknowledgements
- Contact
GECTurk WEB is an open-source web-based tool designed to detect and correct common grammatical and spelling errors in Turkish text. The system not only corrects mistakes but also provides explanations for each correction, helping users learn and understand Turkish grammatical rules better. The platform is accessible both online and offline, making it a flexible tool for native speakers and second language learners alike. You can try out GECTurk WEB at www.gecturk.net online or set it up locally using the instructions below.
Figure 1: The screenshot of UI after user entering an input. 1- Girdi (Input): The input area for the user. 2- Yanlışları Bul (Find Errors): A button pressed after entering an input. 3- Çıktı (Output): The output area for the tagged and corrected text. 4- Pop-up: Each corrected word is represented as a button. When clicked, the violated rule, i.e., error type, is shown. 5- Metni Kopyala (Copy Text): A button for copying corrected text. 6- Bu Hala Hatalı (Still Erroneous): A button for giving feedback if the user thinks the output still contains errors. When clicked, a pop-up is shown and the user is expected to write the corrected version. 7- Geri Bildirim Vermek İster Misin? (Give Feedback): A button for collecting general suggestions.
- Grammatical Error Detection and Correction: Identifies and corrects a variety of Turkish grammatical errors including misuse of diacritics, compound words, foreign words, pronouns, and light verbs.
- Spelling Correction: Integrates with TrNlp and ZemberekNLP for correcting spelling errors and proper noun capitalization.
- Interactive Explanations: Provides color-coded explanations for each correction, enhancing the learning experience.
- User Feedback Mechanism: Allows users to provide feedback on corrections to improve the system continuously.
- Usability: Achieved a system usability score of 88.3, indicating excellent usability and user satisfaction.
- Open Source: The source code is available under the CC BY-SA 4.0 license.
To set up GECTurk WEB locally, follow these steps:
-
Clone the Repository
git clone https://github.com/GGLAB-KU/gecturkweb.git cd gecturkweb
-
Download the Model
Download the model file from Hugging Face and place it in the
gecturkweb/seqtagmodel/sequence-tagger
directory. -
Install Dependencies
Ensure you have Python 3.11 and pip 24.1.2 installed. Then, install the required packages:
pip install -r requirements.txt
-
Run the Server
Start the development server:
python manage.py runserver
-
Access the Application
Open your browser and navigate to
http://localhost:8000/
to access GECTurk WEB locally.
- Input Area: Enter the text you want to check for grammatical errors.
- Find Errors: Click this button to process the input text.
- Output Area: View the corrected text with color-coded error explanations.
- Copy Text: Copy the corrected text to your clipboard.
- Feedback: Provide feedback if you think the output still contains errors.
- Enter a sentence in the input area, e.g., "Sonuçları herkes gibi bende merakla bekliyorum."
- Click "Find Errors".
- The output area will show the corrected sentence, "Sonuçları herkes gibi ben de merakla bekliyorum." with "ben de" highlighted and an explanation provided.
GECTurk WEB consists of the following three components:
- Frontend: Built using the Bootstrap framework for a responsive and user-friendly interface.
- Backend: Powered by Django, a high-level Python web framework.
- Grammatical Correction Module: Utilizes the SequenceTagger model for detecting and correcting grammatical errors.
- Spelling Correction Module: Integrates TrNlp and ZemberekNLP for spelling correction.
GECTurk WEB has been evaluated for usability and effectiveness through a comprehensive user study. The tool achieved an average System Usability Scale (SUS) score of 88.3 and a SUPR-Q score of 4.34, indicating high user satisfaction and usability. Additionally, 80% of participants reported that they learned or remembered a grammatical rule after using the tool.
We welcome contributions from the community. Please fork the repository and submit pull requests with your changes.
GECTurk WEB is licensed under the CC BY-SA 4.0 license.
-
GECTurk WEB was developed as part of the senior design project by Ali Gebeşçe, Asu Tutku Gökçek, Gökçe Sevimli, Yakup Enes Güven at the Computer Engineering Department of Koç University, under the supervision of Assistant Professor Gözde Gül Şahin. Subsequent enhancements were made by Ali Gebeşçe and Assistant Professor Gözde Gül Şahin at GGLab.
-
The GECTurk Model utilized by GECTurk WEB was developed by Atakan Kara, Farrin Marouf Safian, Andrew Bond, and Gözde Gül Şahin. For more details, please refer to the paper and GitHub repository of GECTurk.
-
This project is supported by the Scientific and Technological Research Council of Türkiye (TÜBİTAK) as part of the project titled Automatic Learning of Procedural Language from Natural Language Instructions for Intelligent Assistance (Project No. 121C132).
For any questions or support, please contact Ali Gebeşçe.