یک ایجنت هوش مصنوعی فقط با یک پرامپت خوب قابل اعتماد نمی شود. وقتی ایجنت چند مرحله کار می کند، ابزار فرا می خواند و میان چند منبع جستجو می کند، کیفیت نتیجه به اطلاعاتی بستگی دارد که در هر لحظه پیش روی مدل قرار می گیرد. مهندسی کانتکست یعنی انتخاب، مرتب سازی و تازه نگه داشتن همین اطلاعات تا ایجنت بداند هدف چیست، چه چیزی مجاز است و گام بعدی را بر چه پایه ای بردارد.
این موضوع با حافظه ایجنت هوش مصنوعی ارتباط نزدیک دارد، اما یکی نیست. حافظه جایی برای نگهداری داده است؛ مهندسی کانتکست تصمیم می گیرد چه بخش کوچکی از آن داده، همراه کدام دستور و نتیجه ابزار، همین حالا وارد پنجره توجه مدل شود.
مهندسی کانتکست برای ایجنت هوش مصنوعی چیست؟
مهندسی کانتکست مجموعه روش هایی است که ورودی فعال مدل را در طول اجرای ایجنت مدیریت می کند. این ورودی می تواند شامل دستور سیستمی، هدف کاربر، تاریخچه گفتگو، سند بازیابی شده، تعریف ابزار، نتیجه فراخوانی API، یادداشت میانی و قواعد امنیتی باشد. هدف، ریختن همه داده ها در یک پنجره بزرگ نیست؛ هدف ساختن کوچک ترین بسته اطلاعاتی پربازده برای هر تصمیم است.
برای نمونه، ایجنت رسیدگی به درخواست خرید لازم نیست تمام قراردادها، همه مکالمه های پیشین و صدها صفحه دستورالعمل را یکجا بخواند. در گام بررسی درخواست، فقط سطح اختیار کاربر، سیاست خرید مرتبط، اطلاعات فروشنده و سابقه همان پرونده مهم است. در گام ثبت سفارش، تعریف ابزار و قواعد تایید مالی هم به این مجموعه افزوده می شود.
تفاوت مهندسی پرامپت و مهندسی کانتکست
مهندسی پرامپت بیشتر روی شیوه نوشتن دستور تمرکز دارد: نقش ایجنت چیست، خروجی چه ساختاری دارد و چه محدودیتی باید رعایت شود. مهندسی کانتکست دامنه بزرگ تری دارد و می پرسد چه داده، ابزار، نمونه، سابقه و وضعیت اجرایی باید همراه آن دستور دیده شود. یک پرامپت دقیق با کانتکست نامرتبط هنوز می تواند نتیجه ضعیفی بدهد.
| بخش | پرسش اصلی | نمونه |
|---|---|---|
| پرامپت | ایجنت چگونه رفتار کند؟ | پاسخ را کوتاه، مستند و در قالب مشخص بنویس |
| کانتکست | ایجنت بر پایه چه چیزی تصمیم بگیرد؟ | سند معتبر، سابقه پرونده، سطح دسترسی و نتیجه ابزار |
| حافظه | چه چیزی برای بعد بماند؟ | ترجیحات پایدار یا خلاصه تصمیم های پیشین |
| بازیابی | چه داده ای همین حالا پیدا شود؟ | بخش مرتبط از پایگاه دانش یا رکورد سامانه |
اجزای یک کانتکست سالم
۱. هدف و معیار پایان
ایجنت باید بداند چه نتیجه ای به معنی پایان کار است. عبارت کلی مانند «این درخواست را انجام بده» معمولا کافی نیست. خروجی مطلوب، داده های اجباری، شرط توقف و زمانی که باید کار را به انسان ارجاع دهد باید روشن باشند. این نگاه با چرخه هدف تا اقدام در ایجنت پیوند دارد.
۲. ابزارهای کم و روشن
فهرست طولانی ابزارهای مشابه، انتخاب را دشوار می کند. هر ابزار باید نام، ورودی، خروجی، خطا و مرز اختیار شفافی داشته باشد. راهنمای اتصال امن ابزار و API به ایجنت نشان می دهد که قرارداد ابزار چگونه از اجرای اشتباه جلوگیری می کند.
۳. دانش به اندازه نیاز
بازیابی باید بخش مرتبط سند را برگرداند، نه کل مخزن را. در کارهای پیچیده، ایجنت می تواند ابتدا فهرست منابع را ببیند و سپس داده لازم را در همان لحظه واکشی کند. این روش هم مصرف را کم می کند و هم احتمال گم شدن نکته کلیدی میان متن زیاد را پایین می آورد. برای معماری بازیابی، راهنمای Agentic RAG را بخوانید.
۴. وضعیت کوتاه مدت و یادداشت پایدار
نتیجه هر ابزار نباید تا پایان کار به شکل خام در کانتکست بماند. داده های حجیم پس از استفاده می توانند به یک یادداشت دقیق و قابل ارجاع تبدیل شوند. در کارهای طولانی، خلاصه مرحله، تصمیم ها، موارد باز و شناسه منابع باید جدا ذخیره شوند تا ادامه کار به تاریخچه کامل وابسته نباشد.
۵. قواعد امنیت و دسترسی
کانتکست نباید راهی برای دور زدن مجوزها باشد. داده هر کاربر باید پیش از ورود به مدل بر پایه نقش و نیاز همان کار پالایش شود. دستور موجود در یک سند بیرونی نیز نباید هم ارزش دستور اصلی سامانه تلقی شود. برای کنترل های مکمل، چک لیست امنیت و ارزیابی ایجنت کاربردی است.
الگوی عملی برای طراحی کانتکست
- نقشه کار را بنویسید: گام ها، داده لازم و ابزار هر گام را روی یک صفحه مشخص کنید.
- منبع حقیقت را تعیین کنید: برای هر نوع پاسخ، سند یا سامانه معتبر را نام ببرید.
- بودجه کانتکست بسازید: سهم دستور، تاریخچه، بازیابی، ابزار و خروجی میانی را محدود کنید.
- بازیابی مرحله ای را اجرا کنید: ابتدا نشانه های کم حجم و بعد جزییات مورد نیاز را وارد کنید.
- فشرده سازی را بسنجید: خلاصه باید تصمیم های مهم و موارد باز را نگه دارد، نه اینکه فقط متن را کوتاه کند.
- رد اجرا را ذخیره کنید: معلوم باشد هر پاسخ با کدام نسخه دستور، سند و ابزار ساخته شده است.
خطاهای رایج که کیفیت ایجنت را پایین می آورند
سه خطا بیشتر از بقیه دیده می شود. نخست، قراردادن همه اسناد در کانتکست با این تصور که متن بیشتر همیشه بهتر است. دوم، نگه داشتن خروجی خام ابزارها تا پایان اجرا. سوم، ترکیب داده معتبر با متن کنترل نشده بدون مرزبندی. نشانه این خطاها افزایش هزینه، پاسخ های متناقض، فراموش شدن هدف و انتخاب ابزار نامناسب است.
راه حل، تنها بزرگ تر کردن پنجره مدل نیست. باید در پایش و ردگیری ایجنت ثبت شود که چه اطلاعاتی در هر گام وارد شد و کدام بخش در تصمیم نهایی نقش داشت. آزمون های واقعی نیز باید کانتکست کوتاه، بلند، ناقص و آلوده را پوشش دهند.
شاخص های سنجش مهندسی کانتکست
- نرخ رسیدن به نتیجه درست در نخستین اجرا
- تعداد فراخوانی ابزار برای هر کار موفق
- حجم داده مصرف شده در هر گام
- نرخ استفاده از سند درست و تازه
- تعداد مواردی که خلاصه، نکته مهم را از دست داده است
- زمان انجام کار و هزینه هر نتیجه موفق
- نرخ ارجاع درست به کارشناس انسانی
این معیارها باید همراه کیفیت کسب و کار دیده شوند. کم شدن حجم کانتکست زمانی ارزش دارد که دقت، ایمنی و تجربه کاربر حفظ شود.
سوالات متداول
آیا مهندسی کانتکست همان پرامپت نویسی است؟
خیر. پرامپت یکی از اجزای کانتکست است. مهندسی کانتکست علاوه بر دستور، تاریخچه، حافظه، اسناد بازیابی شده، تعریف ابزار و وضعیت اجرای کار را مدیریت می کند.
آیا پنجره کانتکست بزرگ تر همیشه نتیجه بهتری می دهد؟
خیر. داده زیاد و کم ارزش می تواند تمرکز مدل را کم کند. بسته اطلاعاتی کوچک، تازه و مرتبط معمولا برای یک تصمیم مشخص کاراتر است.
مهندسی کانتکست چه زمانی ضروری می شود؟
وقتی ایجنت چند مرحله دارد، از چند ابزار استفاده می کند، با داده تازه کار می کند یا باید کار طولانی را در چند نوبت ادامه دهد، مدیریت کانتکست ضروری است.
برای شروع چه چیزی را اندازه بگیریم؟
دقت نتیجه، ابزارهای فراخوانی شده، منبع پاسخ، حجم داده هر گام، زمان اجرا و تعداد ارجاع های انسانی نقطه شروع مناسبی هستند.