Maliyet modelden gelmez
Bir token toplamı bir çıktıdır, bir neden değil. Aynı görevin iki ajan çalıştırması araç çağrılarında bir büyüklük mertebesi farklıysa, fark nadiren modeldir. Fark ayrıştırmadır: planlayıcının oluşturduğu alt görev sayısı, her birinin ne kadar dar kapsandığı ve her düğüme ne kadar bağlamı yeniden okuması söylendiği. Bir retrieval görevini beş örtüşen alt göreve bölen bir plan, aynı belge için beş kez öder. Bunu iyi kapsanmış tek bir düğüme bölen bir plan bir kez öder.
Başarısızlık modları kümelenir. Yeniden denemeler, başarı koşulu hiç belirtilmemiş alt görevlerde yoğunlaşır. Bağlamın yeniden okunması, çok geniş bir araç yüzeyi verilen ve zaten bildiklerini yeniden türetmek zorunda kalan düğümlerde yoğunlaşır. Gereksiz doğrulama adımları, planlayıcı bir alt görevin tamamlanıp tamamlanmadığına karar veremediğinde ortaya çıkar, bu yüzden işi kopyalayan bir denetleyici düğüm ekler. Bunların hiçbiri çalıştırma başına toplamda görünmez. Toplam, maliyeti modele atfeder, çünkü faturalama satırının adlandırdığı şey modeldir. Parayı gerçekte harcayan şey plandır.
Plan-düğümü muhasebesi
Mekanizma basittir: her plan düğümüne kararlı bir tanımlayıcı verin ve her model çağrısını ve araç çağrısını onu yapan düğüme atayın. Bir düğüm tanımlayıcısı bir span adı değildir. Planlayıcının kendi iş birimidir ve çalıştırma boyunca her giden istekte bir alan olarak taşınır.
plan_node_id: "retrieve_policy_clauses"
parent_node: "assemble_compliance_answer"
model_calls: [...]
tool_calls: [...]
status: "retried"
Çalıştırmalar arasında toplayın, her düğüm bir dağılım kazanır: maliyet, latency, yeniden deneme oranı, başarısızlık oranı. Asıl mesele dağılımdır. Düğüm başına ortalama maliyet, bir düğümün genellikle ne kadara mal olduğunu söyler. Uzun bir sağ kuyruk, hangi düğümün ara sıra patladığını söyler. Bunlar farklı mühendislik problemleridir. Birincisi bir bütçeleme sorusudur. İkincisi bir ayrıştırma kusurudur.
Çoğu ajan gözlemlenebilirliği burada durur. Trace'ler toplanır, span'ler render edilir ve maliyet görünümü modele göre bir dökümü olan çalıştırma başına bir toplamdır. Bu döküm kimsenin sormadığı bir soruyu yanıtlar: token'ları hangi model harcadı. Önemli olan soru, planın hangi kısmının işi ürettiğidir. Düğüm düzeyinde bir görünüm bunu yanıtlar ve çalıştırmalar arasında yanıtlar, ki kötü bir planı kötü bir günden ayırmanın tek yolu budur.

