AI Agent'lar ve Zamanlanmış Görevler: Statik Otomasyondan Otonom Karar Mekanizmalarına

3 min read | Edit on GitHub

Bir önceki yazımızda, zamanlanmış görevlerin (Scheduled Tasks) temelini oluşturan Scheduler-Queue-Worker üçlüsünü ve bu sistemlerin arka planda nasıl kusursuz bir saat gibi işlediğini incelemiştik. Ancak geleneksel sistemlerde bir sorun vardır: Kod statiktir. Eğer bir görev “her sabah saat 09:00’da veritabanını temizle” diyorsa, sistem sadece bunu yapar. Beklenmedik bir durumla karşılaştığında veya karara dayalı bir analiz gerektiğinde geleneksel worker’lar yetersiz kalır.

İşte bu noktada devreye AI Agent’lar giriyor. Bu yazıda, klasik zamanlanmış görev mimarisini bir AI Agent (Yapay Zeka Ajanı) ile nasıl birleştireceğimizi ve “bilen” değil, “karar veren” sistemleri nasıl inşa edeceğimizi inceleyeceğiz.

Geleneksel Worker vs. AI Agent Worker

Geleneksel bir worker, kendisine verilen reçeteyi (kod bloğu) harfiyen uygular. AI Agent tabanlı bir worker ise kendisine verilen hedefi (objective) gerçekleştirmek için o anki veriye bakarak bir strateji geliştirir.

ÖzellikGeleneksel WorkerAI Agent Worker
MantıkIf-Else blokları (Katı)LLM Akıl Yürütme (Esnek)
Veri İşlemeSadece yapılandırılmış veriMetin, görsel ve karmaşık veriler
Karar VermeÖnceden tanımlanmış yollarO anki duruma göre araç seçimi
Hata YönetimiHata fırlatır ve dururHatayı analiz edip çözüm üretebilir

Mimari Entegrasyon: Agentic Scheduled Tasks

AI Agent’ları zamanlanmış görev sistemine entegre ederken, temel mimarimizdeki “Worker” katmanını bir Agentic Brain ile değiştiriyoruz.

Süreç şu şekilde işler:

  1. Scheduler: Görevi tetikler (Örn: “Pazar analizi yap ve raporla”).
  2. Queue: Görevi mesaj kuyruğuna iletir.
  3. AI Agent (Worker): Kuyruktan görevi alır. Önce LLM ile planlama yapar, gerekli araçları (Google Search, DB access, PDF generator) kullanır ve görevi tamamlar.

Teknik Uygulama: Python ile Otonom Haber Bülteni Ajanı

Aşağıdaki örnekte, her sabah belirli bir saatte çalışan, internetteki teknoloji haberlerini tarayan, bunları özetleyen ve sadece “önemli” bulduklarını e-posta atan bir AI Agent yapısını kurgulayacağız.

1. Agent ve Araçların Tanımlanması

Öncelikle ajanın kullanacağı araçları (Tools) ve beynini (LLM) hazırlıyoruz.

from langchain_openai import ChatOpenAI
from langchain.agents import initialize_agent, Tool
from langchain_community.tools import DuckDuckGoSearchRun

# 1. Beyin: GPT-4o
llm = ChatOpenAI(model="gpt-4o", temperature=0)

# 2. Araç: Arama motoru
search = DuckDuckGoSearchRun()

tools = [
    Tool(
        name="Search",
        func=search.run,
        description="Güncel teknoloji haberlerini aramak için kullanılır."
    )
]

# 3. Ajanın oluşturulması
agent = initialize_agent(
    tools, 
    llm, 
    agent="zero-shot-react-description", 
    verbose=True
)

2. Zamanlayıcı (Scheduler) Entegrasyonu

Şimdi bu ajanı her sabah çalışacak şekilde bir zamanlayıcıya bağlayalım. Burada endüstri standardı olan APScheduler kullanacağız.

from apscheduler.schedulers.blocking import BlockingScheduler
import datetime

def autonomous_task():
    print(f"Görev başladı: {datetime.datetime.now()}")
    
    prompt = """
    Bugünkü yapay zeka ve yazılım dünyasındaki en kritik 3 gelişmeyi bul. 
    Bu gelişmeleri teknik bir dille özetle ve bir rapor oluştur. 
    Eğer önemli bir gelişme yoksa 'Bugün kritik bir rapor bulunmuyor' de.
    """
    
    response = agent.run(prompt)
    # Burada response'u veritabanına kaydedebilir veya e-posta atabilirsiniz.
    print(f"Agent Çıktısı: {response}")

scheduler = BlockingScheduler()
# Her gün sabah 08:30'da çalışacak şekilde ayarla
scheduler.add_job(autonomous_task, 'cron', hour=8, minute=30)

print("AI Agent Scheduler çalışıyor...")
scheduler.start()

Neden Bu Yapıya İhtiyacımız Var?

Bir agent’ı zamanlanmış bir görev olarak çalıştırmanın en büyük avantajı Dinamik Filtreleme kapasitesidir.

Örneğin, bir e-ticaret siteniz olduğunu düşünün. Geleneksel sistem her gece stok raporu atar. Ancak AI Agent ile kurgulanmış bir sistem:

  • Stokları kontrol eder.
  • Satış hızını analiz eder.
  • Rakip fiyatlarını internetten tarar (Search Tool).
  • Ve size sadece “Stok azalıyor ama rakipler fiyat artırdığı için hemen sipariş vermeyin, yarın verin” gibi içgörülü bir rapor sunar.

Dikkat Edilmesi Gerekenler: Güvenlik ve Maliyet

AI Agent’lar otonom hareket ettiği için şu iki noktayı asla atlamamalısınız:

  1. Token Maliyeti: Zamanlanmış görevler her gün (belki saat başı) çalışacağı için LLM maliyetlerini takip etmelisiniz. Mümkünse küçük işler için GPT-4o-mini gibi daha ekonomik modeller tercih edilmelidir.
  2. Infinite Loop (Sonsuz Döngü): Ajanın bir aracı kullanırken takılıp kalmaması için max_iterations veya timeout parametreleri mutlaka tanımlanmalıdır.
  3. Human-in-the-loop: Kritik kararlar (para çekme, silme vb.) için ajanın kararı verdikten sonra bir insandan onay bekleyeceği bir ara mekanizma (Queue aşamasında) eklenmesi en güvenli yaklaşımdır.

Sonuç

Zamanlanmış görevler artık sadece “statik betikler” değil. LLM’lerin planlama yeteneği ve dış dünyaya erişen araçları (Tools) ile birleştiğinde, arka planda bizim yerimize düşünen ve çalışan dijital çalışanlara dönüşüyorlar. Önceki yazımızda kurduğumuz sağlam altyapının üzerine bu “zekayı” eklediğinizde, otomasyonun gerçek potansiyelini keşfetmiş olursunuz.


İletişim

AI Agent mimarileri veya karmaşık backend otomasyonları hakkında daha fazla teknik detaya ihtiyaç duyarsanız email yoluyla iletişime geçebilirsiniz.

Share this post on: