Files
agmind-rag-splitter-ru/README.md

69 lines
3.5 KiB
Markdown
Raw Permalink Normal View History

---
language:
- ru
license: apache-2.0
base_model: t-tech/T-lite-it-2.1
datasets:
- AGmind/agmind-rag-splitter-ru-data
pipeline_tag: text-generation
tags:
- rag
- chunking
- text-segmentation
- russian
- lora
---
# RU Context-Aware Document Splitter (T-lite-it-2.1 LoRA)
Дообучение **`t-tech/T-lite-it-2.1`** (Qwen3-8B), которое режет русские документы на самодостаточные смысловые чанки для RAG, держа таблицы/код целыми. На вход — текст, заранее разбитый на нумерованные юниты; на выход — индексы границ + topic в JSON.
## Использование
Это **completion**-модель, обученная на raw-Alpaca промпте (без чат-шаблона). Сначала разбей документ на нумерованные юниты; чанки собери на хосте по возвращённым индексам.
**Промпт:**
```
### Instruction:
Раздели документ на смысловые части для системы поиска (RAG). Каждая часть читается независимо, не разрывая предложений, таблиц и кода. Верни ТОЛЬКО номера единиц, после которых проходит граница, в формате JSON.
### Input:
[1] Первое предложение. [2] Второе. [3] | таблица |...|
### Response:
```
**Вывод:** `{"splits": [2], "topic": "..."}``splits` = индексы юнитов, после которых граница (1-индексные). Режь оригинал по этим точкам.
Полный пре-/пост-процессинг + рецепт сервинга на llama.cpp — в [GitHub-репозитории](https://github.com/botAGI/AGmind-ML/tree/main/agmind-rag-splitter-ru).
## Результаты (согласие с метками учителя)
Исходный snapshot **N=300** из holdout-1500:
| Валидный JSON | F1@0 | F1@±1 | exact-set |
|---|---|---|---|
| 100% | 0.656 | 0.821 | 29% |
Перепроверка на полном **holdout-1500** (2026-06-26, raw stdout — в `eval/` GitHub-репозитория):
| Прогон | JSON | F1@0 | F1@±1 | exact |
|---|---|---|---|---|
| HF bf16 | 99.9% | 0.665 | 0.825 | 30.0% |
| GGUF Q5_K_M, AMD Vulkan | 100% | 0.661 | 0.826 | 29.9% |
На полном holdout GGUF Q5_K_M практически равен HF-модели; работает на AMD Vulkan через llama.cpp.
## Данные
Датасет: [`AGmind/agmind-rag-splitter-ru-data`](https://huggingface.co/datasets/AGmind/agmind-rag-splitter-ru-data) (~17k train + 12k синтетика, дистилляция от DeepSeek-V4-Flash).
## Обучение
bf16 LoRA (r32, rsLoRA, all-linear, response-only) на RTX 5090; ~17k примеров дистилляции (DeepSeek-V4-Flash). См. `docs/methodology.md` в репо.
## Файлы
- LoRA-адаптер / merged FP16-веса
- `*-Q5_K_M.gguf` (llama.cpp, Vulkan/CPU)
## Ограничения
Метрики — согласие с учителем, не human-ground-truth. Лёгкая пере-сегментация. Для очень больших таблиц нужна отдельная табличная стратегия, а не эта боундари-модель.
## Лицензия
Apache-2.0 (наследует лицензию базы T-lite-it-2.1).