← Projects

Project

FootballRagTR — On-Device RAG Asistanı

GitHub repository ↗

Proje Özeti

FootballRagTR, hiçbir bulut API’sine veya harici internet bağlantısına ihtiyaç duymadan %100 çevrimdışı (offline) ve doğrudan yerel donanım üzerinde (On-Device) çalışan bir Retrieval-Augmented Generation (RAG) yapay zekâ asistanıdır.

Sistem; A Milli Futbol Takımı’nın 2015–2025 yılları arasındaki turnuva serüvenleri (EURO 2016/2020/2024), teknik direktör dönemleri, kadroları ve başarıları hakkındaki soruları, doğrulanmış yerel bilgi tabanından referans göstererek yanıtlar.


Çözülen Problem ve Motivasyon

Geleneksel LLM uygulamaları genellikle pahalı bulut API’lerine (OpenAI, Claude vb.), sürekli internet bağlantısına bağımlıdır ve özel verilerin gizliliği konusunda risk taşır. Ayrıca genel amaçlı yapay zekâ modelleri spesifik alanlarda (halüsinasyon riski nedeniyle) yanlış bilgi üretebilir.

Bu projede:

  • %100 Yerel ve Gizli: Model inferansı ve arama motoru tamamen kullanıcı makinesinde (GPU/NPU/CPU) çalıştırıldı; sıfır dış ağ çağrısı sağlandı.
  • Halüsinasyonsuz Doğruluk (RAG): Yanıtlar, SQLite üzerinde saklanan doğrulanmış döküman parçacıklarına (chunks) ve TF-IDF kosinüs benzerlik aramasına dayandırıldı.
  • Kaynak Doğrulama: Üretilen her yanıtın hangi dökümanlardan beslendiği ve alaka düzeyi skoru kullanıcıya şeffaf olarak sunuldu.

Sistem Mimarisi ve Katmanlar

Uygulama, uçtan uca tek bir makinede çalışan 4 ana katmandan oluşur:

  1. İstemci (Client): React 19, Vite, Tailwind CSS ve shadcn/ui ile geliştirilmiş modern, mobil uyumlu, açık/koyu tema destekli sohbet arayüzü.
  2. Sunucu & Orkestrasyon (Server): Gelen sorguyu işleyen, bilgi tabanında kosinüs benzerliği araması yapan ve yanıtları Server-Sent Events (SSE) ile gerçek zamanlı (streaming) olarak arayüze aktaran Node.js / Express hattı.
  3. Veri Katmanı (Data Layer): Metinleri kayan pencere (sliding window) algoritmasıyla parçalayan (chunking) ve TF-IDF vektörleriyle birlikte saklayan SQLite veritabanı.
  4. Yapay Zekâ Katmanı (On-Device AI): Microsoft Foundry Local SDK ve Phi-3.5 Mini Instruct modeli ile donanım hızlandırmalı yerel inferans.

Öne Çıkan Özellikler

  • Canlı Döküman Yükleme: Arayüz üzerinden yeni .md veya .txt dosyaları yüklenip anında indekslenerek bilgi tabanına eklenebilir.
  • Kaynak Referansı (Citations): Modelin cevabı verirken yararlandığı kaynak paragraflar akordiyon menüde alaka puanıyla gösterilir.
  • Edge / Compact Mod: Düşük donanımlı cihazlarda daha hızlı ve kısa yanıtlar üretilmesini sağlayan donanım modu.

📊 Mimari Akış Özeti

KatmanTeknoloji / ModelRolü
Arayüz (UI)React 19, Tailwind CSS, shadcn/uiSohbet arayüzü, döküman yönetimi, kaynak görüntüleme
API & StreamingNode.js, Express, SSE (Server-Sent Events)RAG arama orkestrasyonu, gerçek zamanlı token akışı
Vektör & DepolamaSQLite + TF-IDF Kosinüs BenzerliğiKayan pencereli döküman parçalama ve anlamsal eşleme
Yerel AI MotoruMicrosoft Foundry Local + Phi-3.5 MiniCihaz üstünde (On-Device) çevrimdışı dil modeli inferansı