Qwen3-32B Banking77 LoRA
классификатор банковских обращений
LoRA-адаптер ранга 8 для Qwen/Qwen3-32B, который относит сообщения клиентов к одному из 77 интентов Banking77. Модель получает список меток в промпте и отвечает только названием метки. Адаптер обучен через Soup с потоковой загрузкой слоёв.
🎯 Ключевые особенности
- 💼 Классификация английских обращений в 77 банковских интентов Banking77.
- ⚙ LoRA r=8, alpha=16 на
q_projиv_projвсех 64 слоёв; 9,96 млн параметров. - 🚀 Layer streaming держит квантованные веса базовой модели в RAM/на диске и переносит на GPU по одному слою.
- 🔍 В промпте — 77 меток в
sorted()-порядке; ответ — только текст метки. - 📌 Сохранённый адаптер — fp32, около 39,9 МБ.
🧑💻 Пример
from peft import PeftModel
from transformers import AutoModelForCausalLM
base = AutoModelForCausalLM.from_pretrained("unsloth/Qwen3-32B-bnb-4bit", device_map={"": 0})
model = PeftModel.from_pretrained(base, "AlpamysSigmaaaa/Qwen3-32B-Banking77-LoRA-Soup")
# промпт: 77 меток + сообщение, enable_thinking=False
# greedy-генерация, max_new_tokens=24; ответ — только метка
print(classify("I still have not received my new card..."))
Подробнее
Banking77 test: 82,82% против 69,58% у базы (+13,25 п.п., 95% CI +11,88…+14,64).MMLU +0,80 и GSM8K +0,50 — интервалы включают ноль; один seed, только английский.
4-битная база ~19 ГБ, для инференса нужен GPU заметно больше 20 ГБ; обучение шло на L40S 48 ГБ с лимитом аллокатора 6,25 GiB, на 8 ГБ не проверялось.








Комментарии