12 KiB
ABAP Danışman Modeli — Yol Haritası
Durum: v21 · 2026-10-05 Şu anki konum: Adım 1.3
Adım 0 — Çerçeve ve kararlar
| Karar | Durum |
|---|---|
| Modelin rolü: teknik ABAP danışmanı, modül bilgisi yok | ✓ |
| Sözleşme: metin olarak ABAP görevi + genel ABAP MCP arayüzü | ✓ (2026-10-02) |
Girdi: plan-agent.md formatı en iyi sonuç veren girdi, zorunlu değil; Kral'ın akışında plan kullanımı değişmez |
✓ (2026-10-02) |
| Tool arayüzü: EPOD isimleri yerine genel ABAP MCP; EPOD native destekleyecek, harness proxy ilk adapter; delete/teardown harness'te | ✓ (2026-10-02) |
| Eğitimde az miktarda tool isim/şema varyasyonu | ✓ (2026-10-02) |
| Ortam: A4H (yazma + doğrulama) | ✓ |
| Mevcut planlar: sadece şablon, eğitim verisi değil | ✓ |
| Eski playbook formatı kullanılmaz | ✓ (2026-10-02) |
| Eğitim verisinde Claude çıktısı yok; eval görevleri eğitim verisine girmez | ✓ (2026-10-02) |
| Lisans: Apache 2.0 | ✓ |
| Baz model: sadece Apache 2.0 veya MIT lisanslı adaylar | ✓ (seçim Adım 2'de) |
| Baz model: Qwen 3.8 27B (Apache 2.0, MLX 4-bit). Aynı gün önce elendi (onarım yok, döngüler, thinking limitinde boş yanıt), Devstral Small 2 denendi (baseline 11 görevde ortalama 6,8). Kral kararıyla Qwen'e dönüldü: zayıflıklar eğitimin hedefi. Devstral kullanılmayacak. Aşama 1 eğitim testi Qwen ile | ✓ (2026-10-04) |
Bitti. ✓
Adım 1 — Eval seti ve harness
Amaç: modeli ölçebilmek. Ölçüm olmadan eğitim kör olur.
| Alt adım | İş | Durum |
|---|---|---|
| 1.1 | Tasarım dokümanı (faz1-tasarim.md) |
✓ v3 |
| 1.2 | Teknik doğrulamalar: MCP tool'ları, A4H release, teardown (ADT deletion API), abaplint + seed tipleri, paralellik (8 oturum) | ✓ |
| 1.3 | Harness iskeleti: setup → run → puan → teardown, T01 ile uçtan uca | ✓ — Mac mini'de; test include ve teardown çözüldü. Baştan koşular: oracle 100, null 0, Qwen (koşu 203) çalışıyor |
| 1.3b | Genel ABAP MCP arayüz spec'i (abap-mcp-arayuz.md) ve harness proxy'sinin bu arayüze çevrilmesi |
Sonra |
| 1.4 | T01–T15: seed, gizli testler, hatalı referans | |
| 1.5 | 110 görevlik set (kategori K dahil: eksik/serbest girdi + farklı tool şeması): üretim + senin incelemen | |
| 1.6 | Ölçüm: aday baz modeller + Claude referansı |
Bitti sayılır: 110 görev, kategori bazında sonuç tablosu.
Hacim tahmini (kaba, 2026-10-02)
İlk ölçümlerle kalibre edilecek (koşu süresi, kabul oranı).
| Aşama | Görev | Koşu | Obje (oluşturulup silinen) | Süre |
|---|---|---|---|---|
| Eval seti (Adım 1) | 110 | 110 / model / mod | ~5–8 / koşu → ~700 / ölçüm | Yerel 27B: 35–50 saat / ölçüm |
| Ölçüm turu (Adım 1.6) | 110 | ~3–4 model × 2 mod + Claude ≈ 900 | ~6 000 | Yerel modeller birkaç hafta; uzak modeller birkaç gün |
| Eğitim verisi (Adım 3) | 1 500–2 000 üretilmiş görev | 4 deneme / görev ≈ 6 000–8 000 | ~40 000–50 000 | Yerel 27B ile ~5 000 saat → yerelde mümkün değil |
| Hedef çıktı (Adım 3) | %40 kabul → ~3 000 yörünge | |||
| RL (Adım 5, opsiyonel) | aynı havuz | on binlerce | yüz binler | Ayrı planlama |
Teacher maliyeti (DeepSeek V4.1 Flash, Ollama cloud): T01'de ölçülen ≈ 0,09 / koşu (liste fiyatı). T01 kolay bir görev; ortalama görev için 0,15–0,20 varsayımı:
| İş | Koşu | Maliyet (liste fiyatı) |
|---|---|---|
| Eval ölçümü, DeepSeek (110 × 2 mod) | 220 | ~35–45 $ |
| Adım 3 (2 000 görev × 2 deneme; T01'deki başarıyla kabul oranı yüksek beklenir) | ~4 000 | ~600–800 $ |
| Toplam (RL hariç) | ~650–850 $ |
Ollama paneli, koşu 204'ün 8 isteği tek tek: 6 × <0,01 , 1 × 0,01 , 1 × 0,03 → **≈ 0,05–0,08 / koşu**. Liste fiyatı tahminine (0,09 $) yakın; Ollama kullanımı liste fiyatına yakın sayıyor. (Ayın toplamındaki düşük ortalama, başka küçük isteklerden geliyor.)
| İş | Koşu / görev | Tahmin |
|---|---|---|
| Pilot (B–E): ~20 görev üretimi + doğrulama + koşular | ~100 istek grubu | ~5–10 $ |
| Eval seti üretimi + ölçüm (110 görev, 2 mod) | ~330 | ~25–40 $ |
| Eğitim görevi üretimi (2 000 görev) | 2 000 | ~100 $ |
| Yörünge üretimi (2 000 × 2 deneme) | ~4 000 | ~400–600 $ |
| Toplam (RL hariç) | ~550–750 $ |
Bütçe: şu an ~50 , her ay +60 . B–F ve eval ölçümü bu bütçeye sığar. Yörünge üretimi aylık 60 ile 7–10 ay sürer; o aşamada ~500–700 ek kredi önerilir. Kesin rakam pilottan sonra.
Karar (2026-10-02): DeepSeek V4.1 Flash (Ollama cloud) teacher ve görev yazarı olarak hemen kullanılıyor.
Sonuçlar:
- Aynı anda A4H'da en fazla ~50 obje olur (6 worker × ~8). Toplam sayı büyük ama birikmez; teardown her koşu sonunda.
- Adım 3 yerel modelle yapılamaz. Teacher model hızlı ve uzakta olmalı (kiralık GPU veya açık lisanslı modelin API'si). O zaman darboğaz A4H olur: 6 worker, koşu başına ~5 dk → saatte ~70 koşu → 8 000 koşu ≈ 5 gün.
- Önek şeması yetmez:
Z<run 3 hane><task 3 hane>_en fazla 999 koşu. Adım 3 öncesi koşu kimliği base36 4 karaktere çıkarılmalı (~1,7 milyon koşu). - Uzun vadede A4H'da izlenecekler: disk (HANA log, versiyon geçmişi, silme logları).
Hızlandırılmış sıra (2026-10-02)
Adım 3 görev ister; görevler el ile yazılırsa darboğaz olur. Bu yüzden ilk iş görev üreteci: hem eval setini (1.5) hem eğitim görevlerini (3.1) aynı hat üretir.
| Sıra | İş | Durum |
|---|---|---|
| A | Önek şeması: koşu 4 karakter base36, görev 3 karakter base36 (Z005P001_) |
✓ |
| B | Harness: FUGR/FUNC, PROG, DDLS desteği (G2 kontrat kontrolü, abaplint dışa aktarımı, silme sırası) | ✓ T13–T15 oracle 100 / null 0. Server eşzamanlılık sorunu bulundu (harness'te retry) |
| C | Görev üreteci: DeepSeek görev yazar (spec, seed, gizli testler, referans + local testler); kategori ve obje tipi dağılımına göre | ✓ harness/generator.py: üretim → yapı + statik kontrol + yerel abaplint → oracle/null doğrulama → en fazla 3 onarım turu. Pilot sonrası iyileştirildi (faz1-tasarim 11e) |
| D | Otomatik görev doğrulama: oracle = 100, null = 0, gizli testler bozuk referansta düşmeli | ✓ oracle/null + mutasyon kontrolü (harness/mutation.py, generator'a bağlı). 26/26 görev geçti (faz1-tasarim 11g) |
| E | Pilot: ~20 görev, tüm obje tipleri; kabul oranı ve gerçek maliyet ölçümü | ✓ 16/20 kabul, 0,16 / kabul edilen görev (faz1-tasarim 11e). Zor parti (5 görev): 5/5 kabul, 0,097 / kabul edilen görev (11f) |
| F | Eval seti: 110 görev; Kral incelemesi. Eğitim havuzu: otomatik doğrulanmış görevler, eval ile çakışmasız | |
| G | Ölçüm (1.6) ve yörünge üretimi (3.2) paralel worker'larla (bulut model: en fazla 6) |
Bütçe takvimi (Ollama cloud, güncelleme 2026-10-03)
Dönem kullanım hakkı 60 (usage). Kral Ollama'ya ayda **20 ödüyor, karşılığında 60 DeepSeek usage** alıyor: gerçek para maliyeti = usage / 3. 2026-10-03 20:15: usage 24,63 (Ollama sayfası), kalan ~35 (12 Ekim'e kadar). Ledger (liste fiyatı) 66,97: usage ≈ ledger / 2,7 (önceki 1,47 oranı yanlıştı). 12 Ekim'de +60 usage, sonra her ay +60. Birim maliyet (usage): DeepSeek koşusu ≈ 0,09 (60 çağrı bütçeli, ortalama); görev üretimi ≈ 0,05 / kabul edilen görev.
Adım 3 tahmini (usage): pilot (300 görev + 600 yörünge) ≈ 70 ; tam ölçek (2 000 görev ≈ 100 , 4 000 yörünge ≈ 360 ) ≈ 460 , yani ~8 aylık hak ya da ~400 ek usage (≈ 135 para). Kesin rakam pilot sonrası. Belirsizlik: oran iki noktadan ölçüldü; kabul oranı ve deneme sayısı pilotta belli olur.
| Dönem | Bütçe | İş | Tahmini harcama |
|---|---|---|---|
| 2–12 Ekim | ~50 $ | C: görev üreteci. D: otomatik doğrulama. E: pilot (20 görev, üretim + DeepSeek koşusu) | ~5 $ |
F: eval seti — ~150 aday görev üret (~20 ), süz, 110 kalsın; her aday 1–2 DeepSeek koşusu (ampirik süzgeç, ~10–20 ) |
~30–40 $ | ||
| Yerel ölçüm (Qwen ve aday baz modeller, ücretsiz, geceleri) | 0 $ | ||
| Yedek | ~15 $ | ||
| 12 Ekim – 12 Kasım | 60 $ | Adım 2: baz model seçimi (yerel ölçüm sonuçlarıyla). Adım 3 pilotu: ~300 eğitim görevi + ~600 yörünge denemesi | ~70 $ (usage) |
Pilot sonucu: gerçek kabul oranı ve maliyet → Adım 3'ün tamamı için ek kredi kararı (tahmin ~400 usage ≈ 135 para) |
|||
| 12 Kasım sonrası | 60 $/ay + ek kredi | Adım 3'ün tamamı, ardından Adım 4 (SFT) |
Kurallar:
- Harness her bulut isteğinin token kullanımını
runs/ledger.jsonl'e yazar (liste fiyatı, cache indirimi olmadan = üst sınır). Dönem harcamasıBUDGET_LIMIT_USD'ye (şu an 135, ledger cinsinden ≈ 50gerçek; oran 2,7, 2026-10-03) ulaşınca yeni üretim veya bulut koşusu başlamaz. ✓ - Eval görevleri ve eğitim görevleri ayrı havuzlar; eval görevleri eğitim verisine girmez.
- Bulut ve yerel model aynı Ollama sunucusunda kuyrukta bekleyebilir; ölçümler sırasında ikisi aynı anda koşturulmaz.
Adım 2 — Baz model seçimi
Durum (2026-10-04, güncel): baz model Qwen 3.8 27B (Kral kararı). Referans baseline Qwen (MacBook, aynı ayarlar, 11 görev): ortalama 15,8; 3 görev 0'dan yüksek (T01 48,3, G0157 51,0, G0185 75,0); ayrıntı docs/stage1-baseline.md. Devstral yalnız karşılaştırma: Devstral denendi ve elendi (11 görev, runs/archive/devstral/): ortalama 6,8 (Qwen 15,8); 1/11 görev 0'dan yüksek (Qwen 3/11); loop 6 (Qwen 7), tool_budget 3, report 2; onarım oranı 0,84. Devstral ağırlıkları silindi; baz model testi yok. Eski kısmi Qwen sonuçları runs/archive/qwen38/ (karşılaştırılamaz).
Adım 1.6 tablosundan seçilir. Aday havuzu: sadece Apache 2.0 veya MIT lisanslı modeller. Kriterler: puan, boyut, Mac mini'de çalışabilirlik.
Bitti sayılır: tek baz model seçildi, gerekçesi yazıldı.
Aşama 1 GPU sonucu ve karar (2026-10-05)
- QLoRA (nf4) aşama 1 koşusu ~418. adımda durduruldu. Valid loss, Mac (MLX 4-bit) / GPU (nf4): adım 200 0,758 (-%10,7) / -%26,0; adım 400 0,735 (-%13,4) / -%35,0; baz Mac 0,849.
- PEFT→MLX dönüştürücü overfit testiyle kanıtlandı (Mac -%98,5). nf4 adaptörü MLX 4-bit baza iyi taşınmıyor.
- Karar: şimdilik GPU koşusu yok. Aşama 1 tek başına eğitilmez; aşama 1 korpusu, aşama 2 yörüngeleri hazır olunca tek bir bf16 LoRA koşusunda karıştırılır. Sonraki GPU koşusu bf16 baz kullanır; öncesinde bf16 bellek testi gerekir. Araç isimleri EPOD ABAP MCP'deki gibi kalır (generic_v0 kullanılmaz). ADT "save failed" yanıtı sunucuda düzeltilemez: proxy sözdizimi kontrolü ekler.
- HF test ve checkpoint repoları silindi; aşama 1 veri seti kaldı.
Adım 3 — Eğitim verisi üretimi
| Alt adım | İş |
|---|---|
| 3.1 | Görev üreteci: eval görevleriyle aynı şemada binlerce sentetik görev. Eval görevleriyle çakışma yok. Girdilerin bir kısmı serbest metin; yörüngelerin az bir kısmı farklı tool isim/şemalarıyla. |
| 3.2 | Yörünge üretimi: açık lisanslı teacher model görevleri A4H'da çözer. |
| 3.3 | Filtre: sadece puan eşiğini geçen yörüngeler kalır. Deduplikasyon. |
| 3.4 | Opsiyonel: izinli lisanslı açık ABAP kodu (continued pretraining için). |
Eğitim verisinde mutlaka olmalı (pilot bulguları, 2026-10-02): modellerin sık yaptığı hatalar için görev ve onarım yörüngeleri.
- Metot parametresinde
TYPE c LENGTH ngeçersiz; adlandırılmış tip (TYPES) gerekir. - Ayrılmış kelime alan adı (HOURS, MODE).
- 30 karakterden uzun isimler (özellikle test metotları).
Bitti sayılır: filtrelenmiş yörünge seti hazır, kategori dağılımı dengeli.
Adım 4 — SFT (LoRA)
| Alt adım | İş |
|---|---|
| 4.1 | Küçük deneme: Mac mini, MLX |
| 4.2 | Gerçek koşu: kiralık GPU |
| 4.3 | Eval: Adım 1 setiyle, baz modelle karşılaştırma |
Bitti sayılır: eğitilmiş model baz modeli anlamlı farkla geçiyor.
Adım 5 — RL (opsiyonel)
SFT hedefe ulaşmazsa. Ödül: harness puanı (syntax, aktivasyon, testler, abaplint, ATC).
Bitti sayılır: hedef çizgi (Claude referansına ≤ 10 puan fark).
Adım 6 — Gerçek iş akışında deneme
/sapplan planı → model build-agent rolünde → gerçek bir görev. Eval'in yakalamadığı sorunlar burada çıkar.
Bitti sayılır: senin seçtiğin gerçek görevlerde kabul edilebilir sonuç.
Adım 7 — Yayın
Ağırlıklar, model kartı, lisans, eval sonuçları, genel ABAP MCP arayüz spec'i. Opsiyonel: harness ve eval seti açık kaynak.
Bitti sayılır: yayınlandı.