📊 Blog AI Draft & Generation Sorun Analizi

Tarih: 16 Kasım 2025 | Tenant: ixtif.com (ID: 2)

📋 Yapılacaklar & Çözüm
🔍 Detaylı Analiz
✅ Yapılanlar

🎯 Ana Sorun

KRİTİK Blog AI draft generation ve blog yazma sistemi çalışmıyor.

Tespit Edilen Sorunlar:

  • Draft Generation: Karmaşık prompt nedeniyle OpenAI yanıt formatı hatalı (nested JSON)
  • Blog Generation: Karmaşık prompt OpenAI'dan boş response döndürüyor (0 token)
  • API Key: İlk başta geçersiz key vardı → Yeni key ile düzeltildi
  • Görsel Üretimi: Maliyet kontrolü için geçici olarak devre dışı bırakıldı

🔧 Çözüm Planı

1. Draft Generation Prompt Basitleştirme

Mevcut Prompt Boyutu
9.4 KB

Strateji:

  • Karmaşık nested JSON yapısını düz JSON array'e çevir
  • Gereksiz detayları (Schema markup, görsel prompts vb.) kaldır
  • Sadece gerekli alanları iste: topic_keyword, meta_description, seo_keywords, outline
  • Prompt boyutunu ~2-3 KB'a düşür

2. Blog Content Generation Prompt Basitleştirme

Mevcut Prompt Boyutu
8.6 KB

Strateji:

  • Firma bilgisi kurallarını basitleştir
  • SEO teknik detaylarını azalt
  • Direkt HTML içerik istemeye odaklan
  • Prompt boyutunu ~3-4 KB'a düşür

3. OpenAI Model Optimizasyonu

Mevcut: gpt-4o-mini (ucuz ama bazen yavaş)

Alternatifler:

  • gpt-4o: Daha hızlı, daha pahalı ($0.0025/1K input, $0.010/1K output)
  • gpt-4o-mini: Mevcut (en ucuz ama bazen timeout)

4. Görsel Üretimi Kontrolü

TAMAMLANDI Görsel üretimi geçici olarak disable edildi.

Malzeme üretimi önce deneme modunda:

  • Draft + Blog yazma çalışsın
  • Maliyet kontrol altında olsun
  • Sonra görsel üretimini aktif et

📊 Maliyet Analizi (15 Kasım)

İşlem Miktar Birim Fiyat Toplam
DALL-E 3 Görsel (HD 1024x1024) 25 adet $0.080 $2.00
GPT-4o Blog İçerik (~122K token) 35 işlem ~$0.022/işlem $0.76
TOPLAM: ~$2.76

$10 krediden ~$7 kaldı - Normal kullanım, hata/loop YOK!

✅ Aksiyon Adımları

1. Basit Draft Prompt Oluştur

Yeni dosya: readme/blog-prompt/1-blog-taslak-SIMPLE.md

  • Sadece gerekli alanlar
  • Düz JSON array formatı
  • ~2KB boyut
2. Basit Blog Yazma Prompt Oluştur

Yeni dosya: readme/blog-prompt/2-blog-yazdirma-SIMPLE.md

  • Firma bilgisi kuralları basit
  • HTML içerik odaklı
  • ~3KB boyut
3. Tenant2Prompts.php Güncelle

SIMPLE prompt'ları kullanacak şekilde ayarla

4. Test: 2 Draft Üret

Basit prompt ile draft generation test

5. Test: 1 Blog Yaz

Basit prompt ile blog generation test

6. Horizon Queue Test

Queue sisteminde çalışıyor mu kontrol et

7. Batch Test: 5 Draft → 5 Blog

Toplu işlem testi

8. Görsel Üretimi Aktif Et

Tüm sistem çalıştıktan sonra

🔍 Detaylı Teknik Analiz

Problem 1: Draft Generation - Nested JSON

HATA

Belirti: OpenAI response parse edilemiyor

❌ JSON parse error: No error
Error: AI response is not an array

Neden:

  • Mevcut prompt karmaşık nested JSON istiyor
  • OpenAI farklı format döndürüyor
  • BlogAIDraftGenerator::normalizeAIResponse() handle edemiyor

Örnek OpenAI Response:

{
    "1": {
        "SEO_Meta_Bilgileri": {...},
        "Schema.org_Yapılandırılmış_Veriler": {...},
        "Blog_Anahattı": {...}
    }
}

Beklenen Format:

[
    {
        "topic_keyword": "...",
        "meta_description": "...",
        "seo_keywords": [...],
        "outline": {...}
    }
]

Problem 2: Blog Generation - Boş Response

KRİTİK

Belirti: OpenAI 0 token, boş string döndürüyor

⚡ OpenAI yanıt alındı
response_length: 0
total_tokens: 0
response_preview: ""

Neden:

  • Blog yazma prompt'u çok uzun (8.6 KB)
  • OpenAI content filter veya limit'e takılıyor
  • GPT-4o-mini bazen timeout oluyor

Test Sonucu: Basit prompt (500 karakter) ile 3.6KB HTML döndü → Prompt sorunu!

Problem 3: API Key & Quota

ÇÖZÜLDÜ

Başlangıç: Invalid API key (401 error)

Çözüm: Yeni key alındı ve .env + database güncellendi

Quota: $10 kredi var, ~$7 kaldı (normal kullanım)

📈 Performans Metrikleri

Başarılı Test: Basit Prompt

Metrik Draft Generation Blog Generation
Response Time ~5 saniye ~8 saniye
Response Length 1.5 KB (2 draft) 3.6 KB (HTML)
Token Usage ~500 token ~1200 token
Success Rate 100% 100%

Başarısız Test: Karmaşık Prompt

Metrik Draft Generation Blog Generation
Response Time ~10 saniye ~120+ saniye (timeout)
Response Length 4.2 KB (hatalı format) 0 KB (boş)
Token Usage ~1000 token 0 token
Success Rate 0% 0%

✅ Tamamlanan İşlemler

API key'i .env dosyasına güncellendi
Database'deki AI provider kaydı güncellendi
Görsel üretimi geçici olarak disable edildi (maliyet kontrolü)
OpenAI API test edildi - çalışıyor
Basit prompt ile 2 draft başarıyla oluşturuldu
Basit prompt ile blog HTML içeriği başarıyla üretildi
Maliyet analizi yapıldı - $10'dan ~$7 kaldı (normal)
Sorun kaynağı tespit edildi: Karmaşık prompt'lar
Çözüm stratejisi belirlendi: Basit prompt'lar oluştur
Detaylı HTML analiz raporu oluşturuldu