Cấu hình huấn luyện
Table | |
|---|
| Vị trí adapter | text-linear (12 loại module linear) |
| r / alpha | 16 / 32 |
| Learning rate | 1e-4 (10× thang full-FT) |
| Epochs / steps | 2.0 / 30 |
| Batch hiệu dụng | 16 (1 × grad_accum 16) |
max_length | 1024 |
| Loss mask | assistant-only (39/94 token, 41,5%) |
| Precision | fp16 + gradient scaling (T4 sm_75 không có bf16) |
| Tham số huấn luyện | 32.464.896 |
| VRAM đỉnh | 12,01 GB / 14,6 GB |
| Dữ liệu | 225 train / 25 val, seed 42 |
Kết quả
Table with columns: target, regression, format, latency (ms) | target | regression | format | latency (ms) |
|---|
| (a) base + prompt ngây thơ | 0.000 | 0.758 | 0.000 | 3255,0 |
| (b) base + prompt tối ưu | 0.765 | 0.758 | 1.000 | 1062,6 |
| (c) adapter này | 0.970 | 0.611 | 1.000 | 1456,0 |
⚠ Cổng hồi quy: FAILED — đừng deploy
Adapter thắng nhiệm vụ đích rõ rệt (+0.205 so với prompt tối ưu) nhưng mất 0,147 năng
lực tổng quát, trong khi ngưỡng cho phép là 0,020 — vượt hơn 7 lần. Đây là catastrophic
forgetting: 225 mẫu huấn luyện đều cùng một dạng đầu ra JSON, không có dữ liệu replay nào
neo giữ năng lực cũ.
Adapter này công bố để chấm bài và tham khảo, không dùng cho sản xuất. Muốn chữa thì
trộn 1–5% dữ liệu replay ngoài miền rồi huấn luyện lại.
Một lỗ hổng đã biết: cả 6 mẫu sai trong tập đánh giá đều chứa cụm "Khi nào tiện" — model
đoán urgency = trung_binh trong khi nhãn đúng là thap. 44 mẫu không chứa cụm này thì đúng
hết. Chi tiết trong REPORT.md §6.
Cách dùng
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
base = AutoModelForCausalLM.from_pretrained("unsloth/Qwen3.5-4B", dtype="auto", device_map="auto")
model = PeftModel.from_pretrained(base, "Tam109204/lab21-2A202601267-qwen3-triage-lora")
tok = AutoTokenizer.from_pretrained("Tam109204/lab21-2A202601267-qwen3-triage-lora")