shineware / KOMORAN

Korean Morphological Analyzer by shineware
Apache License 2.0
286 stars 63 forks source link

Simple REST API 모듈 추가 #117

Open 9bow opened 4 years ago

9bow commented 4 years ago

기능 설명

어떤 상황에서, 무엇을 추가하거나 / 변경하길 원하시나요? Simple API Server와 같이, KOMORAN을 이용하여 바로 API 서버를 호출할 수 있는 모듈을 추가합니다.

추가 정보

참고할 수 있는 다른 정보가 있다면 남겨주세요. 개인 환경에서 KOMORAN을 바로 사용해 볼 수 있도록 하는 것이 이 모듈의 목적입니다. 따라서, 자동 배포를 할 수 있도록 하는 것이 필요합니다.

9bow commented 4 years ago

모듈 추가 후, 목적에 맞도록 Deploy on Heroku 등을 추가할 수 있도록 합니다. (모듈 개발 후 별도 이슈를 생성합니다.)

9bow commented 4 years ago

Simple API Server에서 사용한 SparkJava지난 5월 22일 이후로 추가 릴리즈가 없으며, 개발 또한 멈춰있습니다. 이에 SparkJava를 대체할만한 경량 웹 프레임워크인 Javlin과 같은 프레임워크는 찾았으나, 이미 admin에서 SpringBoot를 불러오고 있어서 그냥 SpringBoot 기반으로 개발하려고 합니다.

@shin285 @dolpang2 혹시 추가 의견 있으시면 부탁드립니다.

9bow commented 4 years ago

API Server는 최소한 아래와 같은 기능들을 가져야 합니다.

입력 출력 설명
문장 분석 결과 1개 입력 문장에 대해서 형태소 분석 결과 제공
문장 분석 결과 N-Best 1개 입력 문장에 대해서 형태소 분석 N-Best 결과 제공
문장들 분석 결과들 N개의 입력 문장들에 대해서 형태소 분석 결과 제공

~또한, 기본 모델(STABLE) 외에 admin 등에서 생성한 모델을 불러올 수 있는 방법도 고려해야 합니다.~ API Server가 사용하는 모델은 1개로 제한합니다. (gradle 또는 jar로) API Server를 실행하는 시점에서 모델 경로를 인자로 받고, 인자 또는 해당 경로에 파일이 없으면 기본 모델(STABLE)을 사용하는 식으로 동작합니다.