|
Download README.md from longtimedevs/C3-Lite: direct link, hf CLI and curl.
- Browser
- Download file 4.68 kB
-
https://huggingface.co/longtimedevs/C3-Lite/resolve/main/README.md
- Command line
-
hf download hf://longtimedevs/C3-Lite/README.md
-
curl -L -o README.md https://huggingface.co/longtimedevs/C3-Lite/resolve/main/README.md
4.68 kB
| language: | |
| - ru | |
| - en | |
| license: mit | |
| tags: | |
| - text-generation | |
| - autocomplete | |
| - t9 | |
| - gru | |
| - rnn | |
| - ngram | |
| - low-latency | |
| - edge-ai | |
| pipeline_tag: text-generation | |
| # 🚀 C3-Lite: Contextual Neural Autocomplete Engine | |
| **C3-Lite** — компактная гибридная система предиктивного ввода и контекстного автодополнения текста (Next-Word / Word-Completion), объединяющая **N-граммы (L1)** и **символьную 2×GRU нейросеть (L2)** с аппаратной защитой от зацикливаний и синтаксического дрейфа. | |
| * 📦 **Hugging Face Репозиторий:** [longtimedevs/C3-Lite](https://huggingface.co/longtimedevs/C3-Lite) | |
| * 🌐 **Сайт разработчика:** [long-time.ru](https://long-time.ru) | |
| * ⚖️ **Лицензия:** MIT | |
| --- | |
| ## 💡 Особенности и преимущества | |
| - **🛡️ Hard Anti-Loop Guard:** | |
| Полный запрет повторяющихся биграммных циклов ($A \to B \to A \to B$), триграммных петель и непосредственных дубликатов слов ($w_t \neq w_{t-1}$). | |
| - **📐 Синтаксический контроль:** | |
| Встроенная фильтрация грамматической несогласованности (блокировка связок вроде *«a + plural»*, двух артиклей или предлогов подряд). | |
| - **🧠 Долговременный контекст:** | |
| Скрытое состояние нейросети $h_T$ аккумулирует предшествующий текст (до 512 символов), сохраняя связность темы на протяжении всего предложения. | |
| - **⚡ Экстремальная легковесность:** | |
| Вес всех артофактов модели на диске — всего **~15 МБ**, задержка отклика — **< 15 мс на CPU**. | |
| --- | |
| ## 🏗️ Архитектура C3-Lite | |
| ```text | |
| [Контекст ввода пользователя (до 512 симв.)] | |
| │ | |
| ├───► L1: N-Grams (Top-140k 3-грамм, Top-70k 2-грамм) | |
| │ └─► Быстрый отбор кандидатов с приоритетом живой речи | |
| │ | |
| ├───► L2: 2×GRU Neural Network (Embed=128, Hidden=512, ~3.6M params) | |
| │ └─► Пакетная оценка беглости (fluency) от скрытого состояния h_T | |
| │ | |
| ▼ | |
| [Grammar Filter + Hard Anti-Loop Guard] | |
| │ | |
| ▼ | |
| [Top-3 кандидата без зацикливаний и смысловых сбоев] | |
| ``` | |
| --- | |
| ## 🛠️ Быстрый старт | |
| ### 1. Установка зависимостей | |
| ```bash | |
| pip install torch transformers safetensors | |
| ``` | |
| ### 2. Загрузка и инференс через Transformers | |
| ```python | |
| import torch | |
| from transformers import AutoModel, AutoTokenizer | |
| REPO_ID = "longtimedevs/C3-Lite" | |
| # Загрузка токенизатора и модели | |
| tokenizer = AutoTokenizer.from_pretrained(REPO_ID, use_fast=False) | |
| model = AutoModel.from_pretrained(REPO_ID) | |
| model.eval() | |
| # Подготовка контекста | |
| context = "we are not " | |
| input_ids = torch.tensor([[tokenizer.char_to_id.get(c, 1) for c in context]], dtype=torch.long) | |
| with torch.no_grad(): | |
| outputs = model(input_ids) | |
| logits = outputs.logits | |
| print("Logits shape:", logits.shape) | |
| ``` | |
| ### 3. Автономный запуск с клавиатурой Tkinter | |
| Если вы используете монолитный скрипт `c3_lite.py`: | |
| ```bash | |
| python c3_lite.py | |
| ``` | |
| Скрипт автоматически инициализирует движок и запустит темный графический интерфейс мобильной клавиатуры. | |
| --- | |
| ## 📊 Датасеты и обучение | |
| Обучение проводилось с нуля на открытых корпусах: | |
| - **OPUS Tatoeba (RU/EN)** — разговорные диалоги и бытовые фразы; | |
| - **wikitext-103-raw-v1** — связный английский корпус с очисткой от энциклопедического шума; | |
| - **atBuba/ruwiki-dataset** — очищенные русскоязычные предложения. | |
| --- | |
| ## 👨💻 Автор | |
| Разработка: **LongTime** | |
| Официальный сайт проекта: **[long-time.ru](https://long-time.ru)** |