Microsoft'un Foundry ekibi, ajan çerçevesine (agent framework) OpenTelemetry tabanlı izleme (tracing) özelliği ekleyerek geliştiricilere heterojen LLM destekli ajanlar arasında uçtan uca yürütmeyi görme imkanı sağladı.
Çoklu ajan sistemlerinin neden log dosyalarından daha fazlasına ihtiyacı var
Tipik bir yapay zeka destekli olay müdahale tatbikatı, birkaç uzman ajanı yöneten bir komuta ajanı (commander agent) kullanır: biri logları ayrıştırır, diğeri metrik anomalilerini tespit eder, üçüncüsü semptomları çalışma kitapçıklarıyla (runbooks) eşleştirir ve bir yönlendirici (router) her alt görev için en iyi dil modelini seçer. Her uzman farklı bir modeli —örneğin bir “gpt-5-mini” varyantını— çağırabilir ve kendi araçlarını kullanabilir. Bir şeyler ters gittiğinde mühendisler, her bileşenin ne yaptığını gösteren ancak parçaların birbirine nasıl bağlandığını göstermeyen izole loglara bakıp kalırlar.
Birleşik bir trace olmadan, kök neden ajanlar arasındaki veri aktarımında gizli kalır. Komuta ajanı, log okuyucunun doğru şekilde işleyeceği bir istek gönderebilir ancak metrik uzmanı verileri yanlış yorumlayıp yanlış çalışma kitapçığını önerebilir. Bu zinciri manuel olarak hata ayıklamak (debugging) zaman alır ve hataya davetiye çıkarır.
OpenTelemetry iş akışını nasıl bir araya getirir
OpenTelemetry iki temel kavram tanımlar: traces (izler) ve spans (aralıklar). Bir trace, bir isteği girişten nihai yanıta kadar takip eden benzersiz bir tanımlayıcıdır. Bir span ise o trace içindeki tek bir işlemi —bir dil modeli çağrısı veya bir araç kullanımı gibi— kaydeder.
Bir ajan bir istek aldığında, gelen Trace ID'yi isteğin meta verilerinden çeker ve aynı ID'yi miras alan bir alt span (child span) oluşturur. Alt span; başlangıç zamanını, süresini, özniteliklerini (model adı, kullanılan araç) ve varsa hataları kaydeder. Bu süreç, genel görevin mantıksal akışını yansıtan bir ağaç yapısı oluşturacak şekilde her bir sonraki (downstream) ajan için tekrarlanır.
OpenTelemetry ayrıca özel anahtar-değer çiftleri için hafif bir taşıyıcı olan Baggage özelliğini de destekler. Trace'in en başında baggage'e bir “drill-id” veya başka bir iş bağlamı ekleyerek, sonraki tüm span'lar bu tanımlayıcıyı otomatik olarak miras alır. Bir span işlemcisi (span processor) daha sonra baggage'i normal özniteliklere dönüştürerek, belirli bir olay tatbikatına ait tüm span'ları sorgulamayı kolaylaştırır.
Yeni izleme arayüzü nasıl görünüyor
Enstrümantasyon (instrumentation) tamamlandığında, Azure Monitor (veya OpenTelemetry uyumlu herhangi bir arka uç), görsel bir hiyerarşi sunar:
- Ajan adı / ID – işlemi hangi bileşenin gerçekleştirdiğini gösterir.
- Araç kullanımı – hangi harici servisin veya fonksiyonun çağrıldığını kaydeder.
- Model sürümü – kullanılan tam LLM'i günlüğe kaydeder; bu, bir model yükseltmesinden sonraki gerilemeleri (regressions) takip etmek için yararlıdır.
- Token tüketimi – modele kaç token gönderildiğini ve modelden kaç token alındığını yakalayarak ekiplerin maliyeti yönetmesine yardımcı olur.
- Gecikme / süre – ister model çıkarımı (inference) ister araç G/Ç (I/O) olsun, darboğazların nerede oluştuğunu vurgular.
Olay tatbikatı örneğinde, komuta ajanının kök span'ı her uzman için alt span'lar oluşturur ve her uzman da kendi model çağrıları için daha fazla alt span oluşturur. Herhangi bir düğüme (node) tıklandığında tüm öznitelik seti görünür hale gelir, böylece bir mühendis her işlemin ayrıntılarını anında görebilir.
Yapay zeka merkezli operasyonlar için önem derecesi
- Kök neden analizi hızı – Ekipler, bir hatayı hata fırlatan tam span'a kadar takip ederek çözüm için geçen ortalama süreyi (MTTR) azaltır.
- Maliyet görünürlüğü – Token sayıları gecikme süresinin yanında yer alarak finans ekiplerinin, bulut faturaları kabarmadan önce kontrolden çıkmış kullanımı fark etmesini sağlar.
- Performans iyileştirme – Ajanlar arasındaki yüksek gecikmeli span'lar; önbelleğe alma (caching), model seçimi veya araç yeniden tasarımının verimliliği (throughput) artırabileceği noktaları gösterir.
Sırada ne var
LangChain, OpenAI SDK veya diğer orkestrasyon katmanları üzerine inşa edilen projeler, GenAI için aynı anlamsal kuralları (semantic conventions) benimseyerek bulut sağlayıcıları ve yerinde (on-premise) kurulumlar arasında akabilen izler (traces) için zemin hazırlayabilir.
Kuruluşlar, ajanlarında OpenTelemetry SDK'sını etkinleştirerek verileri Azure Monitor'a veya açık kaynaklı bir toplayıcıya (collector) göndermeleri yeterlidir.
Özet
OpenTelemetry, çoklu ajanlı yapay zeka sistemlerine, dağınık logları tutarlı bir anlatıya dönüştüren o eksik bağlayıcıyı sağlar. Tek bir Trace ID'yi heterojen LLM'ler, yönlendiriciler ve araç çağrıları arasında yayarak geliştiriciler, izleme altyapısını yeniden icat etmeye gerek kalmadan hataları tespit edebilir, maliyetleri izleyebilir ve performansı optimize edebilir.
