Türkçe eklemeli bir dil olduğu için Hint-Avrupa dilleri için geliştirilmiş araçlar Türkçe için iyi sonuç vermemektedir.
Türkçe Doğal Dil İşleme konusunda en iyi Java araçlardan olan zemberek'in Sparkjava ile mikroservis REST sunucusu. Sisteminize Java vb bağlılıkları uğraşmadan Python, Ruby, Php, JavaScript vb dillerle kolayca Türkçe Doğal Dil İşleme işlemlerinizi yapabilirsiniz.
Zemberek
Zemberek Örnekler
. Projede mevcut olarak Zemberek'in 0.15.0 sürümü kullanılmaktadır.
Spark
varsayılan olarak 4567 portları üzerinde çalışıyor.
Dockerhub üzerindeki son sürümü kullanmak için;
docker pull cbilgili/zemberek-nlp-server:latest
docker run -p 4567:4567 cbilgili/zemberek-nlp-server:latest
Yerel geliştirme ortamında çalıştırmak için;
git clone https://github.com/cbilgili/zemberek-nlp-server.git
cd zemberek-nlp-server
mvn clean install
docker build -t zemberek-nlp-server .
docker run -p 4567:4567 zemberek-nlp-server
Bunun ardından http://localhost:4567 üzerinden endpointlere erişebilirsiniz.
Projeyi docker ile çalıştırdıktan sonra curl, wget veya kullandığınız dildeki kütüphaneler (faraday vb) ile çağırabilirsiniz. Proje içindeki Postman (v2) ve PAW dosyasını indirip endpointleri test edebilirsiniz.
- Cümle Sınırı Denetleme (Sentence Boundary Detection) :
POST /sentence_boundary_detection
- Cümlenin Öğeleri Etiketleme (Part of Speech Tagging) :
POST /find_pos
- Temel Cümle Öğelerine Ayırma (Simple Tokenization) :
POST /simple_tokenization
- Cümle Öğelerine Ayırma (Token Iterator) :
POST /token_iterator
- Yazım Kontrolü (Spelling Check) :
POST /spelling_check
- Yazım Önerimi (Spelling Suggestions) :
POST /spelling_suggestions
- Kelime Kökleri (Stemming) :
POST /stems
- Kelime Kökleri (Lemmas) :
POST /lemmas
- Kelime Analizi (Analyze Word) :
POST /analyze_word
- Cümle Analizi (Analyze Sentence) :
POST /analyze_sentence
- Kelime Oluşturma (Generate Word) :
POST /generate_word