Dağılımın ortaya çıkardıkları
Üç desen tekrar eder.
Düşük ortalama maliyetli ve ağır kuyruklu bir düğüm, genellikle başarı koşulu yetersiz belirtilmiş bir düğümdür. Çoğu zaman başarılı olur ve ara sıra döngüye girer. Çözüm daha ucuz bir model değildir. Çözüm, düğüm üzerinde daha sıkı bir sözleşmedir: ne döndürmesi gerektiği ve neyin tamamlanmış sayıldığı.
Yüksek ortalama maliyetli ve düşük varyanslı bir düğüm gerçek iş yapıyordur. Daha dar bir araç yüzeyi veya daha ucuz bir model için bir adaydır, çünkü davranışı çalıştırmayı riske atmadan optimize edilebilecek kadar öngörülebilirdir.
Yüksek yeniden deneme oranlı ve sabit maliyetli bir düğüm, her zaman aynı şekilde başarısız olan ve daha iyi bir seçeneği olmayan bir planlayıcı tarafından yeniden denen bir düğümdür. Buraya bütçe eklemek başarısızlığı daha pahalı hale getirir. Düğümü yeniden yazmak onu ortadan kaldırır.
Bu ayrımların hiçbiri bir çalıştırma toplamına toplandığında ayakta kalmaz. Hesap birimi olarak düğümü gerektirirler.
Bunu bir çizelgeleme girdisi yapmak
Maliyet düğümlere atfedildiğinde, yaptırım çalıştırma yerine düğüme bağlanabilir. Çalıştırma başına bir üst sınır kör bir araçtır: devreye girdiğinde, uslu duran düğümler dahil tüm yörünge ölür. Düğüm başına bir üst sınır, kontrolden çıkan bir alt görevin durdurulmasına, başarısız olarak işaretlenmesine ve planlayıcıya geri bildirilmesine izin verir, planlayıcı da etrafında yeniden plan yapabilir. Çalıştırmanın geri kalanı devam eder.
Bu, planlayıcının işini değiştirir. Düğüm düzeyinde maliyet geri bildirimi alan bir planlayıcı, ayrıştırmaları yalnızca beklenen doğruluğa göre değil, beklenen maliyete göre de seçebilir. Yüksek varyanslı düğümler daha dar araç yüzeyleri alır, çünkü daha küçük bir yüzey düğümün yanlış yapabileceği şeylerin uzayını daraltır. Her zaman yeniden deneyen düğümler daha fazla bütçe almadan önce yeniden yazılır, çünkü kısıt bütçe değildir. Ucuz ve güvenilir düğümlere daha fazla serbestlik verilebi
Bütçe yaptırımı bir çizelgeleme girdisi haline gelir. Aylık bir sürpriz yerine, kısıt plan zamanında ve her düğüm sınırında mevcuttur. Planlayıcı bir ayrıştırmayı karşılayıp karşılayamayacağını tahmin etmez; önceki çalıştırmalardan düğüm maliyetleri üzerine bir önseli vardır.
Ödünleşim gerçektir. Düğüm düzeyinde muhasebe, planlayıcının kararlı düğüm tanımlayıcıları üretmesini gerektirir, bu da planlayıcının ayrıştırmasının gözlemlenebilir ve yeniden üretilebilir olması gerektiği anlamına gelir. Her çalıştırmada serbest biçimli ayrıştırma üreten planlayıcılar, toplanmayan tanımlayıcılar üretir. Enstrümantasyon bir seçimi zorlar: ya ayrıştırma ölçülebilecek kadar kararlıdır ya da değildir ve maliyet atfedilemez kalır. İkinci tür planlayıcıyı isteyen ekipler — tamamen serbest biçimli, maksimum uyarlanabilir — kontrol döngüsünden vazgeçerek bunun bedelini öder. Bu meşru bir seçimdir. Bedava değildir.
Bunun yerini aldığı şey
Sonradan maliyet panoları bir raporlama artefaktıdır. Geçen ay ne olduğunu, toplu olarak, para harcandıktan sonra söylerler. Finans için faydalı, mühendislik için faydasızdır, çünkü sayı görünür olduğunda çalıştırma bitmiştir ve ona neden olan plan gitmiştir.
Plan-düğümü muhasebesi bir kontrol döngüsüdür. Planlayıcının gerçekte kontrol ettiği birimde ölçer, varyansın görünür olması için çalıştırmalar arasında toplar ve bir sonraki ayrıştırmaya geri besler. Fark, grafiğin ayrıntı düzeyi değildir. Fark, ölçümün bir sonraki çalıştırmayı değiştirip değiştiremeyeceğidir.
Pratik biçim
Minimal bir uygulamanın dört parçası vardır.
- Planlayıcı, ayrıştırmasının bir parçası olarak düğüm tanımlayıcıları üretir ve runtime bunları her model ve araç çağrısında taşır.
- Bir toplayıcı, çalıştırmalar arasında düğüm başına maliyet, latency, yeniden deneme sayısı ve başarısızlık durumunu toplar.
- Bir politika katmanı, düğüm başına dağılımı okur ve düğüm sınırında üst sınırlar, model seçimi ve araç yüzeyi kısıtlamaları uygular.
- Planlayıcı, bir sonraki ayrıştırmayı seçerken politika katmanının önsellerini tüketir.
Zor kısım tesisat değildir. Zor kısım, ayrıştırmanın maliyet imzası olan bir mühendislik artefaktı olduğunu ve onu ölçmenin bütçelemeyi bir muhasebe olayı yerine bir tasarım kararı yapmanın tek yolu olduğunu kabul etmektir.
