Mastra'da AI Gözlemlenebilirliğini Düzeltmek
OpenTelemetry, modern sistemleri izlemek için standarttır. Geleneksel izler (traces) çoğu yazılım için işe yarar. Ancak AI uygulamalarında yetersiz kalırlar.
AI geliştirirken belirli cevaplara ihtiyaç duyarsınız: • Çıktıyı hangi model oluşturdu? • Hangi sağlayıcıyı kullandınız? • Kaç token tükettiniz? • Dokümanlarınızı hangi embedding modeli işledi? • İşlemin maliyeti neydi?
Bu sorular en çok Retrieval-Augmented Generation (RAG) sistemlerinde önem taşır.
Mastra'ya katkıda bulunurken, RAG embedding gözlemlenebilirliğinde bir boşluk fark ettim. Mastra birçok AI görevi için meta verileri dışa aktarıyordu ancak RAG embedding span'ları standart niteliklerden yoksundu.
Gözlemlenebilirlik araçları embedding işlemini görüyordu. Ancak bağlamı anlamıyorlardı. Model detaylarını, sağlayıcı bilgilerini ve token kullanımını kaçırıyorlardı.
Bir RAG hattı (pipeline) şu adımları izler: • Dokümanlar • Parçalama (Chunking) • Embedding Modeli • Vektör Veritabanı • Benzerlik Araması • LLM Üretimi
Embedding aşaması hayati önem taşır. Burada veri eksikliğiniz varsa, performans hata ayıklama (debugging) süreci zorlaşır.
OpenTelemetry, ortak bir dil oluşturmak için semantik sözleşmeler (semantic conventions) kullanır. Her aracın özel isimler kullanması yerine, herkes tek bir standardı takip eder. Bu, araçların şu nitelikleri okumasına olanak tanır:
• gen_ai.system
• gen_ai.request.model
• gen_ai.usage.input_tokens
Mastra RAG embedding verilerini bu OpenTelemetry standartlarına eşlemek için bir pull request gönderdim.
Çalışma şunları içeriyordu: • Embedding modeli meta verilerinin dışa aktarılması • Sağlayıcı bilgilerinin dışa aktarılması • Token kullanım metriklerinin eşlenmesi • Niteliklerin küresel standartlarla uyumlu hale getirilmesi
Bu, gözlemlenebilirlik sistemlerinin özel kod yazmaya gerek kalmadan embedding'leri anlamasını sağlar.
Üretim aşamasındaki (production) AI sistemlerinin görünürlüğe ihtiyacı vardır. Hangi modelin gecikmeye (latency) neden olduğunu veya hangi sağlayıcının en çok maliyete yol açtığını bilmeniz gerekir. Standartlaştırılmış telemetri, bu cevapları otomatik olarak sağlar.
Açık kaynak büyük bir ders veriyor. Her iyi katkı yeni bir özellik eklemez. Bazen en iyi çalışma, mevcut sistemlerin izlenmesini ve çalıştırılmasını kolaylaştırır.
Eğer AI altyapısı kuruyorsanız, gözlemlenebilirliği ihmal etmeyin. En iyi AI sistemleri gözlemlenebilir olanlardır.
İsteğe bağlı öğrenme topluluğu: https://t.me/GyaanSetuAi