Logo
Başla

Yapay Zeka (AI) Modülü

Sohbet ve Görüntü Oluşturma uygulamalarını bir "öğrenme portalı" mantığıyla geliştirin.

Yapay Zeka (AI) modülü, ChatGPT benzeri arayüzler ve Görsel Üreticiler oluşturmak için uyarlanmış, Vercel AI SDK ile önceden yapılandırılmış olarak gelir. Bu rehberde, sistemi nasıl özelleştireceğinizi ve Empire özelliklerini nasıl kullanacağınızı öğreneceksiniz.

Prompt Şablon Yöneticisi

Kullanıcıların sistem promptlarını merkezi bir noktadan yönetmek, tutarlılık ve kolay bakım sağlar. RapidCore AI modülü, promptlarınızı apps/ai-starter/src/lib/prompts.ts dosyasında organize etmenizi önerir.

Örnek Şablon Oluşturma

Sistem promptlarınızı şu şekilde yapılandırabilirsiniz:

// apps/ai-starter/src/lib/prompts.ts

export const SYSTEM_PROMPTS = {
  CONSULTANT: "Sen RapidCore için uzman bir SaaS danışmanısın. Kullanıcılara teknik mimari konusunda yol gösteriyorsun.",
  BLOG_WRITER: "Sen yaratıcı bir içerik yazarısın. SEO uyumlu ve ilgi çekici blog yazıları hazırlıyorsun.",
};

Bu şablonları API rotalarınızda (api/ai/chat/route.ts) kolayca içe aktarıp kullanabilirsiniz.

Eğitim Notu

Promptlarınızı sabit değişkenler olarak saklamak, farklı modeller (GPT-4, Claude vb.) arasında geçiş yaparken aynı talimatların korunmasını sağlar ve "prompt drift" riskini azaltır.

Vektör DB & RAG Teknik Rehberi

AI modellerinin sadece genel bilgilerle değil, sizin özel verilerinizle (dokümanlar, ürün listeleri vb.) konuşmasını sağlamak için Retrieval-Augmented Generation (RAG) kullanılır.

Supabase pgvector Kurulumu

  1. Supabase paneline gidin ve SQL Editor üzerinden pgvector eklentisini aktif edin:

    create extension vector;
    
  2. Dokümanlarınızı saklamak için bir tablo oluşturun:

    create table documents (
      id bigserial primary key,
      content text,
      embedding vector(1536) -- OpenAI embeddings için 1536 boyut
    );
    

Doküman Embed Etme (Embedding)

Yeni bir doküman eklendiğinde OpenAI text-embedding-3-small modelini kullanarak içeriği vektöre dönüştürüp kaydedebilirsiniz. RapidCore, bu işlemi kolaylaştıran vector-utils.ts yardımcılarını içerir.

Token ve Kredi Takibi Mekanizması

Yüksek maliyetli AI işlemlerini kontrol altında tutmak için RapidCore gelişmiş bir kredi sistemi sunar.

Token Limitleri Belirleme

Kullanıcı bazlı limitler apps/ai-starter/src/actions/ai-credits.ts içinde yönetilir. Kullanıcının abonelik planına göre (Starter, Pro, Empire) günlük veya aylık token limitleri set edebilirsiniz:

const PLAN_LIMITS = {
  STARTER: 100,
  PRO: 500,
  EMPIRE: "unlimited" // Sınırsız erişim
};

Kredi Satın Alma Döngüsü

Kullanıcı kredisini bitirdiğinde, Stripe Checkout üzerinden yeni kredi paketleri satın alabilir. Başarılı ödeme sonrası Stripe Webhook (api/webhooks/stripe/route.ts) tetiklenir ve kullanıcının veritabanındaki credits alanı anında güncellenir.

AI Agents & Fine-tuning (Empire Özel)

Empire paketi, karmaşık iş akışlarını otomatize eden AI Agent mimarisini içerir.

Çoklu Model Zincirleme (Chaining)

Örneğin bir "Blog Yazarı Agent" şu aşamalardan geçer:

  1. Araştırmacı Modeli: Konu hakkında anahtar kelimeler ve kaynaklar toplar.
  2. Yazar Modeli: Toplanan verilerle ilk taslağı oluşturur.
  3. Editör Modeli: Dil, imla ve SEO kontrolü yapar.

Fine-tuning Süreçleri

Özel veri setlerinizle modelleri daha yetenekli hale getirmek için:

  • Veri Toplama: Kullanıcı geri bildirimlerini ve başarılı çıktıları jsonl formatında biriktirin.
  • Export: Verileri OpenAI veya Anthropic paneline uygun formatta tek tıkla dışa aktarın.

Hata Ayıklama (SSS)

1. "Invalid API Key" Hatası

.env dosyanızdaki OPENAI_API_KEY veya ANTHROPIC_API_KEY değişkenlerinin doğru set edildiğinden emin olun. Boşluk bırakmadığınızı kontrol edin.

2. Vercel Timeout Sorunları

Vercel Hobby planında fonksiyon süresi 10 saniye ile sınırlıdır. Uzun süren AI yanıtları için streaming: true modunu kullandığınızdan emin olun veya Vercel Pro'ya geçiş yapın.

3. Rate Limit Aşımı (429)

Çok sık istek atıldığında "429 Too Many Requests" alabilirsiniz. Bu durumda API sağlayıcısı panelinden limitlerinizi artırmalı veya istekler arasına kuyruklama eklemelisiniz.

İpucu

Lokal geliştirmede NEXT_PUBLIC_DEBUG_AI=true bayrağını kullanarak tüm prompt/cevap trafiğini tarayıcı konsolunda görebilirsiniz.