/ Модель

Характеристики

Контекст
256 токенов
Параметры
10,9 млн
Лицензия
MIT
Архитектура
gpt_neo · dense
Базовая модель
TinyStories-Instruct-8M
Библиотека
transformers
Опубликована
11 авг 2026

TinyTalk-UA

Генерация текстаТекст → текст3 профессии

Компактный украиноязычный чат-бот для коротких диалогов и простых ответов, способный работать локально на малом устройстве.

27скачиваний за 30 дней0лайковвеса обновлены11 авг 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

TinyTalk UA — компактный украиноязычный чат-бот TheREZOR на базе GPT-Neo с 10,9 млн параметров и контекстом 256 токенов. Модель предназначена для простого диалога на украинском языке и может работать локально и офлайн, в том числе на микроконтроллере ESP32-S3; автор также описывает запуск в браузере через WebAssembly.

Модель дообучена на основе roneneldan/TinyStories-Instruct-8M: тело трансформера унаследовано от базовой модели, а таблица эмбеддингов создана заново для украинского токенизатора. Обучение включало 700 млн украинских токенов и отдельный этап настройки диалоговых ответов. Карточка приводит показатели проверки украинских словоформ и согласования, но они не гарантируют фактическую точность ответов.

Модель подходит для коротких бесед, простых детских фактов и демонстраций автономного запуска языковой модели на малом устройстве. Лицензия модели — MIT.

Сценарии применения

  • короткие беседы на украинском языке
  • демонстрация чат-бота на ESP32-S3 без подключения к сети
  • простые ответы на детские вопросы о цветах и животных
  • автономный запуск чат-бота в браузере через WebAssembly

Ограничения

Контекст ограничен 256 токенами, а знания о мире скудны; возможны фактические ошибки, ненадёжные ответы, ненормативная лексика и шум разговорного корпуса. Автор не рекомендует применять модель в ситуациях, где важна точность.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

TinyTalk UA

Найменший український чат-бот у світі.

👉 Спробувати наживо: tinytalk-ua.rezor.me — модель виконується просто у вашому браузері (WebAssembly), без сервера й без API.

