İçeriğe geç
edumintsBlog
LLM3 dk okuma

Kharcha: Banka SMS'lerini Okuyarak Verileri Cihazda Tutan 4B Model

Kaynak: dev.to

Paylaş
İçindekiler 6 başlık

Ne İnşa Edildi?#

Hacktoberfest "Build for a Friend" meydan okuması kapsamında geliştirilen Kharcha (Hintçe "harcama"), banka ve ödeme bildirimlerini doğrudan kullanıcının kendi dizüstü bilgisayarında işleyen açık kaynaklı bir kişisel gider defteridir. Geliştirici, harcamalarını kağıt bir deftere kaydeden ve gelen her banka SMS'ini "bu neydi?" diyerek kendisine ileten annesi için bu çözümü tasarlamıştır. Geleneksel finans uygulamaları telefondaki tüm SMS bildirimlerini okuyup bilinmeyen üçüncü taraf sunuculara gönderdiği için ciddi gizlilik endişeleri yaratır.

Kharcha ise tamamen yerelde çalışır. Kullanıcı bir banka veya UPI SMS'ini yapıştırdığında ya da konuşma diliyle harcama notu girdiğinde ("aaj sabzi wale ko 80 diye"), 4 milyar parametreli açık ağırlıklı model bu metni ayrıştırarak temiz bir satır üretir: kim, ne kadar, hangi hesap, hangi tarih ve hangi kategori. Sistem kullanıcı düzeltmelerinden öğrenir; örneğin "Sharma Kirana" harcamasını bir kez "market" olarak düzelttiğinizde bunu hafızasında saklar. HDFC, SBI, ICICI gibi popüler bankaların formatlarını, Paytm ve GPay bildirimlerini ve yerel konuşma ifadelerini başarıyla anlar.

Demo#

Uygulamanın Render üzerinde çalışan bir demosu bulunmaktadır. Ücretsiz sunucu katmanı 4B boyutundaki bir modeli yerel bellek sınırları nedeniyle doğrudan barındıramadığından, bu demoda Tinker örnekleme API'si üzerinden aynı ince ayarlı (fine-tuned) LoRA bağdaştırıcısı servis edilmektedir. Demoda; gelen SMS ve sesli notların muhasebe satırlarına dönüştüğü, Backboard bellek katmanının düzeltmeleri hatırladığı ve harcamalara yönelik doğal dil sorularının yanıtlandığı gösterilmektedir.

Kod#

Açık kaynak olarak sunulan its-kumar-yash / kharcha deposu, verilerin cihaz dışına çıkmasını engelleyen pratik bir edge-AI mimarisi sunar:

  • Ollama ile Çevrimdışı Çalışma: 4B model yerel donanımda çalışır, finansal veriler asla internete iletilmez.
  • Backboard Bellek Katmanı: Yapılan sınıflandırma düzeltmelerini hatırlar ve harcamalara dair doğal dildeki soruları yanıtlar.
  • Hafif Servis Katmanı: Tek sayfalık minimalist HTML arayüzü ve FastAPI arka ucuyla kaynak tüketimi en aza indirilir.

Nasıl Çalışıyor?#

Sistemin mimarisi, doğal dil girdilerini yapılandırılmış JSON nesnelerine dönüştürme mantığına dayanır:

  • Girdi metni, Qwen3.5-4B temel modeli ve üzerine entegre edilen Kharcha LoRA adaptörüne iletilir.
  • Model; işlem yönü, tutar, karşı taraf, kanal, hesap son 4 hanesi, tarih ve kategoriyi içeren katı bir JSON şeması üretir.
  • Kullanıcı düzeltmeleri Backboard belleğine kaydedilir ve sonraki çıkarımlarda modele bağlamsal ipucu olarak geri beslenir.

Nasıl İnşa Edildi?#

Sistemin çekirdeğini, Tinker üzerinde eğitilen ve yalnızca 146 MB boyutunda dışa aktarılan LoRA adaptörü oluşturur. Küçük bir açık ağırlıklı modelin amaca özel eğitilmesi, yerel donanımlarda düşük kaynakla yüksek doğruluk sağlar.

1. Etiketleme Hatası Olmayan Bir Veri Seti#

Bir hafta sonu projesinde 1.500 SMS'i elle etiketlemek mümkün değildi; bunu büyük bir LLM'e yaptırmak ise modelin halüsinasyonlarını veri setine taşıyacaktı. Geliştirici, bankaların gerçek SMS kalıplarından 26 farklı şablon çıkarıp bunları programatik olarak dolduran bir sentetik veri üreteci yazdı. Kod ile üretilen bu veri seti, sıfır etiketleme hatasıyla küçük modelleri fine-tune etmenin en güvenilir ve ölçeklenebilir mühendislik yöntemlerinden biridir.


Bu konuyu derinlemesine öğrenmek isterseniz: Structured Output ve JSON Modu modülüne göz atın.

Kaynak ve atıf

Bu yazı, dev.to üzerinde yayımlanan içerikten yararlanılarak Edumints tarafından yapay zekâ desteğiyle Türkçe hazırlandı. Ayrıntılar ve yazarların kendi anlatımı için orijinaline bakabilirsin:

  • dev.to/coffeeandcommits/kharcha-a-4b-model-that-reads-indian-bank-sms-so-the-money-stays-on-your-laptop-2n8j