Security News
PyPI’s New Archival Feature Closes a Major Security Gap
PyPI now allows maintainers to archive projects, improving security and helping users make informed decisions about their dependencies.
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.
Here are just a few of the things that qaznltk does well:
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)]
from qaznltk import qaznltk as qnltk
qn = qnltk.QazNLTK()
text = input("Enter text: ")
sent_tokens = qn.sent_tokenize(text)
print(sent_tokens)
# Input: Біздің өміріміз үлкен өзен іспетті. Сіздің қайығыңыздың қиындықтардан жеңіл өтіп, махаббат иірімінде басқаруын жоғалтпай, бақыт сарқырамасына жетуін тілеймін!
# Output: ['Біздің өміріміз үлкен өзен іспетті.', 'Сіздің қайығыңыздың қиындықтардан жеңіл өтіп, махаббат иірімінде басқаруын жоғалтпай, бақыт сарқырамасына жетуін тілеймін!']
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
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!
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: Бүгін қандай керемет күн!
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)
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: бір мың төрт жүз алпыс бес
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}
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
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
All contributions, bug reports, bug fixes, documentation improvements, enhancements, and ideas are welcome.
FAQs
A package for working with Kazakh language text processing.
We found that qaznltk demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
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.
Security News
PyPI now allows maintainers to archive projects, improving security and helping users make informed decisions about their dependencies.
Research
Security News
Malicious npm package postcss-optimizer delivers BeaverTail malware, targeting developer systems; similarities to past campaigns suggest a North Korean connection.
Security News
CISA's KEV data is now on GitHub, offering easier access, API integration, commit history tracking, and automated updates for security teams and researchers.