Session

Session تاریخچه‌ی کامل تعاملت با Agent در طول یک مکالمه است و هرچه طولانی‌تر و شلوغ‌تر بشه، مدیریت Context سخت‌تر و کیفیت پاسخ‌ها ممکن است کمتر شود.

این کلمه Session یعنی کل بازه‌ای که از شروع تا پایان با یه Agent تعامل داری.

وقتی یه Session جدید شروع میشه که خب چت شما خالیه و چیزی داخلش وجود نداره. بعد کم‌کم پیام‌های تو، جواب‌های مدل، نتیجه‌ی Toolها و اطلاعاتی که خونده شده بهش اضافه میشن و Session بزرگ‌تر میشه.

در واقع Session همون چیزیه که به مرور Context Window رو پر می‌کنه.

هرچی مکالمه طولانی‌تر بشه، اطلاعات بیشتری داخل Context Window قرار می‌گیره.

از اونجایی که Model یه سیستم Statelessـه، حافظه مدل در واقع داخل همین Session قرار داره. مدل چیزی رو حفظ نمیکنه و فقط Harness تاریخچه‌ Session رو توی هر Model Provider Request دوباره براش می‌فرسته.

وقتی Session تموم میشه، این حافظه هم از بین میره. اگه یه Session جدید باز کنی، Agent دیگه چیزی از مکالمه‌ی قبلی نمی‌دونه و تنها چیزی که باقی می‌مونه فایل‌هاییه که روی Filesystem ذخیره شدن. به همین خاطر فایل‌هایی مثل AGENTS.md یا Memory System می‌تونن بین Session های مختلف اطلاعات رو حفظ کنن.

یه نکته‌ی مهم اینه که هر چیزی که داخل یه Session اتفاق میفته، روی جواب‌های بعدی هم اثر میذاره. اگه چند کار کاملا بی‌ربط رو داخل یه Session انجام بدی، اطلاعاتشون قاطی هم میشه و ممکنه کیفیت جواب‌ها پایین بیاد.

برای همین معمولا بهتره هر Session فقط روی یه موضوع یا یه تسک تمرکز داشته باشه و بعد از تموم شدن اون تسک، یه Session جدید شروع کنی.