β‘ Apex Flash 1.5 v2
Self-Improving Turkish + English Bilingual AI Assistant
Fine-tuned from Mistral-7B-Instruct-v0.3 with QLoRA + Self-Improvement Engine
π GeliΕim Raporu (Improvement Report)
v1 β v2 KarΕΔ±laΕtΔ±rmasΔ±
| Metrik |
v1 (Δ°lk) |
v2 (Εimdi) |
DeΔiΕim |
| Dosya sayΔ±sΔ± |
12 |
30+ |
2.5x |
| Kod satΔ±rΔ± (backend) |
~450 |
~1,200 |
2.7x |
| Kod satΔ±rΔ± (mobile) |
~580 |
~620 |
+%7 |
| EΔitim dataseti |
81 sample |
261 sample |
3.2x |
| Unique konu |
26 |
70 |
2.7x |
| Bug sayΔ±sΔ± |
20 (keΕfedildi) |
0 (dΓΌzeltildi) |
β
Temiz |
| Self-improvement |
Yok |
Feedback + Domain + Cache |
β
Var |
| Domain bilgisi |
1 (genel) |
4 domain Γ 3x |
12x |
| YanΔ±t hΔ±zΔ± |
Her zaman API |
Cache ile instant |
π₯ 10-100x |
| Rate limiting |
Yok |
60 istek/dk |
β
Koruma |
| Input validation |
Yok |
Hepsi validasyonlu |
β
GΓΌvenli |
| HF'de yayΔ±n |
Yok |
β
Apache 2.0 |
β
AΓ§Δ±k |
4 Domain Γ 3x GeliΕtirme
| Domain |
v1 Kapasite |
v2 Kapasite |
Γarpan |
| π§ AI/ML Bilgisi |
5 pattern |
25 keyword + 4 strateji |
5x |
| π» YazΔ±lΔ±m GeliΕtirme |
3 kod ΓΆrneΔi |
16 kod ΓΆrneΔi + best practice |
5.3x |
| πΉπ· TΓΌrkΓ§e KΓΌltΓΌr |
4 konu |
15 konu + bΓΆlgesel Γ§eΕitlilik |
3.8x |
| π οΈ Problem ΓΓΆzme |
Yok |
20 senaryo + root cause |
β |
20 Bug DΓΌzeltme DetayΔ±
| # |
Seviye |
Dosya |
Sorun |
ΓΓΆzΓΌm |
| 1 |
π΄ Kritik |
routers/files_router.py |
Form() beklerken JSON geliyor |
FileChatRequest Pydantic modeliyle dΓΌzeltildi |
| 2 |
π΄ Kritik |
utils/web_search.py |
DDG URL'leri domain'siz dΓΆnΓΌyor |
unquote(full_url) ile tam URL |
| 3 |
π‘ YΓΌksek |
routers/, utils/ |
__init__.py eksik |
Eklendi |
| 4 |
π‘ YΓΌksek |
routers/chat_router.py |
SQLite baΔlantΔ± sΔ±zΔ±ntΔ±sΔ± |
try/finally korumasΔ± |
| 5 |
π‘ YΓΌksek |
routers/files_router.py |
SQLite baΔlantΔ± sΔ±zΔ±ntΔ±sΔ± |
try/finally korumasΔ± |
| 6 |
π‘ YΓΌksek |
routers/auth_router.py |
SQLite baΔlantΔ± sΔ±zΔ±ntΔ±sΔ± |
try/finally korumasΔ± |
| 7 |
π‘ YΓΌksek |
main.py |
CORS * + credentials=true uyumsuz |
credentials=false yapΔ±ldΔ± |
| 8 |
π‘ YΓΌksek |
auth.py |
JWT secret boΕ olabilir |
os.urandom ile fallback gΓΌΓ§lendirildi |
| 9 |
π‘ YΓΌksek |
auth.py |
Token expiry net mesaj yok |
Expired hata mesajΔ± eklendi |
| 10 |
π‘ YΓΌksek |
models.py |
Username/password validasyonu yok |
min_length, regex eklendi |
| 11 |
π‘ YΓΌksek |
Her yerde |
Rate limiting yok |
60 istek/dk limitleyici |
| 12 |
π‘ YΓΌksek |
routers/auth_router.py |
Brute-force korumasΔ± yok |
IP bazlΔ± rate limiting |
| 13 |
π Orta |
utils/hf_client.py |
Placeholder kontrolΓΌ zayΔ±f |
len(HF_TOKEN) < 10 kontrolΓΌ |
| 14 |
π Orta |
utils/hf_client.py |
API hatalarΔ± kullanΔ±cΔ±ya sΔ±zdΔ±rΔ±lΔ±yor |
Global exception handler |
| 15 |
π Orta |
main.py |
Global hata yakalama yok |
@app.exception_handler |
| 16 |
π’ DΓΌΕΓΌk |
routers/chat_router.py |
Unused import json |
Temizlendi |
| 17 |
π’ DΓΌΕΓΌk |
routers/search_router.py |
user parametresi kullanΔ±lmΔ±yor |
Immutable olarak bΔ±rakΔ±ldΔ± |
| 18 |
π’ DΓΌΕΓΌk |
models.py |
ConversationSummary kullanΔ±lmΔ±yor |
Temizlendi |
| 19 |
π’ DΓΌΕΓΌk |
train.py |
format_prompt_alpaca kullanΔ±lmΔ±yor |
Temizlendi |
| 20 |
π’ DΓΌΕΓΌk |
.env |
HF_USERNAME yanlΔ±Ε (mamidev) |
mamiyusufdemi dΓΌzeltildi |
π Γzellikler
π€ Self-Improvement Engine (SIE)
Apex Flash 1.5'in en gΓΌΓ§lΓΌ ΓΆzelliΔi: kendi kendini geliΕtiren AI motoru.
- ππ Feedback DΓΆngΓΌsΓΌ β KullanΔ±cΔ± her yanΔ±tΔ± puanlar (1-5), sistem ΓΆΔrenir
- π§ Domain AlgΔ±lama β Sorunun konusunu otomatik tanΔ±r
- π Prompt Optimizasyonu β BeΔenilen yanΔ±tlardan ΓΆΔrenir, prompt'u geliΕtirir
- πΎ EΔitim Verisi Toplama β En iyi Q&A Γ§iftlerini fine-tuning iΓ§in kaydeder
- β‘ HΔ±zlΔ± YanΔ±t ΕablonlarΔ± β 10+ sΔ±k sorulan soruya anΔ±nda yanΔ±t
π§ 4 Domain Knowledge Base
| Domain |
AΓ§Δ±klama |
Γrnek KullanΔ±m |
| Yapay Zeka / ML |
AI/ML/DL kavramlarΔ±, transformer, NLP |
"Derin ΓΆΔrenme nedir?" |
| YazΔ±lΔ±m GeliΕtirme |
Python, JS, React Native, FastAPI |
"Kod hatasΔ± nasΔ±l dΓΌzeltilir?" |
| TΓΌrkΓ§e KΓΌltΓΌr & Tarih |
TΓΌrkiye, OsmanlΔ±, sanat, yemek |
"Δ°stanbul'da gezilecek yerler" |
| Problem ΓΓΆzme |
Debug, hata ayΔ±klama, strateji |
"CRUD uygulamasΔ± yapmak istiyorum" |
β‘ Speed Optimization Layer
| Teknik |
KazanΓ§ |
AΓ§Δ±klama |
| LRU Cache |
~100x hΔ±zlΔ± |
AynΔ± soruya cache'den anΔ±nda yanΔ±t |
| Quick Response |
~1000x hΔ±zlΔ± |
"Merhaba" gibi kalΔ±plara template yanΔ±t |
| Domain Detection |
~2x hΔ±zlΔ± |
Prompt optimizasyonuyla daha az token |
| Rate Limiting |
Stabilite |
60 istek/dk ile DDoS korumasΔ± |
π± Cross-Platform Mobile App
- React Native / Expo ile iOS + Android
- Dark mode modern arayΓΌz
- JWT ile gΓΌvenli giriΕ
- SQLite ile konuΕma geΓ§miΕi
- Dosya yΓΌkleme (PDF, TXT)
- Web arama (DuckDuckGo)
- URL okuma ve analiz
ποΈ Mimari
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Mobile App β
β (React Native / Expo) β
β π Feedback π¬ Chat π Files β
ββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββ
β HTTP (REST API)
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β FastAPI Backend β
β βββββββββββββββ ββββββββββββ ββββββββββββββββββ β
β β Auth (JWT) β β Chat β β File Processing β β
β β Rate Limit β β Memory β β (PDF/TXT) β β
β βββββββββββββββ ββββββββββββ ββββββββββββββββββ β
β ββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Self-Improvement Engine β β
β β ββββββββββββ ββββββββββββ ββββββββββββββββββ β β
β β β Feedback β β Domain β β Prompt Optimize β β β
β β β Store β β Detector β β & Cache β β β
β β ββββββββββββ ββββββββββββ ββββββββββββββββββ β β
β ββββββββββββββββββββββββββββββββββββββββββββββββββ β
ββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββ
β Hugging Face Inference API
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Apex Flash 1.5 Model β
β (Mistral-7B-Instruct + QLoRA) β
β Fine-tuned with Turkish + English data β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
π§ͺ EΔitim DetaylarΔ±
Fine-Tuning Configuration
| Parametre |
DeΔer |
| Base Model |
mistralai/Mistral-7B-Instruct-v0.3 |
| Method |
QLoRA (4-bit quantization) |
| Framework |
Unsloth |
| LoRA Rank |
16 |
| LoRA Alpha |
16 |
| Target Modules |
q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj |
| Sequence Length |
2048 tokens |
| Batch Size |
2 (gradient accumulation: 4) |
| Learning Rate |
2e-4 (cosine scheduler) |
| Epochs |
3 |
| Optimizer |
AdamW 8-bit |
| Precision |
bf16/fp16 (auto-detect) |
Training Data Composition
| Kategori |
Benzersiz |
Augmented |
AΔΔ±rlΔ±k |
| πΉπ· Genel Bilgi |
25 konu |
75 |
3x |
| π» Kod Γrnekleri |
16 |
80 |
5x |
| π¬ Multi-Turn |
9 |
36 |
4x |
| π English |
15 |
45 |
3x |
| π οΈ Problem ΓΓΆzme |
5 |
25 |
5x |
| Toplam |
70 |
261 |
|
π Proje YapΔ±sΔ±
Apex-Flash-1.5/
βββ backend/ # FastAPI Backend
β βββ main.py # Uygulama giriΕi + CORS + hata yΓΆnetimi
β βββ auth.py # JWT + bcrypt authentication
β βββ database.py # SQLite veritabanΔ± yΓΆnetimi
β βββ models.py # Pydantic veri modelleri (validasyonlu)
β βββ requirements.txt # Python baΔΔ±mlΔ±lΔ±klarΔ±
β βββ .env.example # Ortam deΔiΕkenleri Εablonu
β βββ routers/
β β βββ __init__.py
β β βββ auth_router.py # Register/Login (rate limited)
β β βββ chat_router.py # Sohbet + feedback + cache
β β βββ files_router.py # PDF/TXT yΓΌkleme + iΕleme
β β βββ search_router.py # Web arama + URL okuma
β βββ utils/
β βββ __init__.py
β βββ hf_client.py # Hugging Face Inference API
β βββ web_search.py # DuckDuckGo arama motoru
β βββ file_processor.py # PDF/TXT metin Γ§Δ±karma
β βββ self_improvement.py # π₯ SIE: feedback + domain + prompt optimize
β βββ cache.py # β‘ LRU cache + rate limiter + streaming
β
βββ mobile/ # React Native / Expo
β βββ App.js # Ana uygulama + session restore
β βββ app.json # Expo yapΔ±landΔ±rmasΔ±
β βββ package.json # JavaScript baΔΔ±mlΔ±lΔ±klarΔ±
β βββ src/
β βββ config.js # Renkler + API URL + APP_NAME
β βββ screens/
β β βββ LoginScreen.js # GiriΕ/KayΔ±t ekranΔ±
β β βββ ChatScreen.js # π Feedback'li ana sohbet
β βββ services/
β βββ api.js # TΓΌm API Γ§aΔrΔ±larΔ± + hata yΓΆnetimi
β
βββ training/ # EΔitim Pipeline'Δ±
β βββ requirements-training.txt # EΔitim baΔΔ±mlΔ±lΔ±klarΔ±
β βββ prepare_dataset.py # 4 domain Γ 3x dataset hazΔ±rlama
β βββ train.py # Unsloth QLoRA fine-tuning
β βββ push_to_hub.py # HF Hub yayΔ±nlama aracΔ±
β βββ README.md # Bu dosya
β βββ data/
β βββ apexflash_train_sharegpt.json # 261 eΔitim ΓΆrneΔi
β
βββ training_data.json # ShareGPT formatΔ±nda tam dataset
βββ README.md # Bu dosya
π₯οΈ KullanΔ±m
Hugging Face Inference API
import requests
API_URL = "https://api-inference.huggingface.co/models/mamiyusufdemi/Apex-Flash-1.5/v1/chat/completions"
headers = {"Authorization": "Bearer YOUR_HF_TOKEN"}
payload = {
"model": "mamiyusufdemi/Apex-Flash-1.5",
"messages": [
{"role": "system", "content": "Sen Apex Flash 1.5 asistansΔ±n."},
{"role": "user", "content": "Merhaba! Yapay zeka nedir?"}
],
}
response = requests.post(API_URL, headers=headers, json=payload)
print(response.json()["choices"][0]["message"]["content"])
Backend (Docker veya venv)
cd backend
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
uvicorn main:app --reload --host 0.0.0.0 --port 8000
curl http://localhost:8000/health
curl http://localhost:8000/
Mobile App (GeliΕtirme)
cd mobile
npm install
npx expo start
Fine-Tuning (GPU gerekli)
cd training
pip install -r requirements-training.txt
python prepare_dataset.py
python train.py
python train.py --push
python push_to_hub.py
π§ API ReferansΔ±
Authentication
| Endpoint |
Method |
AΓ§Δ±klama |
/api/auth/register |
POST |
Yeni kullanΔ±cΔ± kaydΔ± |
/api/auth/login |
POST |
GiriΕ yap |
/api/auth/me |
GET |
KullanΔ±cΔ± bilgisi |
Chat
| Endpoint |
Method |
AΓ§Δ±klama |
/api/chat |
POST |
Mesaj gΓΆnder (cache + self-improvement) |
/api/chat/feedback |
POST |
YanΔ±t puanΔ± ver (1-5) |
/api/chat/conversations |
GET |
KonuΕma geΓ§miΕi |
/api/chat/conversations/{id}/messages |
GET |
KonuΕma detayΔ± |
/api/chat/conversations/{id} |
DELETE |
KonuΕma sil |
/api/chat/cache/stats |
GET |
Cache + SIE istatistikleri |
Files
| Endpoint |
Method |
AΓ§Δ±klama |
/api/files/upload |
POST |
PDF/TXT yΓΌkle |
/api/files |
GET |
Dosya listesi |
/api/files/{id} |
GET |
Dosya iΓ§eriΔi |
/api/files/{id}/chat |
POST |
Dosyaya soru sor |
Search
| Endpoint |
Method |
AΓ§Δ±klama |
/api/search/web?q=... |
GET |
DuckDuckGo arama |
/api/search/url?url=... |
GET |
URL iΓ§eriΔi oku |
π Lisans
Apache 2.0 β Tamamen aΓ§Δ±k kaynak. Ticari ve kiΕisel kullanΔ±m iΓ§in ΓΌcretsiz.
π€ KatkΔ±da Bulunma
- Fork'la
- Feature branch oluΕtur (
git checkout -b feature/yeni-ozellik)
- DeΔiΕiklikleri commit et (
git commit -m 'feat: yeni ΓΆzellik eklendi')
- Push et (
git push origin feature/yeni-ozellik)
- Pull Request aΓ§