Skip to content

yagizdemirsoy/zemberek-nlp

 
 

Repository files navigation

Zemberek-NLP

Zemberek-NLP provides Natural Language Processing tools for Turkish. Please note that all APIs are subject to change until version 1.0.0

Latest version is 0.17.0 (April 17 2019). Change Log

Please read the FAQ for common questions.

Modules

Module Maven Id
Core zemberek-core Special Collections, Hash functions and helpers.
Morphology zemberek-morphology Turkish morphological analysis, disambiguation and word generation.
Tokenization zemberek-tokenization Turkish Tokenization and sentence boundary detection.
Normalization zemberek-normalization Basic spell checker, word suggestion. Noisy text normalization.
NER zemberek-ner Turkish Named Entity Recognition.
Classification zemberek-classification Text classification based on Java port of fastText project.
Language Identification zemberek-lang-id Fast identification of text language.
Language Modeling zemberek-lm Provides a language model compression algorithm.
Applications zemberek-apps Console applications
gRPC Server zemberek-grpc gRPC server for access from other languages.
Examples zemberek-examples Usage examples.

Usage

Maven

Add this to pom.xml file

<repositories>
    <repository>
        <id>zemberek-repo</id>
        <name>zemberek Maven Repo on Github</name>
        <url>https://raw.github.com/ahmetaa/maven-repo/master</url>
    </repository>
</repositories>

And dependencies (For example morphology):

<dependencies>
    <dependency>
        <groupId>zemberek-nlp</groupId>
        <artifactId>zemberek-morphology</artifactId>
        <version>0.17.0</version>
    </dependency>
</dependencies>

Jar distributions

Google drive page contains jar files for different versions.

[zemberek-full.jar] is a single jar that contains all modules and dependencies. When it is run directly with

  java -jar zemberek-full.jar

It will list available console applications.

For Develpoers

Here information about how to compile the code and generate jar file from the project is explained.

Examples

There is an examples module in the code for usage examples.

Also, there is a separate project with same examples that uses Zemberek-NLP as maven modules: Turkish-nlp-examples

Known Issues and Limitations

  • Project requires Java 8 or higher.
  • NER module does not provide a model yet.
  • Library is not well-tested for multi-threaded usage.

Please see issues section for further issues and feel free to create new ones.

License

Code is licensed under Apache License, Version 2.0

Citing

If you use this project in an academic publication, please refer to this site.

Acknowledgements

Please refer to contributors.txt file.

About

NLP tools for Turkish.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.6%
  • Other 0.4%