Akçe 🪙 — Qwen2.5-7B LoRA (Türkçe Bankacılık)

Akçe — Osmanlı gümüş sikkesinden ismini alan, Türkçe bankacılık alanına özelleştirilmiş bir dil modeli LoRA adaptörüdür. Qwen2.5-7B-Instruct temel modeli üzerine 20K örneklik sentetik Türkçe bankacılık verisiyle fine-tune edilmiştir.

Model, TR bankacılık müşteri hizmetleri senaryolarında kullanılmak üzere tasarlanmıştır: havale/EFT/FAST işlemleri, kredi hesaplamaları, kredi kartı yönetimi, yatırım ürünleri, dijital bankacılık güvenliği ve dolandırıcılık tespiti.

📌 Model Özeti

Özellik Değer
Base Model unsloth/Qwen2.5-7B-Instruct-bnb-4bit
Adaptör Tipi LoRA (PEFT)
Eğitim Verisi cihatyldz/akce-bankacilik-20k
Dil Türkçe (birincil), İngilizce (ikincil)
Domain Bankacılık / Müşteri Hizmetleri
Framework Unsloth + TRL + PEFT
Lisans Apache-2.0
Geliştirici @cihatyldz

🎯 Kullanım Amacı

Bu model aşağıdaki senaryolar için optimize edilmiştir:

  • Bankacılık sorularına Türkçe cevap: EFT/FAST farkları, havale işlem süreleri, kart türleri, limit yönetimi
  • Finansal hesaplamalar: Kredi taksit hesabı, döviz çevirimi, faiz oranı açıklamaları
  • Müşteri eğitimi: Phishing tespiti, güvenli internet bankacılığı, kart ekstresi okuma
  • Kısa, aksiyonel cevaplar: Madde madde yapılandırılmış, doğal Türkçe ile

❌ Uygun olmayan kullanımlar:

  • Gerçek finansal işlem yapma (sadece bilgilendirme amaçlıdır)
  • Kişisel veri işleme (TC kimlik, IBAN, kart bilgileri vb.)
  • Yatırım tavsiyesi (eğitim amaçlı genel bilgi verir, kişisel tavsiye değil)
  • Türkçe dışı yoğun görevler

🚀 Hızlı Başlangıç

Transformers + PEFT ile Yükleme

from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
import torch

base_model_id = "Qwen/Qwen2.5-7B-Instruct"
lora_id = "cihatyldz/akce-qwen25-7b-lora"

tokenizer = AutoTokenizer.from_pretrained(base_model_id)
base = AutoModelForCausalLM.from_pretrained(
    base_model_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
model = PeftModel.from_pretrained(base, lora_id)
model.eval()

# Cevap üretme
messages = [
    {"role": "system", "content": "Sen Akçe adında Türkçe bankacılık asistanısın."},
    {"role": "user", "content": "EFT ile FAST arasındaki fark nedir?"},
]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=400, do_sample=True, temperature=0.6, top_p=0.9)
print(tokenizer.decode(out[0][inputs.input_ids.shape[1]:], skip_special_tokens=True))

Unsloth ile Hızlı Inference (2× hızlı)

from unsloth import FastLanguageModel

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name="cihatyldz/akce-qwen25-7b-lora",
    max_seq_length=2048,
    dtype=None,
    load_in_4bit=True,
)
FastLanguageModel.for_inference(model)

messages = [{"role": "user", "content": "100 dolar kaç TL eder?"}]
inputs = tokenizer.apply_chat_template(
    messages, tokenize=True, add_generation_prompt=True, return_tensors="pt"
).to("cuda")
out = model.generate(inputs, max_new_tokens=300, temperature=0.6)
print(tokenizer.batch_decode(out)[0])

Merge Edip Tek Model Olarak Kaydetme

merged = model.merge_and_unload()
merged.save_pretrained("akce-qwen25-7b-merged")
tokenizer.save_pretrained("akce-qwen25-7b-merged")

📊 Eğitim Detayları

Hiperparametreler

Parametre Değer
LoRA rank (r) 16
LoRA alpha 16
LoRA dropout 0
Target modules q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
Sequence length 2048
Batch size (per device) 4
Gradient accumulation 4
Effective batch size 16
Learning rate 2e-4
LR scheduler cosine
Warmup ratio 0.03
Optimizer AdamW (8-bit)
Weight decay 0.01
Epochs 2
Precision bfloat16
Hardware NVIDIA A100 (40GB)

