اگر امروز به گزارشهای سبز رنگ خط لوله CI خود اعتماد میکنید، احتمالاً توسط سیستم ارزیابی خود فریب داده شدهاید. در حالی که تستهای شما موفقیت را گزارش میکنند، کاربران واقعی با شکستهایی در ابزارها و درخواستهایی با لحنی مواجه میشوند که مجموعه تستهای اولیه شما هرگز پیشبینی نکرده بود. در واقع، مجموعه ارزیابی عامل هوش مصنوعی شما احتمالاً در حال دروغ گفتن به شماست.
این پدیده که «پوسیدگی ارزیابی» (Eval Rot) نام دارد، زمانی رخ میدهد که تیمها به ارزیابی بهعنوان یک عکس ثابت نگاه میکنند، نه یک سیستم زنده. یک مجموعه ارزیابی در ابتدا با مسیرهای موفق و ساده و قصدهای واضح سالم است، اما شش ماه بعد، ابزارهای جدید اضافه شدهاند و شاید ۳۰٪ ترافیک توسط سیستمهای جایگزین (Fallbacks) مدیریت شود، در حالی که CI همچنان همان ۱۲ مثال قدیمی را اجرا میکند. همانطور که در تحلیل قبلی ما دربارهی مدلهای Gemini 3.8 Live و امتیازات بالای کیفیت گفتار آنها اشاره کردیم، تمرکز اکنون از توانایی خام مدل به پایداری گردشکارهای عاملمحور (Agentic) در محیط تولید تغییر کرده است. این رویکرد با این دیدگاه همسو است که تعداد اندکی از گفتگوهای واقعی و پیچیده میتوانند بسیار مؤثرتر از هزاران ارزیابی مصنوعی باشند. مجموعه ارزیابی شما شبیه به یک نقشه است؛ وقتی زمینِ محصول شما تغییر میکند، اگر نقشه بهروز نشود، تبدیل به یک عامل خطر و یک بدهی فنی میشود.
به نقل از راهنمای فنی منتشر شده در ۱۵ سپتامبر ۲۰۲۶، یک برنامه پایدار نیازمند یک خط لوله سختگیرانه است: مشاهده اجرا ← کاندید خطا ← بررسی انسانی ← پاکسازی ← مورد ارزیابی ← CI. برای پیادهسازی این روند در Google Agents CLI (ADK)، توسعهدهندگان باید ابتدا یک رکورد FailureCandidate تعریف کنند. این رکورد محدود، قصد کاربر، نتیجه نهایی (مانند 'wrong_outcome' یا 'failed' یا 'escalated')، اولین نقش شکستخورده (مدل، ابزار، انتقال یا سیاست) و توالی ابزارها را بدون کپی کردن دادههای خام مشتری ردیابی میکند.

