الوكلاء طويلو المدى
تحدي الجلسة
3 دقيقة للقراءة
معظم أمثلة وكلاء الذكاء الاصطناعي تُظهر تفاعلات سريعة من دورة واحدة. المهام الحقيقية—إعادة هيكلة قاعدة كود، ترحيل قاعدة بيانات، كتابة وثائق—تستغرق ساعات أو أيام، ليس ثواني.
المشكلة
واجهات برمجة تطبيقات LLM لديها حدود صارمة:
| القيد | التأثير |
|---|---|
| نافذة السياق | لا يمكن تذكر كل شيء دفعة واحدة |
| مهلة الطلب | استدعاءات API لا يمكن أن تعمل للأبد |
| حدود المعدل | تباطؤ بعد طلبات كثيرة |
| التكلفة لكل رمز | الجلسات الطويلة تصبح مكلفة |
نافذة سياق 200K تبدو كبيرة حتى يعالج وكيلك 50 ملفاً، ويشغّل 30 أمراً، ويحاول تذكر ما تعلمه قبل ساعتين.
ماذا يحدث عندما يمتلئ السياق؟
الدورة 1: الوكيل يقرأ 10 ملفات، يفهم قاعدة الكود
الدورة 2: الوكيل يجري 5 تغييرات، يتتبع الحالة
الدورة 3: الوكيل يشغّل الاختبارات، يحلل الأخطاء
الدورة 4: ...السياق امتلأ، المعلومات السابقة ضاعت
الوكيل ينسى لماذا أجرى تلك التغييرات. يبدأ بتكرار الأخطاء. يهلوس محتويات الملفات.
استمرارية الحالة: الحل
الوكلاء طويلو المدى يحتاجون ذاكرة خارجية:
# سيء: الاعتماد فقط على السياق
agent.run("أعد هيكلة وحدة المصادقة") # ينسى بعد الجلسة
# جيد: حفظ الحالة خارجياً
class PersistentAgent:
def __init__(self, state_file: str):
self.state_file = state_file
self.state = self.load_state()
def load_state(self) -> dict:
if os.path.exists(self.state_file):
return json.load(open(self.state_file))
return {"completed": [], "current_task": None, "notes": []}
def save_state(self):
json.dump(self.state, open(self.state_file, "w"), indent=2)
def checkpoint(self, task: str, result: dict):
self.state["completed"].append({
"task": task,
"result": result,
"timestamp": datetime.now().isoformat()
})
self.save_state()
أنواع الحالة للحفظ
- حالة التقدم: ما اكتمل، ما التالي
- حالة المعرفة: ما تعلمه الوكيل
- حالة البيئة: تغييرات الملفات، مخرجات الأدوات
- حالة القرار: لماذا اتُخذت الخيارات
متى تحتاج الجلسات حقاً أن تكون طويلة
ليست كل مهمة تحتاج معمارية طويلة المدى. استخدمها عندما:
- المهمة تتطلب استدعاءات API متعددة على وقت ممتد
- العمل يجب أن ينجو من فشل الاتصال
- النتائج تحتاج أن تكون قابلة للتكرار
- بشر متعددون قد يكملون العمل
ملاحظة نيردية: إذا كنت تستطيع الإنهاء في أقل من 50 استدعاء API مع مساحة سياق مريحة، أبقِ الأمور بسيطة. الإفراط في هندسة إدارة الحالة فخ حقيقي.
التالي: معمارية مُثبتة للتعامل مع الجلسات الطويلة. :::