0%
تسجيل أحداث الوكيل والتحكم في تكلفته

التسجيل والتكاليف

إعادة بناء مسار التنفيذ، ومنع الحلقة من الخروج عن السيطرة في الإنفاق.

10-15 دقيقة

تسجيل أحداث الوكيل والتحكم في تكلفته

يفشل الوكيل في بيئة الإنتاج على نحو مختلف عن البرنامج العادي. فهو لا يتعطل: بل ينتهي إلى نتيجة خاطئة عبر مسار يبدو معقولًا. يبلّغك أحد العملاء بأن عملية بحث أعادت بيانات ملف آخر، فتكتشف أن سجلاتك لا تحتوي إلا على سطر واحد — «استدعاء الوكيل، الحالة 200، 14 ثانية» — لا يقول شيئًا عن العشرات من القرارات التي اتُّخذت بين المدخل والمخرج.

وهذا القاسم المشترك بين جميع حوادث الوكلاء: فالبيانات التي كانت ستتيح الفهم تُنتَج أثناء التنفيذ ثم تضيع عند انتهائه. لذلك فإن تسجيل أحداث الوكيل ليس تحسينًا تشغيليًا ثانويًا، بل هو شرط للقدرة على إصلاح أي شيء. وهو أيضًا الوسيلة الجدية الوحيدة لمعرفة ما يكلّفه الوكيل فعلًا.

ما الذي ينبغي تسجيله

مسار التنفيذ هو سلسلة من الأدوار، يتكوّن كل منها من قرار يتخذه النموذج، وربما من استدعاء لأداة. وعليه فإن وحدة التسجيل هي الدور، لا الطلب.

# Un evenement par tour. La cle est l'identifiant de trajectoire :
# c'est lui qui permet de recoller les tours d'une meme execution.
journal.info(
    "tour_agent",
    extra={
        "trajectoire_id": trajectoire.id,     # UUID genere a l'entree
        "utilisateur_id": demande.utilisateur_id,
        "tour": 3,
        "outil": "chercher_dossiers",
        "arguments": {"requete": "facture impayee", "limite": 20},
        "resultat_taille": 4821,              # octets, pas le contenu
        "duree_ms": 340,
        "jetons_entree": 2145,
        "jetons_sortie": 88,
        "motif_arret": None,
    },
)

التعليقات

التعليقات مدعومة عبر GitHub Discussions

سجّل الدخول باستخدام GitHub للمشاركة في النقاش

تم نسخ الرابط!