|
31 | 31 | Kurdish Language Processing Toolkit--KLPT is a [natural language processing](https://en.wikipedia.org/wiki/Natural_language_processing) (NLP) toolkit in Python for the [Kurdish language](https://en.wikipedia.org/wiki/Kurdish_languages). The current version comes with four core modules, namely `preprocess`, `stem`, `transliterate` and `tokenize` and addresses basic language processing tasks such as text preprocessing, stemming, tokenization, spell-checking and morphological analysis for the [Sorani](https://en.wikipedia.org/wiki/Sorani) and the [Kurmanji](https://en.wikipedia.org/wiki/Kurmanji) dialects of Kurdish. |
32 | 32 |
|
33 | 33 | --- |
34 | | -#### Latest update on April 29th, 2022 🎉 |
| 34 | +#### Updates |
35 | 35 |
|
36 | | -In the latest version, I focused on Kurmanji for which a morphological analyzer, a stemmer and a lemmatizer are now added to the toolkit. These tasks were partially addressed previously using the [Apertium project](https://github.com/apertium/apertium-kmr). Now, that is fully replaced by the Kurmanji implementation of [Kurdish Hunspell](https://github.com/sinaahmadi/KurdishHunspell). |
| 36 | +- August 2025: [KurdishHunspell](https://github.com/sinaahmadi/KurdishHunspell/tree/main) is updated with additional tagged words (10k in Sorani and 21k in Kurmanji). |
| 37 | +- April 2022: In the latest version, I focused on Kurmanji for which a morphological analyzer, a stemmer and a lemmatizer are now added to the toolkit. These tasks were partially addressed previously using the [Apertium project](https://github.com/apertium/apertium-kmr). Now, that is fully replaced by the Kurmanji implementation of [Kurdish Hunspell](https://github.com/sinaahmadi/KurdishHunspell). |
37 | 38 |
|
38 | 39 | --- |
39 | 40 |
|
40 | 41 | ## Install KLPT |
41 | 42 |
|
42 | 43 | <!--For detailed installation instructions, see the [documentation]().--> |
43 | 44 |
|
44 | | -- **Operating system**: macOS / OS X · Linux · Windows (Cygwin, MinGW, Visual |
45 | | - Studio) |
46 | | -- **Python version**: Python 3.5+ |
47 | | -- **Package managers**: [pip](https://pypi.org/project/klpt/) |
48 | | - |
49 | | -[pip]: https://pypi.org/project/spacy/ |
50 | | -[conda]: https://anaconda.org/conda-forge/spacy |
| 45 | +- **Operating system**: macOS / OS X · Linux · Windows (Cygwin, MinGW, Visual Studio) |
| 46 | +- **Python version**: Python 3.5+ |
| 47 | +- **Package managers**: pip |
51 | 48 |
|
52 | 49 | ### pip |
53 | 50 |
|
54 | | -Using pip, KLPT releases are available as source packages and binary wheels. Please make sure that a compatible Python version is installed: |
| 51 | +It's recommended to use a virtual environment to avoid dependency conflicts and to install the latest development version directly from the GitHub repository: |
55 | 52 |
|
56 | 53 | ```bash |
57 | | -pip install klpt |
| 54 | +# Create and activate a virtual environment |
| 55 | +python -m venv klpt-env |
| 56 | +source klpt-env/bin/activate # On Windows: klpt-env\Scripts\activate |
| 57 | + |
| 58 | +# Install from Git |
| 59 | +pip install git+https://github.com/sinaahmadi/klpt.git |
58 | 60 | ``` |
59 | 61 |
|
60 | | -All the data files including lexicons and morphological rules are also installed with the package. |
| 62 | +This will install the most recent version from the main branch, which may include features not yet available in the PyPI release. |
| 63 | + |
| 64 | +<!-- Using pip, KLPT releases are available as source packages and binary wheels. Please make sure that a compatible Python version is installed: |
| 65 | +
|
| 66 | +```bash |
| 67 | +pip install klpt |
| 68 | +``` --> |
| 69 | + |
| 70 | +All the data files including lexicons and morphological rules are also installed with the package. |
61 | 71 |
|
62 | | -Although KLPT is not dependent on any NLP toolkit, there is one important requirement, particularly for the `stem` module. That is [`cyhunspell`](https://pypi.org/project/cyhunspell/) which should be installed with a version >= 2.0.1. |
| 72 | +Although KLPT is not dependent on any NLP toolkit, there is one important requirement, particularly for the `stem` module. That is [`chunspell`](https://github.com/cdhigh/chunspell) which should be installed with a version >= 2.0.1. Please note that Hunspell has some known issues with certain architectures. This is not caused by KLPT. Please refer to [Hunspell](https://github.com/pyhunspell/pyhunspell) for solutions (including this [issue](https://github.com/pyhunspell/pyhunspell/issues/80)). |
63 | 73 |
|
64 | 74 | ### About this version |
65 | 75 |
|
@@ -326,7 +336,7 @@ Don't forget, **open-source is fun!** 😊 |
326 | 336 |
|
327 | 337 | ## Requirements |
328 | 338 | - Python >=3.6 |
329 | | -- [`cyhunspell`](https://pypi.org/project/cyhunspell/) >= 2.0.1 |
| 339 | +- [`chunspell`](https://github.com/cdhigh/chunspell) |
330 | 340 |
|
331 | 341 | ## Cite this project |
332 | 342 | Please consider citing [this paper](https://sinaahmadi.github.io/docs/articles/ahmadi2020klpt.pdf), if you use any part of the data or the tool ([`bib` file](https://sinaahmadi.github.io/bibliography/ahmadi2020klpt.txt)): |
|
0 commit comments