This repository explores the techniques and algorithms used in semi-automatic text completion. This is a research project I carried out in my second year (L2) as part of the Cursus Master Ingénierie (CMI) program, with research conducted together with Samia BENALI. Thanks to these research efforts, I personally developed an application to implement the theoretical concepts.
When typing a message on a smartphone, suggestions for words are often provided to accelerate the process. These suggestions rely on efficient and relevant algorithms. This project aims to study and implement some of these techniques, focusing on:
- Various approaches to text auto-completion.
- Edit distance algorithms.
- Markov chains for adapting to user history.
The project is divided into the following tasks:
- Study: Review different approaches used in text auto-completion.
- Edit Distance Algorithms: Understand and implement simple edit distance calculations.
- Markov Chains: Study the basic principles and their use in adapting suggestions based on user history.
- Implementation: Develop text auto-completion tool using the studied techniques.
- docs/: Documentation and references.
- completion-system/: Main project directory containing the Rust and Python code.
This project uses Rust for the backend and Python for the frontend, with everything handled automatically by make install.
Execute:
git clone https://github.com/Elouan1411/completion-auto.github
cd completion-auto/completion-system
make installExecute:
completion-systemOr launch it from the application menu after installation.
Execute:
cd completion-auto/completion-system
make uninstall- Elouan BOITEUX
- Samia BENALI
