Skip to content

icelaterdc/Turk-NLP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TurkNLP – Geniş Kapsamlı Türkçe Doğal Dil İşleme (NLP) Kütüphanesi

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.

Özellikler

  • 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

Kurulum

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

Temel Kullanım

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)

Transformer Destekli Modeller

from turknlp.transformers import TurkishBERTNER
model = TurkishBERTNER()
result = model.predict("Mustafa Kemal Atatürk Türkiye Cumhuriyeti'nin kurucusudur.")
print(result)

Testler

poetry run pytest tests/

Yol Haritası

  • Tokenizer
  • Morfolojik analiz
  • POS tagging
  • NER
  • Sentiment
  • Transformer destek
  • Bağlam bazlı anlambilim (WSD)
  • Dil modeli destekli metin üretimi

Katkı

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

Lisans

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."