Search⌘ K

تتبع وتصحيح أخطاء أنظمة الذكاء الاصطناعي في LlamaIndex

تعرف على كيفية تتبع تطبيقات LLM وتصحيح أخطائها باستخدام أدوات LlamaIndex المضمنة للتسجيل وتكوين ملف تعريف الأداء وتحسين النظام.

عندما بناء أنظمة ذكاء اصطناعي باستخدام LlamaIndex أو أي إطار عمل آخر، يسهل التركيز على المدخلات والمخرجات - يُطرح سؤال، فتظهر الإجابة. لكن الكثير يحدث تحت السطح: تُدمج المستندات وتُسترجع، وتُبنى المطالبات ديناميكيًا، وتُنتج نماذج اللغة النتائج.

في الإعدادات الأكثر تعقيدًا، قد يستدعي الوكلاء أدوات، وقد تتفرع سير العمل بناءً على المنطق أو تفاعل المستخدم. عند حدوث خطأ ما - إجابة ضعيفة، أو تفويت استدعاء أداة، أو بطء في استجابة- يجب أن نفهم ما حدث.

يساعدنا التتبع وتصحيح الأخطاء على جعل ما هو غير مرئي مرئيًا. فهما يتيحان لنا متابعة تدفق البيانات عبر النظام وتشخيص الأعطال بدقة. مع LlamaIndex، يمكننا فحص كل خطوة، بدءًا من الاسترجاع والإنشاء الفوري وحتى توليد استجابة النهائية.

تمكين التسجيل الأساسي

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

يتم ذلك غالبًا باستخدام Python المضمنlogging الوحدة. إنها تمنحنا رؤية فورية للأحداث عالية المستوى دون الحاجة إلى أدوات خاصة أو إعدادات تتبع.

على سبيل المثال:

Python 3.10.4
import logging
# Configure logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
# Example function to simulate response retrieval
def retrieve_response(query):
logger.info(f"Processing query: {query}")
response = "This is a sample response."
logger.info(f"Generated response: {response}")
return response
# Test logging
response = retrieve_response("What is LlamaIndex?")
print(response)
  • السطر 1: نقوم باستيراد البرامج المضمنة في Pythonlogging وحدة.

  • السطر 4: نقوم بتكوين نظام التسجيل لإظهار الرسائل فيINFO المستوى أو أعلى.

  • الخط 5:logger = logging.getLogger(__name__) يُنشئ مثيلًا للمسجل. باستخدام__name__ يتأكد من أن نطاق المسجل صحيح بالنسبة للوحدة الحالية.

  • الأسطر 8-12: نقوم بتعريف الدالةretrieve_response(query) يُحاكي توليد استجابة لاستعلام مستخدم. قبل توليد استجابة، نُسجل الاستعلام المُستلَم. بعد توليد استجابة(المحاكاة)، نُسجل إخراج.

  • السطرين 15-16: نقوم باختبار الوظيفة باستخدام استعلام عينة ونطبع استجابة المرتجعة إلى وحدة التحكم.

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