هر مهندس نرمافزاری که شیفت On-Call داشته باشد، حس بد آلارمهای ساعت ۳ نیمهشب را خوب میشناسد؛ بیدار شدن در تاریکی و صرف حداقل ۲۰ دقیقه زمان فقط برای باز کردن تبهای مختلف، بررسی لاگها، مانیتورینگ و پیدا کردن اینکه کدام کامیت یا کوئری مشکل درست کرده است. در این فرآیند مهندس عملاً مثل یک کابل انتقال داده دستی بین لاگها و سیستمها عمل میکند!
شرکت Ramp با راهاندازی یک ایجنت هوشمند به نام OCA این معادله را تغییر داده است. این ایجنت توانسته در حل صدها حادثه مشارکت کند، زمان بررسی خطاها توسط انسان را ۵۰ درصد کاهش دهد و نیاز به تعداد مهندسان درگیر در حادثه را ۳۷ درصد کمتر کند. این سیستم ظرف ۵ دقیقه فرضیه اولیه ریشه خطا را اعلام میکند و در کمتر از ۱۵ دقیقه یک PR پیشنهادی برای رفع باگ آماده میکند.
معماری چنین سیستمهایی بر خلاف تصور اولیه، با نوشتن یک پرامپت حجیم ۲۰ هزار توکنی کار نمیکند؛ مدلها در پرامپتهای شلوغ سردرگم میشوند یا دچار خطای شناختی نتیجهگیری زودهنگام (Premature Closure) شده و اولین علت دمدست را به اشتباه ریشه اصلی حادثه معرفی میکنند. راهکار اصلی استفاده از روش Just-in-Time Prompting و قلابهای اجرایی (Execution Hooks) در یک معماری ۳ لایهای است:
۱. محیط ایزوله و دسترسیهای Read-Only: ایجنت در یک کانتینر ایزوله به لاگها، گیت و Read-Replica دیتابیس دسترسی دارد و خطاها را تحلیل میکند.
۲. لایه بازرسی و انحراف ایمن (Safety Detours): وقتی ایجنت تصمیم میگیرد گزارش نهایی را ثبت کند، کنترلکننده سیستم جلوی آن را میگیرد و یک چکلیست اعتبارسنجی را اجرا میکند تا فرضیه خودش را راستیآزمایی و ابطال کند.
۳. گیت تایید انسانی: ایجنت هرگز خودش تصمیم به دیپلوی مستقیم نمیگیرد؛ خروجی آن یک گزارش شفاف در اسلک و یک PR آماده است و تایید نهایی توسط مهندس انجام میشود.
بررسی عمیقتر این معماری و تلههای پروداکشن آن را در پست جدید خبرنامه بخوانید:
https://mlnotes.substack.com/p/the-anatomy-of-an-ai-on-call-agent
Post #500
413