Skip to main content

Yakit - Yakut Language Text Normalizer

A Python library for normalizing Yakut (Sakha) language text using Word2Vec embeddings.

Installation

pip install yakit

For automatic model downloading from Hugging Face Hub:

pip install yakit[download]

Quick Start

from yakit.normalizers import Word2VecNormalizer

# Initialize normalizer (auto-downloads model on first use)
normalizer = Word2VecNormalizer()

# Normalize text
text = "Мин сахалыы билэбин"
normalized = normalizer.normalize(text)
print(normalized)

Custom Model Path

If you have your own Word2Vec model:

from yakit.normalizers import Word2VecNormalizer

normalizer = Word2VecNormalizer(
    word2vec_path="/path/to/your/model.bin",
    training_data_path="/path/to/train_pairs.txt"  # optional
)

Command Line Interface

# Normalize text directly
yakit normalize "Мин сахалыы билэбин"

# Normalize a file
yakit normalize -i input.txt -o output.txt

# Download models manually
yakit download

# Show cache info
yakit info

What is Normalization?

Normalization converts text WITHOUT special Yakut characters to text WITH proper Yakut characters:

Input Output
h → һ
г → ҕ (in certain positions)
н → ҥ (in certain positions)
о → ө (in certain positions)
у → ү (in certain positions)

Performance

With optimized hyperparameters:

  • Character Accuracy: 97.15%
  • Word Accuracy: 92.09%
  • Exact Match: 61.77%

Requirements

  • Python 3.10–3.13 (3.14 not yet supported: gensim has no compatible build)
  • gensim
  • numpy
  • tqdm

License

MIT

Release files for yakit 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for yakit 0.1.1
File Size Uploaded
yakit-0.1.1.tar.gz 15.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for yakit 0.1.1
File Interpreter ABI Platform
yakit-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 29.0 kB

Release files / yakit-0.1.1.tar.gz

Download URL yakit-0.1.1.tar.gz
Size 15.1 kB
Tags Source
SHA-256 checksum
How to use checksums
899ef08b17433b3b75a5fa92ce0e9c9c25490fdddd3295a173eb6423a6bd69d5
BLAKE2b-256 checksum
How to use checksums
382bcb3b5486ef0814a36acb5b01544d998e2f89811a534ad8d284d6ae06c582
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release files / yakit-0.1.1-py3-none-any.whl

Download URL yakit-0.1.1-py3-none-any.whl
Size 13.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f3244e8d7dd001914416731ad0fe9aecc0190ebea9854205697934e3eb60ea9a
BLAKE2b-256 checksum
How to use checksums
852de21a516e40727dddc083818c29685471d8f56086a3d64484c8bd201dbfac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page