alibayram's picture
Add model existence check functionality in API and data manager, enhance model submission UI with validation and error handling. Update README and requirements for new dependencies.
55b8d5d
---
title: Turkish Mmlu Leaderboard
emoji: 🥇
colorFrom: green
colorTo: indigo
sdk: gradio
app_file: app.py
pinned: true
license: cc-by-nc-4.0
short_description: Leaderboard showcasing Turkish MMLU dataset results.
---
# 🏆 Türkçe MMLU Liderlik Tablosu
Yapay zeka modellerinin Türkçe dil görevlerindeki kapsamlı değerlendirmesi ve performans karşılaştırması için modern bir web uygulaması.
## ✨ Özellikler
### 📊 Liderlik Tablosu
- Model performanslarının kapsamlı sıralaması
- Aile ve kuantalama seviyesine göre filtreleme
- Gerçek zamanlı skor güncellemeleri
- Etkileşimli ve responsive tablo görünümü
### 🔍 Model Cevapları
- 6.200+ soru ve model cevabını göz atma
- Gelişmiş arama ve filtreleme seçenekleri
- Sayfalama ile hızlı navigasyon
- Çoklu model karşılaştırması
### 📈 Performans Analitikleri
- Bölüm bazında detaylı performans grafikleri
- Etkileşimli Plotly görselleştirmeleri
- Model karşılaştırmaları
- İstatistiksel özetler
### ➕ Model Gönderimi
- **🔍 Ollama Model Doğrulama**: Model önce Ollama kütüphanesinde doğrulanır
- **📊 RAM Gereksinim Analizi**: 16-bit, 8-bit ve 4-bit quantization için RAM hesaplaması
- **✅ Otomatik Uyumluluk Kontrolü**: 20GB RAM limiti kontrolü
- **🎯 Önerilen Quantization**: En uygun quantization seviyesi önerisi
- **🏷️ Mevcut Etiketler**: Model için kullanılabilir tüm versiyonlar
- Yeni model kayıt formu
- Detaylı doğrulama kontrolü
- Model türü ve hassasiyet seçenekleri
- Otomatik değerlendirme kuyruğu entegrasyonu
## 🚀 Kurulum
### Gereksinimler
- Python 3.8+
- Pip paket yöneticisi
### Hızlı Başlangıç
1. **Repoyu klonlayın**
```bash
git clone <repository-url>
cd turkish_mmlu_leaderboard
```
2. **Bağımlılıkları yükleyin**
```bash
pip install -r requirements.txt
```
3. **Uygulamayı çalıştırın**
```bash
python app.py
```
4. **Tarayıcınızda açın**
```
http://localhost:7860
```
## 📁 Proje Yapısı
```
turkish_mmlu_leaderboard/
├── app.py # Ana uygulama dosyası (Türkçe arayüz)
├── config.py # Yapılandırma ayarları (Türkçe etiketler)
├── data_manager.py # Veri yönetimi ve önbellekleme
├── model_validator.py # Ollama model doğrulama servisi
├── utils.py # Yardımcı fonksiyonlar (Türkçe mesajlar)
├── requirements.txt # Python bağımlılıkları
├── Dockerfile # Docker yapılandırması
└── README.md # Bu dosya
```
### Yeni Bağımlılıklar
Model doğrulama özelliği için eklenen bağımlılıklar:
- **beautifulsoup4**: HTML parsing için Ollama sayfalarını analiz etmek üzere
- **requests**: HTTP istekleri için Ollama API'sine erişim
## 🎨 Arayüz Özellikleri
### Modern Tasarım
- **Temiz ve minimal görünüm**: Kullanıcı dostu arayüz tasarımı
- **Responsive design**: Tüm cihazlarda uyumlu görüntüleme
- **Gradient efektler**: Modern görsel öğeler
- **Hover animasyonları**: Etkileşimli buton ve tablo efektleri
### Türkçe Yerelleştirme
- **Tam Türkçe arayüz**: Tüm menüler, butonlar ve mesajlar Türkçe
- **Türkçe hata mesajları**: Anlaşılır hata açıklamaları
- **Türkçe veri etiketleri**: Tablo başlıkları ve sütun adları
- **Türkçe durum mesajları**: Sistem bilgilendirmeleri
### Gelişmiş Özellikler
- **Gerçek zamanlı veri güncellemesi**: Otomatik yenileme
- **Önbellekleme sistemi**: Hızlı veri erişimi
- **Thread-safe işlemler**: Güvenilir veri yönetimi
- **Hata toleransı**: Robust hata işleme
## 📊 Veri Kaynakları
Uygulama aşağıdaki Hugging Face veri kümelerini kullanır:
1. **Liderlik Tablosu**: `alibayram/yapay_zeka_turkce_mmlu_liderlik_tablosu`
2. **Model Cevapları**: `alibayram/yapay_zeka_turkce_mmlu_model_cevaplari`
3. **Bölüm Sonuçları**: `alibayram/yapay_zeka_turkce_mmlu_bolum_sonuclari`
## 🔧 Yapılandırma
### Temel Ayarlar
```python
# config.py içinde
SERVER_PORT = 7860
REFRESH_INTERVAL = 1800 # 30 dakika
CACHE_TIMEOUT = 3600 # 1 saat
```
### UI Özelleştirme
- CSS stilleri `config.py` dosyasında tanımlanmıştır
- Renk şemaları ve gradient efektler özelleştirilebilir
- Responsif breakpoint'ler mobil uyumluluk için ayarlanmıştır
## 🚀 Docker ile Çalıştırma
```bash
# Docker image oluştur
docker build -t turkish-mmlu-leaderboard .
# Konteyner çalıştır
docker run -p 7860:7860 turkish-mmlu-leaderboard
```
## 🔄 Güncellemeler ve Yenilemeye
### Otomatik Yenileme
- Veriler her 30 dakikada bir otomatik güncellenir
- Arkaplan görevleri scheduler ile yönetilir
- Hata durumunda fallback verileri kullanılır
### Manuel Yenileme
- "Yenile" butonları ile anlık güncelleme
- Cache temizleme seçenekleri
- Veri durumu görüntüleme
## 🛠️ Geliştirme
### Kod Yapısı
- **Modüler tasarım**: Her bileşen ayrı dosyada
- **Type hints**: Python 3.8+ tip belirteçleri
- **Logging**: Kapsamlı hata takibi
- **Error handling**: Graceful hata yönetimi
### Katkıda Bulunma
1. Fork yapın
2. Feature branch oluşturun (`git checkout -b feature/yeni-ozellik`)
3. Değişikliklerinizi commit edin (`git commit -am 'Yeni özellik eklendi'`)
4. Branch'i push edin (`git push origin feature/yeni-ozellik`)
5. Pull Request açın
## 📝 Çeviri Notları
Bu uygulama tamamen Türkçe'ye çevrilmiştir:
### Çevrilen Bileşenler
- ✅ Tüm UI etiketleri ve butonlar
- ✅ Hata mesajları ve uyarılar
- ✅ Tablo başlıkları ve sütun adları
- ✅ Form alanları ve placeholder metinleri
- ✅ Durum mesajları ve bildirimler
- ✅ Tooltip'ler ve yardım metinleri
- ✅ Log mesajları ve debugging bilgileri
### Korunun Öğeler
- Model isimleri (orijinal haliyle)
- Teknik parametreler (precision, quantization)
- Dataset path'leri ve URL'ler
- CSS class isimleri ve JS fonksiyonları
## 🐛 Sorun Giderme
### Yaygın Sorunlar
1. **Uygulama başlatılamıyor**
```bash
# Bağımlılıkları kontrol edin
pip install -r requirements.txt
# Port çakışması kontrolü
lsof -i :7860
```
2. **Veri yüklenmiyor**
- İnternet bağlantınızı kontrol edin
- Hugging Face erişiminizi doğrulayın
- Cache klasörü izinlerini kontrol edin
3. **Yavaş performans**
- Cache ayarlarını kontrol edin
- Page size değerlerini azaltın
- Browser cache'ini temizleyin
## 📄 Lisans
Bu proje MIT lisansı altında lisanslanmıştır. Detaylar için LICENSE dosyasına bakın.
## 👨‍💻 Geliştirici
**Ali Bayram**
- GitHub: [@alibayram](https://github.com/alibayram)
- Hugging Face: [@alibayram](https://huggingface.co/alibayram)
## 🙏 Teşekkürler
- Hugging Face ekibine veri hosting için
- Gradio ekibine harika UI framework için
- Türkçe NLP topluluğuna katkıları için
---
**Not**: Bu uygulama sürekli geliştirme altındadır. Geri bildirimleriniz ve katkılarınız çok değerlidir!