CrewAI 1.15.12 ile Erişilebilir Destek Akışı: Gerçek Kurulum Testi

by

⏱️ 11 dk tahmini okuma süresi
📝 1901 kelime
♿ WCAG 2.2 Uyumlu
Bu Makaleyi Sesli Dinleyin
Doğal Türkçe ses sentezleyici hazır



Kısa sonuç: CrewAI 1.15.12, birden fazla uzman ajanı sıraya koymanın yanında, normal Python adımlarını olay tabanlı bir “Flow” içinde yönetebilen açık kaynak bir orkestrasyon çatısı. Bu kılavuzda erişilebilirlik destek talebini önceliklendiren küçük bir akışı macOS üzerinde gerçekten çalıştırdım. Model çağrısı yapmadan kurulum ve yönlendirme katmanı doğrulandı; dolayısıyla yapay zekâ çıktısının kalitesi test edilmedi.

CrewAI ne işe yarar, kimler için?

CrewAI iki parçalı düşünmeye elverişli. “Crew”, araştırmacı, denetçi veya yanıt yazarı gibi rolleri Agent nesneleriyle tanımlar; her rolün hedefi, görevi ve kullanabildiği araçlar ayrı olabilir. “Flow” ise başlangıç, dinleyici ve yönlendirici adımlarını bir durum nesnesi çevresinde bağlar. Böylece her işi modele bırakmak yerine doğrulama, dallanma, insan onayı ve kayıt gibi deterministik bölümleri Python’da tutabilirsiniz.

Bu yapı; destek masası, içerik denetimi, belge işleme ve çok aşamalı araştırma otomasyonu geliştiren Python ekiplerine uygun. Yalnızca tek bir istem gönderip yanıt alan küçük uygulamalarda ise gereğinden fazla katman yaratabilir. Kod yazmadan sürükle-bırak otomasyon arayanlar Dify, Flowise veya n8n ile daha hızlı başlayabilir.

Kurulum: sürümü sabitleyin ve ayrı ortam kullanın

7 Ağustos 2026’da doğruladığım güncel kararlı sürüm 1.15.12; GitHub sürümü 5 Ağustos’ta, PyPI paketi de aynı gün yayımlanmış. Proje Python 3.10–3.13 aralığını istiyor. Üretimde “en yeni” paketi sessizce almak yerine sürümü sabitlemek, yükseltmeyi ayrı dalda denemek daha güvenli:

uv venv .venv --python 3.12
uv pip install --python .venv/bin/python "crewai==1.15.12"
.venv/bin/crewai --version

Temiz Python 3.12 ortamında temel paket kurulumu bende 135 Python paketi çözdü. Bunlar arasında ChromaDB, LanceDB, OpenTelemetry ve model sağlayıcı istemcileri de vardı. Bu bağımlılık ayak izi, küçük bir komut dosyasından belirgin biçimde büyük; kilit dosyası, bağımlılık taraması ve izole çalışma ortamı kullanmak önemli.

Adım adım gerçek kullanım: destek talebini yönlendirme

Senaryo şu: Bir kullanıcı “Ekran okuyucuyla giriş yapılamıyor” diye bildirim açıyor. İlk adım metni sınıflandırıyor, yönlendirici yüksek öncelik yolunu seçiyor, son adım da kimlik bilgisi istemeyen güvenli yanıt talimatını üretiyor. Aşağıdaki örnek özellikle model kullanmıyor; amaç Flow motorunun durum taşıma ve dallanma davranışını tekrarlanabilir biçimde sınamak.

from pydantic import BaseModel
from crewai.flow.flow import Flow, listen, router, start

class IntakeState(BaseModel):
    request: str = "Ekran okuyucuyla giriş yapılamıyor"
    priority: str = ""
    reply: str = ""

class SupportFlow(Flow[IntakeState]):
    @start()
    def classify(self):
        self.state.priority = (
            "high" if "giriş" in self.state.request.lower()
            else "normal"
        )
        return self.state.priority

    @router(classify)
    def route(self):
        return self.state.priority

    @listen("high")
    def prepare_reply(self):
        self.state.reply = (
            "Kimlik bilgisi istemeden erişilebilir giriş adımlarını gönder."
        )
        return self.state.reply

flow = SupportFlow()
result = flow.kickoff()
print(flow.state.priority)
print(result)

Çalıştırmada priority=high ve beklenen Türkçe yanıt döndü. İkinci ölçümlü çalıştırma yaklaşık 1,32 saniye sürdü; en yüksek yerleşik bellek yaklaşık 220 MB oldu. Bu bir kıyaslama değil, tek makinede yapılan duman testi. Ağ aracı, MCP sunucusu ve ücretli model kullanılmadı.

Akışı gerçek ajanlara dönüştürme

Üretim sürümünde sınıflandırma adımına bir Agent ve Task eklenebilir. Örneğin bir “erişilebilirlik destek sınıflandırıcısı” yalnız kategori ve gerekçe üretir; ikinci ajan çözüm taslağı yazar; üçüncü adım kişisel veri ve tehlikeli eylem kontrolü yapar. Crew bu görevleri sıralı çalıştırırken Flow, düşük güven puanında insan kuyruğuna yönlendirir.

CrewAI; OpenAI, Anthropic, Google Gemini, Azure ve AWS Bedrock için yerel sağlayıcı bağlantıları, diğerleri için LiteLLM geri dönüşü belgeliyor. Ollama ile yerel model de bağlanabiliyor. Model adını, taban URL’yi, zaman aşımını, tekrar sayısını ve belirteç sınırını açıkça yapılandırın. Varsayılan modele güvenmek, sürüm değiştiğinde maliyet veya veri rotasını fark etmeden değiştirebilir.

Araç izinlerini ajan rolünden daha dar tutun. Yanıt yazarı takvime veya kabuğa erişmemeli; bilet okuyucu yalnız gerekli alanları görmeli. Silme, gönderme, ödeme veya hesap değişikliği gibi etkili araçlar insan onayından geçmeli. Ağ hatasında sınırlı üstel bekleme, model hatasında yapılandırılmış çıktı doğrulaması, işlem ortasında ise durum kaydı ve tekrar çalıştırılabilir adımlar kullanın. Aynı işi körlemesine yeniden denemek çift e-posta veya çift kayıt üretebilir.

Arayüz ve erişilebilirlik notları

Açık kaynak kullanımın ana arayüzü terminal. crewai --help çıktısında create, run, test, traces, memory, replay ve checkpoint gibi komutlar listeleniyor. Metin tabanlı oluşu ekran okuyucu için avantaj sağlayabilir; ancak testte Flow ilerlemesi çok sayıda kutulu ve emojili durum iletisi üretti. Bu görsel gürültü, uzun çalışmalarda ekran okuyucu kullanıcılarının asıl sonucu bulmasını zorlaştırabilir. Üretimde ayrıntı seviyesini azaltın, nihai sonucu sade metin veya JSON olarak ayrıca yazdırın ve rengin tek durum göstergesi olmadığını denetleyin.

crewai flow plot HTML akış görselleştirmesi oluşturabiliyor; görsel şema tek başına yeterli değil. Adım adları, tetikleme sırası, başarısızlık yolu ve insan onay noktalarını metin listesiyle de sunun. CrewAI AMP izleme paneli için hesap gerekir. Yerleşik dokümana göre izler ajan etkileşimlerini, araç kullanımını, model çağrılarını ve hataları gösterebilir; hassas istem ve çıktıları göndermeden önce kurum politikasını ve saklama koşullarını ayrıca doğrulayın.

Gözlemlenebilirlik, veri izinleri ve gizlilik

Çerçeve varsayılan anonim telemetride sürüm, süreç türü, ajan ve görev sayısı, rol adı, araç adı ve model bilgisi gibi teknik alanları topladığını söylüyor. Rol veya araç adına müşteri adı yazarsanız “teknik” alan yine kişisel veri taşıyabilir. CREWAI_DISABLE_TELEMETRY=true yalnız CrewAI telemetrisini, OTEL_SDK_DISABLED=true ise tüm OpenTelemetry ölçümünü kapatır. share_crew=True hedef, geçmiş, görev bağlamı ve çıktı gibi ayrıntıları paylaşabildiği için hassas işlerde açılmamalı.

MCP entegrasyonu özellikle yüksek riskli. CrewAI’nin güvenlik belgesi, kötü niyetli araç açıklamasının araç çağrılmasa bile model bağlamına istem enjeksiyonu sokabileceğini belirtiyor. Yalnız güvendiğiniz sunuculara bağlanın; yerel stdio sürecini düşük yetkili kullanıcıyla çalıştırın; uzak bağlantıda HTTPS, kimlik doğrulama ve en az ayrıcalıklı belirteç kullanın. Dosya yolu, komut ve URL girdilerini sunucu tarafında doğrulayın. Açık bir GitHub konusu ayrıca uzak JSON’dan dinamik modül alma ve bütünlük kontrolü olmayan pickle.load yollarını sorguluyor; bu henüz yayımlanmış güvenlik duyurusu değil, ancak güvenilmeyen eğitim veya ajan deposu verilerini içeri almamak için yeterli uyarı.

Maliyet ve lisans

Depodaki sabitlenmiş LICENSE dosyası gerçek MIT metnini içeriyor. Bu genel olarak yazılımı kullanma, değiştirme ve dağıtmaya izin verir; telif ve lisans bildirimi korunmalı. MIT etiketi güvenlik veya bakım garantisi değildir. Bağladığınız model, veri kümesi, MCP sunucusu ve eklenti farklı şartlara sahip olabilir.

Açık kaynak çalışma zamanı ücretsiz indirilebilir, fakat model API’leri belirteç başına, araçlar işlem başına ve izleme hizmetleri plana göre ücret çıkarabilir. CrewAI’nin fiyat sayfasında Basic plan “Free” ve ayda 50 iş akışı çalıştırması; Enterprise ise özel fiyat olarak gösteriliyor. Bu kota yerel MIT paketin kullanım sınırı değil, barındırılan platform planı. Maliyeti kontrol etmek için ucuz sınıflandırma modelini erken adımlarda, güçlü modeli yalnız zor görevlerde kullanın; maksimum tur, belirteç ve tekrar sınırı koyun.

Alternatiflerle karşılaştırma

LangGraph, grafik durumunu, duraklatma ve sürdürmeyi daha açık denetlemek isteyen ekiplerde güçlü; CrewAI ise rol–görev diliyle çok ajanlı iş bölümünü daha hızlı anlatıyor. AutoGen konuşan ajan kalıpları ve Microsoft ekosistemiyle öne çıkıyor. Dify, Flowise ve n8n görsel düzenleyici isteyen ekipler için daha erişilebilir başlangıç sunabilir, fakat karmaşık sürümleme ve testte yine kod gerekebilir. CrewAI’yi seçmenin iyi gerekçesi, aynı projede hem deterministik Flow hem rol tabanlı Crew istemenizdir.

Sınırlamalar ve sorun giderme

  • Kurulum ağırsa: Python sürümünün 3.10–3.13 olduğunu doğrulayın, temiz sanal ortam kullanın ve yalnız gereken ek paketleri kurun.
  • Model çağrısı yetkisizsa: sağlayıcı önekini, model adını, API anahtarının süreç ortamına aktarılmasını ve taban URL’yi kontrol edin; anahtarı kaynak koda koymayın.
  • Akış iki kez etkili işlem yapıyorsa: araç çağrılarına benzersiz işlem anahtarı ekleyin ve tekrar politikasını yalnız geçici hatalarla sınırlandırın.
  • MCP akışı çöküyorsa: 6 Ağustos tarihli açık bir hata kaydı, Streamable HTTP istemcisinin çalışan olay döngüsünde asyncio.run() hatasına işaret ediyor. Sürümü ve taşıma türünü sabitleyin; üretime almadan aynı asenkron bağlamda test edin.
  • Maliyet görünmüyorsa: 1.15.12 sonrasındaki bir düzeltme Anthropic önbellek belirteçlerinin eksik raporlanmasını ele alıyor. Sağlayıcı faturasını izlerle çapraz karşılaştırın ve bir sonraki sürüm notunu kontrol edin.

Bakım sinyali güçlü: depo 7 Ağustos’ta güncellenmiş, son iki günde iki kararlı sürüm çıkmış ve son commitler belge ile bağımlılık düzeltmeleri içeriyor. Buna karşılık 108 açık issue bulunuyordu; ilk 100 sonuçta 15 “bug” etiketi vardı. Hızlı yayın temposu nedeniyle küçük bir kabul testi paketi ve kontrollü yükseltme penceresi şart.

Kaynaklar

Test notu: Kurulum ve model kullanmayan Flow örneği gerçekten çalıştırıldı. Ücretli LLM, CrewAI AMP, MCP sunucusu, görsel Flow arayüzü ve üretim ölçeği test edilmedi.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

✅ Uygulama Başarıyla Güncellendi!
🟢 Profil Uygulandı