Instructions to use Mer1Alii/TR-ECommerce-CustomerSupport-LoRA with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use Mer1Alii/TR-ECommerce-CustomerSupport-LoRA with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("unsloth/qwen2.5-1.5b-instruct-unsloth-bnb-4bit") model = PeftModel.from_pretrained(base_model, "Mer1Alii/TR-ECommerce-CustomerSupport-LoRA") - Notebooks
- Google Colab
- Kaggle
TR-ECommerce-CustomerSupport-LoRA
Bu model, e-ticaret müşteri destek alanındaki Türkçe metinleri daha iyi anlayıp cevap üretebilmesi için unsloth/qwen2.5-1.5b-instruct-unsloth-bnb-4bit modeli üzerine LoRA ile fine-tune edilmiştir.
📊 MMLU Benchmark Karşılaştırması
Fine-tune edilmiş bu model, öncelikle genel kültür ve muhakeme yeteneğini ölçmek adına Türkçe Yapay Zeka MMLU veri setinin 1000 soruluk kapsamlı bir alt kümesi üzerinden test edilmiştir. Base model ile yapılan karşılaştırmalı performans testi sonuçları aşağıdadır:
| Model | Model Tipi | Başarı Oranı (%) | Doğru Cevap | Çözülen Soru | Toplam Süre (sn)* |
|---|---|---|---|---|---|
unsloth/qwen2.5-1.5b-instruct-unsloth-bnb-4bit |
Base Model | %22.00 | 220 | 1000 | 881.830 |
Mer1Alii/TR-ECommerce-CustomerSupport-LoRA |
Fine-Tuned (LoRA) | %34.10 | 341 | 1000 | 567.668 |
MMLU Değerlendirmesi: Çoktan seçmeli bir testte %22'lik başarı şans faktörüne (random guessing) oldukça yakındır. Fine-tune işlemi sonrası bu oranın %34.10'a çıkması, modelin genel kültür bilgisinin artmasından ziyade; verilen "sadece şıkkın harfini yaz" talimatına ve formata çok daha iyi uyum sağlamasından kaynaklanmaktadır. Bu test göstermektedir ki LoRA eğitimi yıkıcı unutmaya (catastrophic forgetting) yol açmamış, modelin formatı öğrenme kapasitesini belirgin şekilde artırmıştır.
*Not: Süredeki dramatik iyileşme, kısmen GPU/Cache ısınmasından ve modelin talimata uyarak gereksiz uzunlukta token üretmeyi bırakmasından (doğrudan tek harf üretmesi) kaynaklanmaktadır.
🎯 Özel E-Ticaret Benchmark Karşılaştırması (Asıl Odak)
Model e-ticaret müşteri desteği için fine-tune edildiğinden, modelin asıl başarısını ölçmek adına 500 soruluk özel bir e-ticaret test seti (TR-ECommerce-CustomerSupport-Benchmark) oluşturulmuştur. Bu veri seti, eğitim verisinden tamamen ayrılmış %10'luk bir kısımdır.
Önceki değerlendirmelerde vurgulanan "bölüm bazlı (stratified) örnekleme" önerisine uygun olarak; test seti 5 ana kategoriye ayrılmış ve her kategoriden tam 100'er adet dengeli soru seçilmiştir.
| Model | Basari (%) | Dogru | Toplam Soru | Sure (sn) |
|---|---|---|---|---|
Qwen2.5-1.5B (Base Model) |
%27.40 | 137 | 500 | 310.5 |
TR-ECommerce-LoRA (Fine-Tuned) |
%39.80 | 199 | 500 | 240.9 |
Gemma-3-1B-IT |
%49.80 | 249 | 500 | 321.5 |
Llama-3.2-1B-Instruct |
%23.40 | 117 | 500 | 241.8 |
Qwen2.5-0.5B-Instruct |
%42.40 | 212 | 500 | 316.9 |
Analiz (Gerçek E-Ticaret Performansı): Kendi hazırladığımız dengeli (stratified) 500 soruluk test setinde Qwen 2.5 1.5B Base modeli %27.40 başarı gösterirken, aynı modelin üzerine eğittiğimiz LoRA versiyonu %39.80 puana (oransal olarak ~%45 iyileşme) çıkmıştır. Bu artış, modelin e-ticaret domaininde (kargo, iade, fatura vb. müşteri şikayetleri) hedeflediğimiz uzmanlaşmayı başarıyla kazandığını ispatlamaktadır. Llama 3.2 gibi popüler modelleri de bu spesifik alanda geride bırakmıştır.
🚀 Kullanım (Usage)
Modeli transformers ve peft kütüphaneleri ile kolayca kullanabilirsiniz:
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
import torch
base_model_id = "unsloth/qwen2.5-1.5b-instruct-unsloth-bnb-4bit"
peft_model_id = "Mer1Alii/TR-ECommerce-CustomerSupport-LoRA"
tokenizer = AutoTokenizer.from_pretrained(base_model_id)
model = AutoModelForCausalLM.from_pretrained(base_model_id, torch_dtype=torch.float16, device_map="auto")
model = PeftModel.from_pretrained(model, peft_model_id)
prompt = "Kargom 3 gündür yolda gözüküyor, ne yapmalıyım?"
messages = [{"role": "user", "content": prompt}]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=100)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
🔗 Veri Seti ve Test Kodu (Dataset & Benchmark)
Tüm test kodları ve veri setleri tamamen şeffaf bir şekilde bu deponun "Files and versions" sekmesinde yer almaktadır:
- Özel E-Ticaret Benchmark Testi: Modelin kendi e-ticaret senaryomuzda test edildiği 500 soruluk JSON veri seti (
custom_benchmark_final.json) ve 4-bit optimize test kodu (custom_benchmark_test.py). - MMLU Testi: Önceki MMLU testini yapmak için kullanılan kod (
hf_olcum.py).
Model eğitimi sırasında kullanılan asıl veri setine ve tokenizer'a aşağıdaki linklerden ulaşabilirsiniz:
- Downloads last month
- 103