New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

qaznltk

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

qaznltk

A package for working with Kazakh language text processing.

  • 1.2.4.1
  • PyPI
  • Socket score

Maintainers
1


QazNLTK: a package for working with Kazakh language text processing.

PyPI Latest Release PyPI Downloads

What is it?

QazNLTK provides developers with a fast and convenient tool for processing text in the Kazakh language. Tailored for the unique linguistic characteristics of Kazakh, this library offers a comprehensive set of tools for natural language processing, like: tokenization, sentence segmentation, evaluation similarity score and tranliteration of kazakh language cyrillic-latin.

Table of Contents

Main Features

Here are just a few of the things that qaznltk does well:

  1. Kazakh language Text Tokenizing by keyword frequencies:
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()

text = input("Enter text: ")
tokens = qn.tokenize(text)
print(tokens)

# Input: Біздің өміріміз үлкен өзен іспетті. Сіздің қайығыңыздың қиындықтардан жеңіл өтіп, махаббат иірімінде басқаруын жоғалтпай, бақыт сарқырамасына жетуін тілеймін!
# Output: [('өміріміз', 1), ('үлкен', 1), ('өзен', 1), ('іспетті', 1), ('сіздің', 1), ('қайығыңыздың', 1), ('қиындықтардан', 1), ('жеңіл', 1), ('өтіп', 1), ('махаббат', 1), ('иірімінде', 1), ('басқаруын', 1), ('жоғалтпай', 1), ('бақыт', 1), ('сарқырамасына', 1), ('жетуін', 1), ('тілеймін', 1)]
  1. Kazakh language Text Segmentation into sentences:
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()

text = input("Enter text: ")
sent_tokens = qn.sent_tokenize(text)
print(sent_tokens)

# Input: Біздің өміріміз үлкен өзен іспетті. Сіздің қайығыңыздың қиындықтардан жеңіл өтіп, махаббат иірімінде басқаруын жоғалтпай, бақыт сарқырамасына жетуін тілеймін!
# Output: ['Біздің өміріміз үлкен өзен іспетті.', 'Сіздің қайығыңыздың қиындықтардан жеңіл өтіп, махаббат иірімінде басқаруын жоғалтпай, бақыт сарқырамасына жетуін тілеймін!']
  1. Evaluate Difference score between 2 text:
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()

textA = input("Enter text A: ")
textB = input("Enter text B: ")
similarity_score = qn.calc_similarity(textA, textB)
print(similarity_score)

# Input: textA = "Еңбегіне қарай — құрмет, Жасына қарай — ізет.", textB = "Еңбегіне қарай табысы, Ерлігіне қарай дабысы."
# Output: 0.368421052631579
  1. Convert Kazakh language Text from Cyrillic to Latin using ISO-9 Standard:
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()

text = input("Enter text: ")
latin_text = qn.convert2latin_iso9(text)
print(latin_text)

# Input: Бүгін қандай керемет күн! 
# Output: Bùgìn k̦andaj keremet kùn!
  1. Convert Kazakh language Text from Latin to Cyrillic using ISO-9 Standard:
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()

text = input("Enter text: ")
cyrillic_text = qn.convert2cyrillic_iso9(text)
print(cyrillic_text)

# Input: Bùgìn k̦andaj keremet kùn!
# Output: Бүгін қандай керемет күн!
  1. Sentiment Analysis of Kazakh language text [negative: -1, neutral: 0, positive: 1]:
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()

text = input("Enter text: ")
sentimize_score = qn.sentimize(text)
print(sentimize_score)

# Input: Бұл мақала өте нашар жазылған.
# Output: -1.0 (negative)
  1. Converting any number N into kazakh language number words [N <= 10^31]:
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()

n = int(input())
print(qn.num2word(n))

# Input: N = 1465
# Output: бір мың төрт жүз алпыс бес
  1. Extracting information from IIN (Individual Identification Number) [IIN: 12 digits]:
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()

iin = input("Enter IIN: ")
print(qn.get_info_from_iin(iin))

# Input: 990408482390
# Output: {'status': 'success', 'date_of_birth': '08.04.1999', 'century_of_birth': '20', 'gender': 'female', 'sequence_number': 8239, 'control_discharge': 0}
  1. KNN Search on TF-IDF matrix embeddings of Kazakh language text:
from qaznltk import vectorizer

qn_vectorizer = vectorizer.QazNLTKVectorizer()
tf_idf_matrix = qn_vectorizer.fit_transform(documents)

knn = vectorizer.KNN(tf_idf_matrix)

query = "Еліміздің алтын күні жарық күн."

query_vector = qn_vectorizer.transform([query])[0]

results = knn.search(query_vector, k=3)

for idx, distance in results:
    print(f"Document: {documents[idx]}, Distance: {distance}")

# Input:
# documents = [
#     "Ер — елінде, гүл — жерінде.",
#     "Өз елінде көртышқан да батыр.",
#     "Өз елінің иті де қадірлі.",
#     "Отан үшін күрес — ерге тиген үлес.",
#     "Орағың өткір болса, қарың талмайды, Отаның берік болса, жауың алмайды.",
#     "Елінен безген ер болмас, Көлінен безген қаз болмас.",
#     "Сағынған елін аңсайды, Сары ала қаз көлін аңсайды.",
#     "Жат жердің қаршығасынан, Өз еліңнің қарғасы артық.",
#     "Егілмеген жер жетім, Елінен айырылған ер жетім.",
#     "Ерінен айырылған көмгенше жылайды, Елінен айырылған өлгенше жылайды.",
#     "Отан — отбасынан басталады.",
#     "Опасызда oтан жоқ.",
#     "Отан оттан да ыстық.",
#     "Отансыз адам — ормансыз бұлбұл."
# ]

# Output:
# Document: Орағың өткір болса, қарың талмайды, Отаның берік болса, жауың алмайды., Distance: 0.6740830490255459
# Document: Жат жердің қаршығасынан, Өз еліңнің қарғасы артық., Distance: 0.7040525969511919
# Document: Өз елінде көртышқан да батыр., Distance: 0.7453452762306501

Where to get it

The source code is currently hosted on GitHub at: https://github.com/silvermete0r/QazNLTK.git

Binary installers for the latest released version are available at the Python Package Index (PyPI).

pip install qaznltk

image

Dependencies

  • Package was developed on built-in python functions (pure python);

License

License: MIT

Getting Help

📧 supwithproject@gmail.com

Contributing to qaznltk

All contributions, bug reports, bug fixes, documentation improvements, enhancements, and ideas are welcome.


Go to Top

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc