Kurulum
crewai 1.13 ile 2.0. 1.13, started_event_id ekleyen ve token kullanımını normalleştiren sürümdür; bu ikisi de adaptörün olayları eşleştirmesi ve tokenları raporlaması için gereklidir.
Instrumentalizasyon
instrument(), CrewAI’ın modül düzeyindeki olay otobüsüne bir dinleyici kaydeder ve her olay sınıfı için bir işleyici abone olur. Ekibiniz, aracılarınız, görevleriniz veya araçlarınız hakkında hiçbir şey değişmez.
Kayıt edilen öğeler
Bir görev kasıtlı olarak hiçbir şey yayınlamaz. CrewAI görevi, onu çalıştıran aracı yürütülmesinin bir alt kümesidir, bu nedenle her ikisini de yayınlamak her satırı ikiye katlar ve bunları kardeş olarak render eder. Görev kimliği ve adı aracının kendi olaylarında yer alır.
Bellek ve bilgi işlemleri, ulaştıkları yüzey için adlandırılan araçlar olarak kaydedilir, böylece gerçek araçlarınızın yanında görünür ve gecikme sürelerini karşılaştırabilirsiniz.
Hiyerarşik bir ekipte, iç içe geçme izlemeyi okunabilir kılan şeydir:
delegate_work_to_coworker araç olayının üzerine yerleştirir, bu nedenle adaptör bu bağlantıyı izler. Bunu olmadan her aracı diğerinin kardeşi olarak çıkar ve delegasyon yapısı kaybedilir.
Örnek
analyst aralığı kapanır, writer aralığı açılır ve her ikisi de bir crew aralığı içinde oturur.
Aralıklarınızı adlandırın
agent_id Agent(role=...) adresinden gelir; bu, onu okunabilir bir pano yönü yapar.
agent_id düşük kardinaliteli bir sütundur. Bir UUID veya zaman damgası içeren rol, her çalıştırılan sorgu için bunu kötüleştirir. Bir rol kimliğe benzerse, adaptör bunu reddeder ve gerçek değeri bunun yerine bir yük alanına koyar.
Oturumu kontrol edin
Bu sırada çözümlenir, ilk eşleşme kazanır:instrument("crewai", session_id=...)- Çevreleyen
failproofai_sdk.session()kapsamı - Üretilen
uuid4().hex, ekip veya akış başına bir kez
Seçenekler
session_id bu adaptörün okuduğu tek seçenektir. İstemler ve tamamlamalar her zaman kaydedilir, yük bütçesine kesilir.
İnsan katılımı
CrewAI’ın iki insan katılımı yüzeyi vardır ve her ikisi de aynı dört olay olarak kaydedilir. Bir akış yöntemi üzerindeki@human_feedback CrewAI’ın olay otobüsünden geçer: çalışma zamanı bir olayı bir kişiye bloke olmadan önce ve cevaptan sonra başka bir olay yayınlar.
Task(human_input=True) değil. CrewAI’ın kendi giriş sağlayıcısı içinde input() çağırır ve hiçbir türde olay yayınlamaz, bu nedenle adaptör bu sağlayıcıyı doğrudan sarmalayarak — bunu olmadan tüm insan bekleme süresi görünmez ve etkin aracı zamanı olarak faturalandırılır.
Her iki durumda da şunları alırsınız:
agent_pause ile agent_resume arasında, pauzlanmış zamanı besleyen tek çifttir. Bunu olmadan on dakikalık bir insan bekleme süresi on dakika etkin aracı zamanı olarak faturalandırılır.
CrewAI her iki insan geri bildirimi olayında da korelasyon kimliği ayarlamaz, bu nedenle adaptör bunları akış ve yöntem adında eşleştirir, en yakın açılan duraklamaya geri döner. Bu sesli çünkü konsol istemi bloke olur. Eş zamanlı bir geri bildirim sağlayıcısı inşa ederseniz, her iki olaya da
request_id ayarlayın.Task(human_input=True) yolu bir olay aboneliği yerine CrewAI’ın giriş sağlayıcısı etrafındaki bir sarmalayıcı olduğundan, uninstrument() üzerinde geri yüklenir ve input() ne yükselirse KeyboardInterrupt de dahil olmak üzere değiştirilmeden yeniden yükseltir.Yaygın sorunlar
Aracı filtresinin binlerce girişi var
Aracı filtresinin binlerce girişi var
Bir
role UUID, zaman damgası veya çalıştırma başına son ek içerir. Sabit bir insan rolü kullanın ve çalıştırmaya özgü kimliği bunun yerine görev açıklamasına koyun.Bir test sıfır olay okur ama pano bunları gösterir
Bir test sıfır olay okur ama pano bunları gösterir
Olay otobüsü zaman uyumsuztur ve Bu CrewAI’ın bir özelliğidir, SDK’nın değil.
kickoff() son işleyiciler çalışmadan önce geri döner. Önce bunu boşaltın:Bir oturum sonsuza kadar devam ediyor olarak gösterilir
Bir oturum sonsuza kadar devam ediyor olarak gösterilir
agent_end açık duraklamaları kapatan güçle kapatır ama araçları veya modelleri değil, bu nedenle bir araç çağrısı içinde ölen bir çalıştırma o aralığı açık bırakır. Normal temizleme hala açık olanları kapatır ve eksik olarak işaretler. Sadece SIGKILL bunu asılı bırakır, çünkü hiçbir şey çalıştırılamaz.Hiçbir şey kaydedilmez
Hiçbir şey kaydedilmez
Bu sırada kontrol edin:
instrument() kickoff() öncesinde çalıştırıldı; with failproofai_sdk.session(): etrafında bir tane var; crewai 1.13 veya daha yeni; FAILPROOFAI_SDK_STRICT=1 ayarlanmış, bu nedenle kötü bir kancası yutulmak yerine yükseltir.İleri
Nasıl çalışır
Çiftler, kimlikler, oturum yaşam döngüsü ve teslimat.
İz oku
Az önce yakaladığınız oturumda nedenselliği takip edin.
Diğer çerçeveler
LangGraph, LlamaIndex, Pydantic AI ve özel aracılar.

