عامل میتواند رانندگی کند، اما شما همچنان باید مسیر را بدانید.
بسیاری از افراد میخواهند یک مخزن (repository) و یک هدف را به یک عامل هوش مصنوعی بسپارند و خودشان کنار بروند. آنها خواهان تفویض اختیار کامل هستند.
این یک تله است.
عامل اغلب کار را به خوبی انجام میدهد. مشکل زمانی شروع میشود که چیزی خراب شود. بیلد (build) با شکست مواجه میشود یا رفتار سیستم تغییر میکند. مدل شروع به چرخیدن در حلقههای تکراری میکند. حالا شما با یک مشکل روبرو هستید.
اگر متوجه نشوید که عامل چه چیزی ساخته است، نمیتوانید آن را اصلاح کنید. شما بدون داشتن نقشه، در حال نگاه کردن به کد یک غریبه هستید.
با یک عامل هوش مصنوعی مانند یک توسعهدهنده تازهکار (junior developer) برخورد کنید. وقتی یک تازهکار به بنبست میرسد، نزد شما میآید. شما شبکه ایمنی او هستید.
وقتی عامل شکست میخورد، شما تنها کسی هستید که برای اصلاح اشتباه باقی ماندهاید. اگر شما هم گیر کرده باشید، کار متوقف میشود. شما نمیتوانید دومین توسعهدهنده تازهکاری باشید که در کنار اولی ایستاده است.
سوال اشتباه این است: «چقدر میتوانم کارها را واگذار کنم؟» سوال درست این است: «برای اینکه وقتی خطایی رخ داد بتوانم آن را شکار کنم، چه چیزهایی را باید درک کنم؟»
نیازی نیست تمام خطوط کد را به خاطر بسپارید. این کار هدف از استفاده از یک عامل را از بین میبرد. در عوض، باید بخشهای حیاتی را درک کنید:
• دادهها چگونه در سیستم حرکت میکنند. • وضعیت (state) کجا ذخیره میشود. • مسیر بحرانی منطق برنامه. • بخشهای مختلف سیستم چگونه به هم متصل میشوند.
خود را با این دو سوال بسنجید:
- آیا میتوانم یک درخواست واحد را از ابتدا تا انتها با صدای بلند ردیابی کنم؟
- آیا میتوانم قبل از اینکه خطا را دوباره در مدل کپی کنم، حدس بزنم که خطا کجاست؟
اگر پاسخ شما مثبت است، میتوانید اجازه دهید عامل کار را انجام دهد. به محض اینکه مسیر از کنترل خارج شد، میتوانید کنترل را به دست بگیرید.
اگر پاسخ شما منفی است، شما مالک سیستم نیستید. شما فقط آن را از یک عامل اجاره کردهاید.
اجازه دهید عامل برای افزایش سرعت رانندگی کند. اما دستهایتان را روی اسکلت سیستم نگه دارید. شما میتوانید تایپ کردن را واگذار کنید، اما نمیتوانید نقش آخرین خط دفاعی بودن را واگذار کنید.
منبع: https://dev.to/jaikora/the-agent-can-drive-you-still-need-to-know-the-route-274
