تصور کنید برنامهنویسی هستید که یک عامل کدنویس خودکار را برای ساخت بازی استخدام کرده است؛ اما چطور بفهمید کدی که مدل تولید کرده واقعاً درست است یا فقط در ظاهر کار میکند؟ یک لایهی ارزیابی توسعهیافته در ۱۵ ژوئیه ۲۰۲۶ ثابت کرد که مجموعههای آزمون سنتی برای تضمین پایداری سامانههای عاملمحور (Agentic) کافی نیستند. این چالش با تحلیلهای ما همسو است که نشان میدهد چرا تستهای نرمافزاری سنتی برای ارزیابی عاملهای هوش مصنوعی شکست میخورند.
وقتی یک بازی پیچیده مثل Match-3 میسازید که هزاران حالت استثنایی دارد، پیدا کردن «پاسخ درست» برای هر حالت تصادفی دشوار است. به نقل از یک گزارش فنی در dev.to، تستهای سنتی زمانی شکست میخورند که توسعهدهنده دقیقاً نداند خروجی هر وضعیت تصادفی باید چه باشد. در اینجاست که هوش مصنوعی زاینده (Generative AI) — شبیه دستیاری است که متنهای زیبا مینویسد اما گاهی در محاسبات ریاضی ساده اشتباه میکند — نیاز به یک ناظر بیرونی دارد.
همانطور که در پوشش پیشین ما دربارهی امنیت مدلهای بازمتن دیدیم، تکیه بر خودِ مدل برای تست کد، ریسک تکرار اشتباهات را بالا میبرد. در واقع، حتی تغییرات ظاهری و بهینهسازیهای کد توسط مدلها میتواند چالشبرانگیز باشد، چرا که تغییرات ظاهری کد در عاملهای هوش مصنوعی ریسک فنی ایجاد میکند. برای حل این مشکل، مکانیزمی به نام «اوراکل تفاضلی» (Differential Oracle) طراحی شده است که بر سه رکن استوار است:
- پیادهسازیهای موازی: نوشتن دو نسخه مستقل از یک منطق؛ یکی با React و دیگری با موتور بومی Java.
- تستهای ناوردا: مجموعهای از قوانین مشترک که هر دو سیستم باید از آنها پیروی کنند.
- تأیید توافق: اگر دو سیستم در مورد وضعیت یک صفحه با هم اختلاف نظر داشته باشند، سیستم بلافاصله یک باگ شناسایی میکند.
بر اساس مستندات این پروژه، این روش توانست خطاهای بحرانی را شکار کند؛ مثلاً جایی که یک مدل اشتباهاً برای ۳ اتصال متوالی جایزه میداد، در حالی که قانون بازی ۴ اتصال بود. برای مقیاسپذیری، این اوراکل در یک بدنه توسعه خودکار قرار گرفته که شامل حلقهای از استراتژی، اجرا، نقد، ارزیابی و عملیات است. در این مسیر، کیفیت مستندات ورودی نقش کلیدی دارد، همانطور که پیشتر بررسی کردیم که مستندات برای ماشینها شرط لازم برای ارتقای عملکرد عاملهاست. همچنین از یک «نردبان خودمختاری با انسان در حلقه» استفاده شده تا هر تغییر غیرقابلبرگشت توسط انسان تأیید شود.
این رویکرد، معیار موفقیت را از «پاس کردن تستها» به «توافق بین دو مدل مستقل» تغییر میدهد. در واقع، تکیه بر دو پیادهسازی مجزا، سیگنال بسیار قویتری نسبت به تستهای خودنویس مدل است. شما میتوانید جزئیات این پیادهسازی و موارد تستِ عملاً اشتباه را در مخزن GitHub این پروژه بررسی کنید تا ببینید تورِ این اوراکل چگونه شکستهای منطقی را میگیرد.
گام بعدی شما
- اگر از عاملهای کدنویس استفاده میکنید، سعی کنید منطق حساس خود را با دو زبان مختلف (مثلاً پایتون و تایپاسکریپت) بازنویسی و خروجیها را مقایسه کنید.
- ساختار «انسان در حلقه» را برای تأیید تغییرات حساس در پایگاه داده مستقر کنید.
- مستندات GitHub پروژه را برای شناسایی الگوهای شکست رایج در مدلهای کدنویس مطالعه کنید.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو