Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/minhoryang/konlpy-grpc
Redesigned KoNLPy (Wrapper) for Usability and Portability with gRPC. [EXPERIMENTAL]
https://github.com/minhoryang/konlpy-grpc
grpc grpc-python konlpy korean korean-nlp nlp python3
Last synced: about 1 month ago
JSON representation
Redesigned KoNLPy (Wrapper) for Usability and Portability with gRPC. [EXPERIMENTAL]
- Host: GitHub
- URL: https://github.com/minhoryang/konlpy-grpc
- Owner: minhoryang
- License: gpl-3.0
- Created: 2019-10-20T13:47:28.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-03-07T03:14:23.000Z (almost 2 years ago)
- Last Synced: 2024-11-23T13:08:33.946Z (about 1 month ago)
- Topics: grpc, grpc-python, konlpy, korean, korean-nlp, nlp, python3
- Language: Python
- Homepage:
- Size: 342 KB
- Stars: 13
- Watchers: 3
- Forks: 5
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# KoNLPy-gRPC
Redesigned KoNLPy (Wrapper) for Usability and Portability with gRPC.## Try Now!
[![Run on Ainize](https://ainize.ai/static/images/run_on_ainize_button.svg)](https://ainize.web.app/redirect?git_repo=github.com/minhoryang/KoNLPy-gRPC)## Requirements:
```bash
pip install poetry
pip install -r $(python manage.py requirements.txt) -r $(python manage.py requirements-dev.txt)
```## gRPC Compile needed!
```bash
python -m grpc_tools.protoc -I protos/ --python_out=konlpy_grpc/_generated/ --grpc_python_out=konlpy_grpc/_generated/ protos/*.proto
```## Server
```bash
python -m pip install konlpy
``````bash
python -m konlpy_grpc server
python -m konlpy_grpc hannanum_server
python -m konlpy_grpc kkma_server
python -m konlpy_grpc komoran_server
python -m konlpy_grpc mecab_server
python -m konlpy_grpc okt_server
```## Tests
```bash
python -m pytest
python -m pytest --grpc-fake-server
python -m pytest --grpc-real-server=[::]:50051
python -m pytest --konlpy-repo=../konlpy
```## Release
```bash
rm -rf dist/
poetry publish --build -r test
poetry run twine upload --repository-url https://test.pypi.org/legacy/ dist/*
```## TODO
- [x] [P0] client.py will be a konlpy-alike module.
- [x] [P0] KoNLPy monkey-patcher
- [x] [P1] Packaging with Poetry `pyproject.toml`.
- [x] PyPI Register
- [ ] Find lowerbound-version of requirements.
- [P1] gRPC Proto Compile
- [P1] In-house tool: `manage.py`- [P1] KoNLPy Version Matching (set minimum) and Follow-up
- [P1] gRPC retry/timeout/error_handling logic
- [x] [P1] gRPC reflection
- [P1] gRPC heartbeat
- [x] [P1] gRPC Gateway (gRPC to JSON)
- [x] [P2] Dockerize / Register
- k8s and istio?
- [P2] CI
- [x] [P3] Button for deploying this to AWS/GCS/Azure now! (and connect by README.)
- [x] [aizine](https://ainize.ai/deployment/minhoryang/konlpy-grpc)
- [ ] AWS/GCS/Azure
- [P3] CustomDic?
- [P3] Stream I/O
- [P3] Redesign tests/ with grpc-testing
- [P4] Java Edition for KoNLPy-gRPC-Server
- gRPC protos deploy/versioning## Additional Links
- [KoNLPy/KoNLPy](https://github.com/konlpy/konlpy)
- [Pruned KoNLPy v0.5.2-rc.1](https://github.com/minhoryang/konlpy)
- Currently, servers rely on KoNLPy v0.5.2 version.## License
GNU GPLv3