TurkNLP, Türkçe dili için sıfırdan geliştirilmiş, modüler yapıya sahip, genişletilebilir ve modern bir doğal dil işleme (NLP) kütüphanesidir. Amaç; hem akademik çalışmalarda hem de endüstriyel projelerde Türkçe NLP alanındaki ihtiyaçlara açık kaynaklı bir çözüm sunmaktır.
- ✨ Tokenizasyon: Türkçeye uygun kelime ve cümle ayırma
- 🧠 Morfolojik Çözümleme: Ek ayrıştırma ve kök bulma
- 🔎 POS Tagging: Kelime türü etiketleme
- 🧾 Ad Öbeği Çıkarımı (NER): Kişi, kurum, yer vs. tanıma
- ⚖️ Duygu Analizi: Türkçeye uygun olumlu/olumsuz duygu sınıflandırma
- 📚 Leksik Analiz: Sözlük tabanlı yapı ve anlamsal analiz
- 🤖 Transformer Entegrasyonu: Huggingface destekli modellerle çalışma
- ⚙️ Modüler Mimari: Her modül bağımsız ve entegre çalışabilir
- 🧪 CLI ve API desteği: Komut satırı ve REST API üzerinden kullanım
Bu proje Poetry ile yapılandırılmıştır. Eğer Poetry yüklü değilse:
pip install poetry
Projeyi kurmak için:
git clone https://github.com/icelaterdc/Turk-NLP.git
cd Turk-NLP
poetry install
from turknlp.tokenization import TurkishTokenizer
from turknlp.morphology import MorphAnalyzer
text = "Ankara'da hava oldukça güzel."
tokens = TurkishTokenizer().tokenize(text)
morphs = MorphAnalyzer().analyze(tokens)
for token, morph in zip(tokens, morphs):
print(token, morph)
from turknlp.transformers import TurkishBERTNER
model = TurkishBERTNER()
result = model.predict("Mustafa Kemal Atatürk Türkiye Cumhuriyeti'nin kurucusudur.")
print(result)
poetry run pytest tests/
- Tokenizer
- Morfolojik analiz
- POS tagging
- NER
- Sentiment
- Transformer destek
- Bağlam bazlı anlambilim (WSD)
- Dil modeli destekli metin üretimi
Projeye katkı sağlamak için forkladıktan sonra PR gönderebilirsiniz:
git clone https://github.com/icelaterdc/Turk-NLP.git
cd Turk-NLP
git checkout -b yeni-ozellik
MIT Lisansı ile lisanslanmıştır.
"TurkNLP, Türkçeye özel geliştirilen açık kaynak NLP araçları için güçlü bir temel sunmayı hedefler."