Український чат-бот на 9,96 млн параметрів, який працює повністю офлайн на мікроконтролері ESP32-S3 (M5Stack Cardputer, 512 КБ SRAM, без PSRAM) — 5,6 МБ у Q4, ~5 токенів/с (196 мс/токен, виміряно на англійській збірці такої ж архітектури; швидкість упирається в потік із флеш-пам'яті). І, звісно, на будь-чому більшому.

Це україномовний родич TinyTalk 2. Таблиця ембедингів тут нова й випадкова — український токенізатор, а це третина моделі, — тіло трансформера стартує з того самого предка (TinyStories-Instruct-8M) і далі навчається на 700 млн українських токенів.

Мозок прошивки cardputer-ai (гілка ukr), де вона працює з Q4_0-квантизацією, int4 KV-кешем і рукописним SIMD-ядром PIE для ESP32-S3.

Що вміє

Проста розмова з пам'яттю на кілька реплік, дитячі факти (кольори, звуки тварин, протилежності) — і чесне «не знаю» замість вигадок на питання, які завеликі для такої моделі. Слава Україні! → Героям слава!

Формат промпту

User: <повідомлення>
Bot: <відповідь><|endoftext|>
User: <повідомлення>
Bot:

chat_template вбудований, тож tokenizer.apply_chat_template() збирає цей формат сам.

Використання

from transformers import GPTNeoForCausalLM, GPT2TokenizerFast

model = GPTNeoForCausalLM.from_pretrained("TheREZOR/TinyTalk-UA")
tok = GPT2TokenizerFast.from_pretrained("TheREZOR/TinyTalk-UA")

msgs = [{"role": "user", "content": "привіт"}]
ids = tok(tok.apply_chat_template(msgs, tokenize=False), return_tensors="pt").input_ids
out = model.generate(ids, max_new_tokens=40, do_sample=True,
                     temperature=0.8, top_p=0.9,
                     eos_token_id=tok.eos_token_id,
                     pad_token_id=tok.eos_token_id)
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
# " Привіт! Як твої справи?"

Реальні відповіді (жадібна декодизація):

запитвідповідь
привітПривіт! Як твої справи?
слава україніГероям слава!
як тебе звати?Мене звати Бот. Я живу в цій маленькій машинці.
мені сумноМені шкода. Розкажи, що сталося?
хто такий Ейнштейн?Я не знаю. Я ще дуже маленький бот.

Архітектура

GPT-Neo: 8 шарів, dim 256, 16 голів, чергування global/local уваги (вікно 256), байтовий BPE на 14 000 токенів, зв'язані ембединги, контекст 256 позицій. Тіло трансформера ініціалізовано з TinyStories-Instruct-8M (107 тензорів), таблиця ембедингів — нова й випадкова, бо словник інший.

Як навчено

  1. Претрейн — 700 млн токенів (476 млн унікальних) з відфільтрованих українських субтитрів OPUS OpenSubtitles + ~30 % відредагованої прози з lang-uk/malyuk + Tatoeba. 21 362 кроки, 5,4 год на Ryzen AI Max+ 395 (ROCm, bf16).
  2. Файн-тюн діалогів — 34 тис. блоків (8,7 млн токенів), 3 епохи, маскований лосс: градієнт лише на репліках бота й на EOS, тож модель вчиться відповідати й зупинятися, а не імітувати користувача.

Проза потрібна саме через морфологію: субтитри — це 4,3 слова на рядок, а українська узгодженість (прикметник із іменником у роді, числі й відмінку; дієслово минулого часу з родом підмета) живе в повних реченнях.

Метрики

значення
Лосс на діалоговій валідації3,4535
Коректність словоформ (VESUM)99,5 %
Узгодження прикметник–іменник (VESUM)90,6 %
Дитячі факти (батарея з 8 питань)8/8
«Не знаю» на неможливих питаннях8/8
Відсутність зайвих відмов8/8

Морфологію міряно проти VESUM — довідкового словника українських словоформ (3,9 млн форм). Власні назви виключено з перевірки словоформ: VESUM не містить транслітерованих іноземних імен.

Чесні обмеження

Це навчальна іграшка. Знань про світ нема — лише ~120 написаних вручну дитячих фактів; решта має отримати ввічливе «не знаю», але не завжди: яка столиця франції? дає Столиця України - Київ. Контекст — 256 токенів. Корпус — субтитри, тож у рідкісних відповідях трапляється лайка й розмовний шум. Не використовуйте це там, де щось важить.

Файли для ESP32

Каталог esp32/ містить те, що зашивається у прошивку:

  • model_neo_q4.bin — Q4_0, формат CRDP v3, 5,63 МБ
  • tok_neo.bin — блоб токенізатора CTK2, 276 КБ

Ліцензія та джерела

MIT — і код, і ваги. Робіть що завгодно, зберігайте текст ліцензії.

Джерела навчання наведені нижче для чесної атрибуції. Деякі з них мають власні умови (Tatoeba — CC BY 2.0 FR), а деякі не мають ліцензійного теґу взагалі; якщо це важливо для вашого випадку, перевірте першоджерела самі:

  • Тіло: TinyStories-Instruct-8M (Eldan & Li, arXiv:2305.07759) — опубліковано без явної ліцензії.
  • OPUS OpenSubtitles v2024 (uk) — Lison & Tiedemann, LREC 2016. OPUS поширює корпус для досліджень.
  • lang-uk/malyuk — компіляція без ліцензійного теґу (UberText 2.0 + OSCAR uk + українські новини).
  • OPUS Tatoeba (uk) — CC BY 2.0 FR.
  • Дитячі факти й відмови — написані вручну, MIT.

TinyTalk UA (English)

The smallest Ukrainian chatbot in the world.

👉 Try it live: tinytalk-ua.rezor.me — the model runs in your own browser (WebAssembly), no server and no API.

A 9.96M-parameter Ukrainian chatbot that runs fully offline on an ESP32-S3 microcontroller (M5Stack Cardputer, 512 KB SRAM, no PSRAM) — 5.6 MB at Q4, ~5 tokens/s (196 ms/token, measured on the same-architecture English build; throughput is bound by flash streaming). And on anything bigger, of course.

It is the Ukrainian sibling of TinyTalk 2: the embedding table here is new and random — a Ukrainian tokenizer, and that is a third of the model — while the transformer body starts from the same ancestor (TinyStories-Instruct-8M) and is then trained on 700M Ukrainian tokens.

Built as the brain of the cardputer-ai firmware (branch ukr), where it runs Q4_0-quantized with an int4 KV cache and a hand-written ESP32-S3 PIE SIMD kernel.

What it's for

Small talk with a few turns of memory, kindergarten facts (colors, animal sounds, opposites), and a trained "I don't know" instead of confabulation for questions beyond a model this size. Слава Україні! → Героям слава!

Prompt format

User: <message>
Bot: <reply><|endoftext|>
User: <message>
Bot:

A chat_template is embedded, so tokenizer.apply_chat_template() produces this format automatically.

Usage

from transformers import GPTNeoForCausalLM, GPT2TokenizerFast

model = GPTNeoForCausalLM.from_pretrained("TheREZOR/TinyTalk-UA")
tok = GPT2TokenizerFast.from_pretrained("TheREZOR/TinyTalk-UA")

msgs = [{"role": "user", "content": "привіт"}]
ids = tok(tok.apply_chat_template(msgs, tokenize=False), return_tensors="pt").input_ids
out = model.generate(ids, max_new_tokens=40, do_sample=True,
                     temperature=0.8, top_p=0.9,
                     eos_token_id=tok.eos_token_id,
                     pad_token_id=tok.eos_token_id)
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
# " Привіт! Як твої справи?"   ("Hi! How are you?")

Real greedy outputs:

promptreply
привіт (hi)Привіт! Як твої справи?
слава україніГероям слава!
як тебе звати? (what's your name?)Мене звати Бот. Я живу в цій маленькій машинці.
мені сумно (I'm sad)Мені шкода. Розкажи, що сталося?
хто такий Ейнштейн? (who is Einstein?)Я не знаю. Я ще дуже маленький бот.

Architecture

GPT-Neo: 8 layers, hidden size 256, 16 heads, alternating global/local attention (window 256), 14,000-token byte-level BPE, tied embeddings, 256 positions. The transformer body was initialized from TinyStories-Instruct-8M (107 tensors copied); the embedding table is fresh and random, since the vocabulary is entirely different.

Training

  1. Pretrain — 700M tokens (476M unique) from filtered Ukrainian OPUS OpenSubtitles + ~30% edited prose from lang-uk/malyuk + Tatoeba. 21,362 steps, 5.4 h on a Ryzen AI Max+ 395 (ROCm, bf16).
  2. Dialogue fine-tune — 34K blocks (8.7M tokens), 3 epochs, masked loss: gradient only on bot replies and EOS, so it learns to answer and to stop, never to imitate the user.

The prose tier exists for morphology: subtitles average 4.3 words per line, and Ukrainian agreement (adjective–noun in gender, number and case; past-tense verb with the subject's gender) lives in complete clauses.

Metrics

value
Chat validation loss3.4535
Wordform validity (VESUM)99.5%
Adjective–noun agreement (VESUM)90.6%
Kindergarten facts (8-prompt battery)8/8
"I don't know" on impossible questions8/8
No over-refusal8/8

Morphology is scored against VESUM, the reference Ukrainian morphological dictionary (3.9M word forms). Proper nouns are excluded from validity: VESUM has no transliterated foreign names.

Honest limitations

An educational toy. No world knowledge beyond ~120 hand-written kindergarten facts; everything else is supposed to get a polite "I don't know" — but not always: яка столиця франції? ("capital of France?") answers `Столиця України

  • Київ.` ("The capital of Ukraine is Kyiv."). Context is 256 tokens. The corpus is film subtitles, so occasional profanity and conversational noise leak into rare replies. Do not use it for anything that matters.

ESP32 files

The esp32/ directory holds what gets embedded in the firmware:

  • model_neo_q4.bin — Q4_0 weights, CRDP v3 layout, 5.63 MB
  • tok_neo.bin — CTK2 tokenizer blob, 276 KB

License & attribution

MIT — both code and weights. Do what you like; keep the license text.

The training sources are listed below for honest attribution. Some carry their own terms (Tatoeba is CC BY 2.0 FR) and some have no license tag at all; if that matters for your use case, check the upstream sources yourself:

  • Body: TinyStories-Instruct-8M (Eldan & Li, arXiv:2305.07759) — published without an explicit license.
  • OPUS OpenSubtitles v2024 (uk) — Lison & Tiedemann, LREC 2016. OPUS distributes these corpora for research.
  • lang-uk/malyuk — a compilation with no license tag (UberText 2.0 + OSCAR uk + Ukrainian news).
  • OPUS Tatoeba (uk) — CC BY 2.0 FR.
  • Kindergarten facts and deflections — hand-written, MIT.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
GPTNeoForCausalLM
Ревизия весов
5f1c208

0 моделей