Skip to content

Repository files navigation

Дообучение стиля модели

NeiroBridge — дообучение стиля модели

NeiroBridge — мост между нейросетями и бизнесом

Демонстрационный кейс локального fine-tuning: открытая русская модель + свой датасет + LoRA-адаптер.
Сайт: neirobridge.ru

Задача

Нужен устойчивый тон ответов — спокойный наставник, без воды и без простыни правил в каждом запросе.

Решение

  • Код обучения — пайплайн LoRA, с правкой под свежий transformers 5.x (logging_dir убран).
  • Датасет свой: dataset_style_mentor.json, 122 пары.
  • Базовая модель не переписывается: поверх неё обучается лёгкий адаптер LoRA.
  • Запуск на CPU. Видеокарта GT 630M для современного PyTorch не подходит.

Как собран датасет:

  1. Один тон на все ответы, без «отличный вопрос».
  2. Схема: суть → один пример → одно правило.
  3. Короткие ответы: на 6 ГБ ОЗУ длинный эталон обрезается, модель учит обрывки и даёт кракозябры.
  4. Добавлены темы: боты, заявки, JSON, UTF-8, LoRA.
  5. Файл UTF-8, ensure_ascii=False.

Результат

Обучение прошло штатно: 2 эпохи, 244 шага, около 7 минут, loss с 7.56 до ~2.7.

Обучение завершено

В чате качество слабое. rugpt3small (125M, GPT-2) путает смысл и зацикливается. Это предел компактной демонстрационной модели, не сломанный запуск: fine-tuning здесь про пайплайн и форму ответа, не про энциклопедию. Факты в бою закрывает RAG, тон — более крупная модель или промпт.

Ограничение маленькой модели в чате

Стек

Запуск

Нужен токен Hugging Face с правом Read: hf auth login

python -m venv .venv
.\.venv\Scripts\activate
python -m pip install -r requirements.txt

Обучение:

python .\fine_tuning\train.py --model_name "ai-forever/rugpt3small_based_on_gpt2" --dataset_path ".\dataset_style_mentor.json" --output_dir ".\fine_tuning\lora_mentor_cpu" --num_train_epochs 2 --per_device_train_batch_size 1 --gradient_accumulation_steps 1 --max_length 128 --lora_r 8 --lora_alpha 16 --warmup_steps 0 --logging_steps 5 --device cpu

Чат с уже сохранённым адаптером:

python .\inference\chat.py --base_model "ai-forever/rugpt3small_based_on_gpt2" --lora_model ".\fine_tuning\lora_mentor_cpu" --max_length 80 --temperature 0.5

Пересобрать датасет:

python .\build_dataset.py

Чего нет в репозитории

  • .venv
  • кэш базовой модели (~550 МБ)
  • токены Hugging Face
  • чекпоинты оптимизатора

Железо, на котором считали

Intel Core i5-3330, 6 ГБ ОЗУ, HDD, NVIDIA GT 630M. Только CPU, батч 1, max_length=128.

About

LoRA fine-tuning of a Russian GPT-2 for a calm mentor tone. Custom 122-pair dataset, CPU-only run.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages