https://github.com/tonyjurg/morphkit
Python toolkit for interfacing with Morpheus morphological analyser
https://github.com/tonyjurg/morphkit
morpheus morphological-analyser
Last synced: 5 months ago
JSON representation
Python toolkit for interfacing with Morpheus morphological analyser
- Host: GitHub
- URL: https://github.com/tonyjurg/morphkit
- Owner: tonyjurg
- License: other
- Created: 2025-07-15T11:59:08.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2026-01-23T13:20:43.000Z (5 months ago)
- Last Synced: 2026-01-24T05:22:06.752Z (5 months ago)
- Topics: morpheus, morphological-analyser
- Language: Jupyter Notebook
- Homepage: https://tonyjurg.github.io/morphkit/
- Size: 5.91 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Citation: CITATION.cff
Awesome Lists containing this project
README
[](https://www.repostatus.org/#active) [](https://tonyjurg.github.io/morphkit/) [](https://creativecommons.org/licenses/by/4.0/) [](https://doi.org/10.5281/zenodo.15920833) [](https://archive.softwareheritage.org/browse/origin/?origin_url=https://github.com/tonyjurg/morphkit)

Morphkit is a Python toolkit for Greek morphological analysis and tag similarity comparison. It uses the [`betacode`](https://github.com/perseids-tools/beta-code-py) library, the API of Morpheus (e.g., running in a [Docker virtualisation environment](https://hub.docker.com/r/perseidsproject/morpheus-api)) and a porting of the [Sandborg-Petersen morphological decoder](https://github.com/tonyjurg/Sandborg-Petersen-decoder).
## Documentation
For documentation see [tonyjurg.github.io/morphkit](https://tonyjurg.github.io/morphkit/).
## Package
For the actual code see [/morphkit](https://github.com/tonyjurg/morphkit/tree/main/morphkit).
## Loading
Since it is not a 'real' package (i.e., installable with `pip`), you need to load it locally. For example in a Jupyter Notebook:
```Python
import sys
sys.path.insert(0, "..") # the relative path for the morphkit directory to your notebook dir
import morphkit
```
## Configuration
Morphkit supports configurable HTTP timeouts and retry behavior for Morpheus API requests.
**Default timeout:** 30 seconds
**Per-request timeout:**
```Python
response = morphkit.get_word_blocks("tou=", "localhost:1315", timeout=10)
```
**Global configuration:**
```Python
from morphkit.config import config
config.timeout = 45
config.retry_attempts = 3
config.retry_delay = 2.0
```
**Environment variables:**
```bash
export MORPHKIT_TIMEOUT=60
export MORPHKIT_RETRY_ATTEMPTS=2
export MORPHKIT_RETRY_DELAY=1.5
```
## Tools used
The standard set of tools ([Python documentation](https://www.python.org/doc/), tech sites like [stackoverflow](https://stackoverflow.com/), and Python syntax checkers like [Pythonium](https://pythonium.net/linter)) were used to create this package. Furthermore, for the creation of a subset of features, also the [Anaconda Assistant](https://www.anaconda.com/capability/anaconda-assistant) (using [OpenAI](https://openai.com/) as backend) and [GitHub Copilot](https://github.com/features/copilot) in Visual Studio were used to debug and/or optimize parts of the code. Where specified, [OpenAI Codex](https://chatgpt.com/codex) was used to create PRs.
## License
The morphkit package is released under the [Creative Commons Attribution 4.0 International (CC BY 4.0)](https://github.com/tonyjurg/morphkit/blob/main/LICENSE.md).