konlpy
Python package for Korean natural language processing.
What it is and what it does
KoNLPy is a Python wrapper around multiple Korean natural language processing engines, unifying several research-built tools into a single interface. It handles Korean-specific tasks like tokenization, part-of-speech tagging, and morphological analysis—operations that require understanding Korean's complex grammar and character system. The package depends on JPype1 to call Java-based engines, lxml for XML processing, and numpy for numerical operations.
The project is abandoned: the last release was in January 2022, and there is no active maintenance. Users should expect no bug fixes, security updates, or compatibility work for newer Python or dependency versions. It remains useful for legacy systems or research projects already committed to its ecosystem, but new projects should evaluate actively maintained alternatives.
Use it for:
- Tokenize and analyze Korean text in legacy data-processing pipelines already built around konlpy.
- Perform part-of-speech tagging on Korean documents for linguistic research or historical NLP projects.
- Extract morphological features from Korean text in educational contexts studying computational linguistics.
- Preprocess Korean text for machine learning models in projects that cannot migrate to newer libraries.
- Analyze Korean social media or news text in systems where konlpy's specific engines are already integrated.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
KoNLPy provides Korean natural language processing tools including tokenization, part-of-speech tagging, and linguistic feature extraction by wrapping multiple Korean NLP engines.
No, unless you are maintaining legacy code already using konlpy. The package is abandoned (last release 2022-01-02) with no active maintenance, making it unsuitable for new projects. GPL v3 copyleft licensing also restricts use in proprietary software. For new Korean NLP work, seek actively maintained alternatives.
Install
konlpy on PyPI
pip
pip install konlpyuv
uv add konlpypoetry
poetry add konlpyInstalling konlpy
Before you install
Installation is straightforward with low friction, but the package is abandoned—last release was 2022-01-02, over 1685 days ago. No active maintenance or updates are expected.
License in practice
Licensed under GPL v3 (copyleft). Any derivative work or distribution must also be open-source under GPL v3 terms; proprietary projects cannot use this package without releasing their own code.
Quickstart
pip install konlpy
from konlpy.tag import Kkma
kkma = Kkma()
kkma.sentences('한글 문장입니다.')
Requires JPype1 to bridge Python and Java-based Korean NLP engines; Java installation may be needed depending on the underlying engine used.
Verify before relying
- Whether the package's underlying Korean NLP engines remain functional and compatible with current Python and Java versions.
- Current compatibility with Python versions beyond 2.7 and 3.6 (requires_python is unspecified).
- Whether numpy, lxml, and JPype1 dependencies have known incompatibilities with modern environments.
Package facts
| License | GPL v3 (copyleft) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — JPype1, lxml, numpy |
| Maintenance | abandoned — 1,685 days since the last release |
| First released | |
| Downloads | 134,754/month — #11,462 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: konlpy-0.6.0-py2.py3-none-any.whl
Keywords: Korean, CJK, NLP, natural language processing, CL, computational linguistics, tagging, tokenizing, linguistics, text analytics
Tags
More Scientific/Engineering packages
NumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
pandaspandas provides fast, flexible data structures…
permissive · top 100 on PyPI
scipyscipy provides numerical algorithms for…
permissive · top 100 on PyPI
scikit-learnscikit-learn provides a comprehensive Python…
permissive · top 1,000 on PyPI
dilldill extends Python's pickle module to…
permissive · top 1,000 on PyPI
multiprocessMultiprocess is an enhanced fork of Python's…
permissive · top 1,000 on PyPI
nltkNLTK is a Python library for natural language…
permissive · top 1,000 on PyPI
polyglotPolyglot is a multilingual natural language…
copyleft · top 15,000 on PyPI
mecab-koPython wrapper for MeCab-ko, a morphological…
permissive · top 15,000 on PyPI
python-mecab-koProvides Python bindings for MeCab-ko, a…
permissive · top 15,000 on PyPI
pyniniPynini compiles grammar rules into weighted…
permissive · top 15,000 on PyPI
mecab-ko-dicProvides a Korean dictionary for MeCab…
unclear · top 15,000 on PyPI
pythainlpPyThaiNLP provides Thai-language natural…
permissive · top 5,000 on PyPI
kiwipiepy-modelProvides pre-trained morphological analysis…
copyleft · top 15,000 on PyPI
soynlpUnsupervised Korean natural language processing…
copyleft · top 15,000 on PyPI
kiwipiepyKiwipiepy tokenizes and analyzes Korean text…
copyleft · top 15,000 on PyPI