التعمق في LangSmith
إعداد LangSmith والتتبع
3 دقيقة للقراءة
LangSmith هي منصة LangChain لتصحيح الأخطاء واختبار ومراقبة تطبيقات LLM. توفر التتبع والتقييم والمراقبة لأي خط أنابيب LLM.
لماذا LangSmith؟
| القدرة | الفائدة |
|---|---|
| التتبع | رؤية كل خطوة من خط أنابيب LLM الخاص بك |
| تصحيح الأخطاء | إيجاد مكان الخطأ بالضبط |
| التقييم | قياس الجودة على نطاق واسع |
| المراقبة | تتبع أداء الإنتاج |
التثبيت
pip install -U langsmith openai
إعداد البيئة
عيّن متغيرات البيئة هذه لتفعيل التتبع:
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=your-api-key
export LANGCHAIN_PROJECT=my-project
احصل على مفتاح API الخاص بك من smith.langchain.com.
التتبع الأساسي مع @traceable
مُزخرِف @traceable يسجل استدعاءات الدوال تلقائياً:
from langsmith import traceable
from openai import OpenAI
client = OpenAI()
@traceable
def answer_question(question: str) -> str:
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[
{"role": "system", "content": "أنت مساعد مفيد."},
{"role": "user", "content": question}
]
)
return response.choices[0].message.content
# كل استدعاء يتم تتبعه الآن
result = answer_question("ما هي عاصمة فرنسا؟")
تغليف عميل OpenAI
للتتبع التلقائي لجميع استدعاءات OpenAI:
from langsmith import wrappers
from openai import OpenAI
# غلّف العميل للتتبع التلقائي
client = wrappers.wrap_openai(OpenAI())
# جميع الاستدعاءات تُتتبع تلقائياً الآن
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "مرحباً!"}]
)
هيكل التتبع
كل تتبع يحتوي على:
Run (الأصل)
├── Input: معاملات الدالة
├── Output: القيمة المُرجعة
├── Metadata: التوقيت، التوكنات، معلومات النموذج
└── Child Runs: استدعاءات الدوال المتداخلة
إضافة البيانات الوصفية
أرفق بيانات وصفية مخصصة بالتتبعات:
@traceable(
run_type="llm",
metadata={"version": "1.0", "team": "support"}
)
def generate_response(prompt: str) -> str:
# استدعاء LLM الخاص بك هنا
pass
عرض التتبعات
في واجهة LangSmith يمكنك:
- رؤية تتبعات التنفيذ الكاملة
- فحص المدخلات والمخرجات في كل خطوة
- عرض تفاصيل زمن الاستجابة
- التصفية حسب المشروع أو الوقت أو البيانات الوصفية
نصيحة: فعّل التتبع في التطوير أولاً. عندما تصبح مرتاحاً، فعّله في الإنتاج للمراقبة الكاملة.
التالي، سنستكشف Insights Agent في LangSmith لاكتشاف الأنماط وأوضاع الفشل في تتبعاتك. :::