Eğitim Verisi

  • Dataset: cihatyldz/akce-bankacilik-20k
  • Örnek sayısı: 20.000
  • Format: ChatML (system + user + assistant turn'ları)
  • Dağılım:
    • Havale/EFT/FAST işlemleri
    • Kredi kartı yönetimi
    • Krediler (ihtiyaç, konut, taşıt)
    • Yatırım ürünleri (mevduat, fon, altın)
    • Güvenlik ve dolandırıcılık
    • Hesap işlemleri
    • Dijital bankacılık
  • Üretim metodu: Seed-based synthetic generation (Qwen2.5-7B teacher + LLM-as-judge filtering)

Eğitim Süresi

  • A100 GPU üzerinde ~45-75 dakika
  • Unsloth sayesinde standart Transformers'a göre yaklaşık 2× hızlandırma

🧪 Örnek Çıktılar

Kredi Hesaplama

Prompt: 500 bin TL, 36 ay, %45 yıllık faizle kredi aylık taksiti ne olur?

Çıktı:

500.000 TL anapara, 36 ay vade ve %45 yıllık faiz oranıyla aylık taksitiniz 
yaklaşık 24.850 TL olur. Toplam geri ödeme 894.600 TL, ödeyeceğiniz toplam 
faiz ise 394.600 TL civarındadır.

Dikkat etmeniz gerekenler:
- Bu hesaplama sabit faiz oranı varsayımına dayanır
- Dosya masrafı ve hayat sigortası eklenirse tutar değişir
- Kredi notunuz oranı etkileyebilir

Güvenlik Sorusu

Prompt: Phishing e-postasını nasıl anlarım?

Çıktı:

Phishing e-postalarını tespit etmek için şu ipuçlarına dikkat edin:

1. Gönderen adresi: Bankanızın resmi alan adından mı geliyor? (.com.tr, bank adı)
2. Aciliyet baskısı: "Hemen tıklayın, hesabınız kapanacak" gibi ifadeler
3. Link URL'leri: Fareyi üzerine getirince görünen adres şüpheli mi?
4. Yazım hataları: Resmi iletişimde gramer/imla hataları tipik bir işarettir
5. Kişisel bilgi talebi: Bankalar e-posta ile şifre/CVV istemez

Şüpheli bir e-posta aldığınızda bankanızın müşteri hizmetlerini arayın, 
linke tıklamayın, ekli dosyayı açmayın.

EFT vs FAST

Prompt: EFT ile FAST arasında ne fark var?

Çıktı:

EFT ve FAST, Türkiye'de para transferi için kullanılan iki farklı sistemdir:

EFT (Elektronik Fon Transferi):
- Sadece mesai saatlerinde çalışır (09:00-17:30)
- Hafta sonu ve tatil günlerinde işlem yapılamaz
- Genellikle aynı gün valörlü
- Limit: Banka politikasına göre değişir

FAST (Fonların Anlık ve Sürekli Transferi):
- 7/24 çalışır, hafta sonu dahil
- Saniyeler içinde karşı tarafa ulaşır
- İşlem limiti başlıç: 50.000 TL (banka bazında değişebilir)
- Tüm katılımcı bankalar arası anlık

Genel kullanım: Küçük tutarlar ve hız gerektiren işlemler için FAST, 
yüksek tutarlı planlı transferler için EFT tercih edilir.

⚠️ Sınırlamalar ve Etik Değerlendirme

Bilinen Sınırlamalar

  • Güncel olmayan bilgiler: Döviz kurları, faiz oranları, banka komisyonları zamanla değişir. Model eğitim tarihindeki genel bilgiyle sınırlıdır
  • Sentetik veri kaynaklı: Eğitim verisi LLM ile üretildiğinden, gerçek müşteri hizmeti etkileşimlerindeki bazı nüansları yakalamayabilir
  • Hallucination riski: Model emin olmadığı konularda uydurma detay verebilir — kritik finansal kararlarda bankanın resmi kanallarını teyit edin
  • Yasal/regülatif uyum: Türk Bankacılık Mevzuatı'nın her detayını içermez; resmi rehber değildir
  • Yalnızca Türkçe optimize: İngilizce ve diğer dillerde performans düşer

Sorumlu Kullanım

  • Bu model bilgilendirme amaçlıdır, yatırım tavsiyesi değildir
  • Gerçek bankacılık işlemleri için bankanızın resmi kanallarını kullanın
  • Modelin cevaplarında hassas/kişisel bilgi bulursanız çıktıyı paylaşmadan maskelayin
  • Demo/eğitim senaryoları dışında canlı müşteri hizmetlerinde kullanmadan önce insan doğrulaması ekleyin

🔗 İlgili Kaynaklar

📝 Atıf

Bu modeli kullanırsanız lütfen atıfta bulunun:

@misc{yildiz2025akce,
  author = {Cihat Yıldız},
  title = {Akçe: Qwen2.5-7B LoRA for Turkish Banking Customer Service},
  year = {2025},
  publisher = {Hugging Face},
  howpublished = {\url{https://huggingface.co/cihatyldz/akce-qwen25-7b-lora}}
}

Base model atfı:

@misc{qwen2.5,
  title={Qwen2.5 Technical Report},
  author={Qwen Team},
  year={2024},
  url={https://qwenlm.github.io/blog/qwen2.5/}
}

Geliştirici: @cihatyldz Proje: Akçe 🪙 — Türkçe Bankacılık AI

Made with Unsloth

Downloads last month
1
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for cihatyldz/akce-qwen25-7b-lora

Base model

Qwen/Qwen2.5-7B
Adapter
(50)
this model

Dataset used to train cihatyldz/akce-qwen25-7b-lora