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
| language: | |
| - tr | |
| license: apache-2.0 | |
| base_model: unsloth/qwen2.5-1.5b-instruct-unsloth-bnb-4bit | |
| tags: | |
| - peft | |
| - lora | |
| - qwen2 | |
| - e-commerce | |
| - customer-support | |
| - turkish | |
| # 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: | |
| ```python | |
| 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: | |
| - Dataset: [Mer1Alii/TR-ECommerce-CustomerSupport-Instructions](https://huggingface.co/datasets/Mer1Alii/TR-ECommerce-CustomerSupport-Instructions) | |
| - Tokenizer: [Mer1Alii/TR-ECommerce-CustomerSupport-Tokenizer](https://huggingface.co/Mer1Alii/TR-ECommerce-CustomerSupport-Tokenizer) | |