کشف bug پنهان در ۴۰ اجرای موفق AI agent با Signals و Simulations

چرا مهم است

اگر AI agent را در production اجرا می‌کنی، موفقیت نهایی به‌تنهایی کافی نیست. این آزمایش نشان داد بازیابی پنهان از خطا می‌تواند زمان و token مصرف کند و هویت commit را از کنترل خارج کند.

قبل از خواندن، این‌ها را بدان۴ مفهوم
AI agent

سیستمی مبتنی بر مدل AI که برای انجام یک وظیفه، در چند مرحله تصمیم می‌گیرد و از ابزارها استفاده می‌کند.

بیشتر درباره این مفهوم

Sandbox

محیطی جداشده برای اجرای برنامه یا دستورها که دسترسی و اثر آن‌ها را از محیط اصلی محدود می‌کند.

بیشتر درباره این مفهوم

commit

ثبت مجموعه‌ای از تغییرات در تاریخچهٔ git،؜ همراه با اطلاعاتی مانند هویت نویسنده و پیام تغییر.

بیشتر درباره این مفهوم

Telemetry

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

بیشتر درباره این مفهوم

DigitalOcean در آموزش تازه‌ای نشان می‌دهد که موفقیت نهایی یک AI agent لزوماً به معنی درست‌بودن مسیر اجرای آن نیست. در این آزمایش، یک agent مسئول رفع issue و بازکردن pull request،؜ چهل بار اجرا شد. همهٔ اجراها pull request قابل‌استفاده با test‌های موفق تولید کردند، اما در تمام آن‌ها یک bug مشترک پنهان مانده بود.

این agent با نام Fixer،؜ پنج issue را هرکدام هشت بار انجام داد. هر اجرا در یک Sandbox تازه آغاز می‌شد که پس از پایان از بین می‌رفت. مشکل این بود که هویت git در این محیط تنظیم نشده بود؛ بنابراین نخستین commit همیشه شکست می‌خورد. agent سپس نام و ایمیلی به انتخاب خودش تنظیم می‌کرد و دوباره commit می‌زد. نتیجهٔ نهایی موفق بود و این بازیابی در خروجی نهایی دیده نمی‌شد.

طبق مقاله، این رفتار سه هزینه داشت: کاری که باید با یک دستور انجام می‌شد به سه دستور تبدیل می‌شد؛ خواندن خطا و تصمیم‌گیری برای رفع آن، فراخوانی بیشتر مدل و مصرف token داشت؛ و commit‌ها به هویت‌هایی نسبت داده می‌شدند که agent ساخته بود و GitHub نمی‌توانست آن‌ها را به حساب واقعی مرتبط کند.

Signals با بررسی session‌ها، در مجموع ۸۲ رویداد در شش دسته ثبت کرد. خطای ExecutionFailureStateError در هر ۴۰ session دیده شد. مقاله تأکید می‌کند که Telemetry زیرساخت، log درخواست‌ها و dashboard هزینه ممکن است همگی سالم به نظر برسند، درحالی‌که رفتار agent مشکل دارد؛ خواندن دستی متن اجراها هم در مقیاس صدها یا هزاران اجرا عملی نیست.

برای آزمودن اصلاح، Simulations از یک معیار سفارشی، سناریویی با همان prompt محیط production و نتیجهٔ قبول یا رد استفاده کرد. اصلاح شامل چهار متغیر محیطی روی نسخهٔ آزمایشی agent بود. همان simulation به نسخهٔ production امتیاز صفر و به نسخهٔ آزمایشی امتیاز یک داد؛ بنابراین اصلاح پیش از تغییر production بررسی شد. مسیر معرفی‌شده در این آموزش چهار مرحله دارد: پیداکردن مشکل، ساخت آزمون، اصلاح و اعتبارسنجی.

نکته کلیدی

خطای تکرارشونده را به یک آزمون قابل‌تکرار تبدیل کن. مانند این نمونه، همان سناریو را روی نسخهٔ production و نسخهٔ آزمایشی اجرا کن تا اصلاح را پیش از تغییر production بسنجی.

خواندن مقاله اصلی (در زبانه‌ی جدید باز می‌شود)
برچسب‌ها (۴)