skypro1111/gemma-3-270m-uk-verbalizer
skypro1111/gemma-3-270m-uk-verbalizer is a 0.3 billion parameter Gemma 3 model developed by skypro1111, specifically fine-tuned for Ukrainian text normalization. It transforms written Ukrainian text into its spoken form, handling numbers, dates, times, currency, and abbreviations. This model is optimized for use in Text-to-Speech (TTS) pipelines, providing the verbalized input for speech synthesis.
Loading preview...
Overview
This model, skypro1111/gemma-3-270m-uk-verbalizer, is a specialized Gemma 3 (270M parameters) fine-tuned for Ukrainian text normalization. Its primary function is to convert written Ukrainian text into its phonetic, spoken representation, making it ideal for Text-to-Speech (TTS) systems. It accurately verbalizes complex elements such as numbers, dates, times, currency, units, abbreviations, codes, phone numbers, IBANs, domains, emails, Roman numerals, and Latin insertions.
Key Capabilities
- Comprehensive Normalization: Handles a wide array of text types, ensuring correct pronunciation for TTS. Examples include "1111 386,40 грн" becoming "один мільйон сто одинадцять тисяч триста вісімдесят шість гривень сорок копійок".
- Contextual Inflection: Correctly inflects numerals based on context (e.g., "при двох тисячах восьмистах тридцяти відвідувачах") and distinguishes reading conventions (e.g.,
вітамін Das "вітамін де" vs.роз'єм типу Cas "роз'єм типу сі"). - Optimized Performance: Achieves significantly high inference speeds, particularly with GGUF via
llama.cpp, reaching 532 tokens/s on an RTX 3090 Ti, which is 20 times faster thantransformers. - Pruned Vocabulary: The original Gemma 3 vocabulary was surgically pruned from 262,144 to 38,651 tokens, reducing model size by 53% (from 270M to ~125M parameters) without retraining or quality loss, by focusing on Ukrainian-specific tokens.
- Preprocessing Steps: Includes essential deterministic preprocessing steps (
digit_routerandbignum_spacing) to handle specific numerical patterns that the model might otherwise misinterpret, ensuring higher accuracy.
Good for
- Ukrainian Text-to-Speech (TTS) Systems: Provides the crucial text verbalization step before speech synthesis.
- High-Performance Inference: Recommended for applications requiring fast processing of Ukrainian text, especially when deployed with
llama.cpp. - Resource-Constrained Environments: The pruned vocabulary and ONNX export options make it suitable for edge devices or CPU-based inference where
llama.cppmight be inconvenient.
Limitations
- Transliteration: Performance on unseen English words is around 50%, as the model learned a list rather than a rule.
- Sentence-by-Sentence Processing: Designed for single sentences; long paragraphs should be split before input.
- Specific Domains: Weaker performance on Roman numerals in non-canonical forms, lists of multiple English words, bare email fragments, and scientific/technical texts.
- Hyphenated Ranges: Currently reads
5-7 млнas "п'ять — сім мільйонів" instead of "від п'яти до семи", which is a known issue to be addressed in future updates.