استخراج الگوها، نه روایتهای تکموردی
برای جلوگیری از اینکه یک حادثه تکموردی و پرسرصدا بر کل مجموعه تست غالب شود، این راهنما پیشنهاد میکند بهجای روایتها، الگوها را استخراج کنید. توسعهدهندگان میتوانند از یک هش SHA-256 از قصد، نتیجه، کد دلیل و توالی ابزار برای گروهبندی شکستهای مشابه جهت بررسی انسانی استفاده کنند. این امضای مسیر (Trajectory Signature) به حذف موارد تکراری کمک میکند و به تیمها اجازه میدهد بدون اینکه یک قطعی موقت نتایج را منحرف کند، چند نمونه از یک خوشه بزرگ خطا را نگه دارند.
چکلیست ارتقای تست
پیش از آنکه یک شکست به یک مورد تست دائمی تبدیل شود، باید بررسی دقیقی را پشت سر بگذارد. مورد نهایی باید مصنوعی یا بهصورت ایمن تغییر یافته باشد و شامل یک فایل ثابت (Fixture) خاص (مثلاً order-after-policy-window.json) و ابزارهای تعریفشده (اجباری یا ممنوعه) باشد. برای تضمین اینکه این تغییرات باعث اختلال در سیستم نشود، میتوان از لایههای مختلف اعتبارسنجی برای جلوگیری از تخریب کد تولیدی بهره برد. یک چکلیست کاربردی برای ارتقای خطا به تست شامل موارد زیر است:
- تأیید اینکه شکست یک خطای منطقی واقعی است، نه نقص در ابزار اندازهگیری یا زیرساخت (Harness).
- شناسایی کوچکترین ورودی و وضعیت محیطی که خطا را بازتولید میکند.
- حذف تمامی دادههای شخصی، اختصاصی و گذرا.
- برچسبگذاری رفتار مورد انتظار ابزار و نتیجه تجاری.
- ثبت دلیل اهمیت این مورد برای پوشش بلندمدت.
- تعیین مالک و تاریخ دقیق برای بررسی مجدد.
ارزیابی چندبعدی
مدل ارزیابی در Google Agents CLI از پاسخهای ساده «درست/نادرست» فراتر میرود. این سیستم کیفیت را به ابعاد مجزا تقسیم میکند تا اطمینان حاصل شود که یک پاسخ روان، مسیر اشتباه را نمیپوشاند:
- کیفیت مسیر (Trajectory Quality): کیفیت استفاده از ابزار و استفاده چندمرحلهای از آنها.
- کیفیت نتیجه (Outcome Quality): موفقیت در انجام وظیفه در مقابل روانی پاسخ نهایی.
- بررسیهای قطعی (Deterministic Checks): حقایق ثابت، مانند اطمینان از اینکه احراز هویت پیش از اجرا صورت گرفته، یک ابزار محافظتشده در مسیر حضور نداشته یا اجرا در محدوده بودجه فراخوانیهای کنترلشده باقی مانده است.
- درجهبندیهای معنایی (Semantic Graders): قضاوت احتمالی برای کیفیتهای ذهنی مانند مفید بودن یا مبنیسازی (Grounding) — یعنی مدل پاسخ را بر اساس مستندات واقعی داده باشد، نه از خودش ساخته باشد.
برای تیمهایی که از TypeScript استفاده میکنند، AgentInspect (نسخه ۶.۱۹.۰) پیادهسازی عینی برای تبدیل ردپاهای محلی به این حقایق محدود و بررسیهای قطعی مسیر را فراهم میکند. با این حال، طبق گزارش این راهنما، انتخاب دادههای تولید و بررسیهای حریم خصوصی باید بهطور کامل از ابزار ارزیابی جدا باشند تا مناطق اعتماد (Trust Zones) حفظ شوند. این کار مانع از آن میشود که شکستها بدون نظارت، بهطور خاموش به دادههای آموزشی یا تست تبدیل شوند.
سلامت مجموعه و بازنشستگی تستها
این تغییر در رویکرد، فرض بنیادی تستهای هوش مصنوعی را عوض میکند: تعداد زیاد تستها دیگر معیاری برای پوشش بهتر نیست. در واقع، «قوانین بازنشستگی» به اندازه قوانین ارتقا اهمیت دارند. موارد تست باید در شرایط زیر حذف یا بازبینی شوند:
- ویژگی مرتبط دیگر وجود نداشته باشد.
- فایل ثابت (Fixture) به یک طرح (Schema) منسوخ وابسته باشد.
- چندین مورد، یک اصل ثابت (Invariant) یکسان را تست کنند.
- رفتار مورد انتظار اولیه دیگر درست نباشد.
برای مدیریت این موضوع، تیمها باید از EvalCaseMetadata برای ردیابی منشأ، شامل شناسه ارتقا (promotedFrom) و زمان بررسی مجدد (reviewAfter) استفاده کنند. یک داشبورد میتواند پوشش را بر اساس قصد، سن و نقش شکست نمایش دهد و مواردی را که پس از بازبینی سیاستها بررسی نشدهاند، علامتگذاری کند. نظارت بر قیف ارتقا — از کاندیداهای شناسایی شده تا موارد بازنشسته — میتواند مشکلات مالکیت را آشکار کند، بهویژه اگر فاصله بین شناسایی و بررسی بیش از حد زیاد باشد.
برای توسعهدهنده، این به معنای گذار از ذهنیت «تنظیم کن و فراموش کن» به یک عملیات «استخراج خطا» است. هدف بازپخش محیط تولید نیست، بلکه تبدیل شکستهای بررسیشده به موارد رگرسیون کوچک و تحت مالکیت است که سیستم را از تکرار اشتباهات قبلی محافظت میکند.
گام بعدی شما
برای شروع، ۱۰ مورد از مهمترین حوادث اخیر محیط تولید خود را بازبینی کنید. آنها را بر اساس مسیر (Trajectory) گروهبندی کرده، ورودیها را پاکسازی کنید و انتظارات دقیقی از استفاده از ابزار را تعریف کنید که میخواهید در نسخه بعدی اجرا شوند.
اما مدیریت هزینههای استنتاج در این مقیاس از تستها چالش بعدی است — به تحلیل ما درباره بهینهسازی GPU در محیطهای Agentic مراجعه کنید.




گفتگو