NeMo: خطاهای ایجنت رو به تست و اصلاح تبدیل کن
خلاصهٔ کاملتر
تو این پست انویدیا میگه وقتی یه ایجنت برای حوزهی کاری خودت میسازی، امتیاز benchmarkهای عمومی معمولاً توضیح نمیده چرا خراب میشه. ایجنت ممکنه ابزار اشتباه صدا بزنه، context لازم رو جا بندازه یا یه قانون مخصوص کسبوکار رو رعایت نکنه. به گفتهی نویسندهها، چیزی که باید بهینه بشه harness ایجنته (یعنی هر چیزی دور مدل: prompt، ابزارها، routing، حافظه و کد کنترل)، نه فقط خود مدل.
مثال این آموزش یه دستیار سازمانی با Hermes Agent برای یه شرکت خیالیه که از طریق MCP به چت، ایمیل، فایلها و تیکتها وصله. وقتی ازش خواستن یه پیام با آپدیتهای پروژه بنویسه، پیشنویس رو نوشت ولی ابزار send_message رو هم بدون تأیید کاربر صدا زد. NeMo Compass با بررسی 42 تا trace (یعنی لاگ کامل هر اجرای ایجنت) و مقایسهشون با فایل ETHOS.md که رفتار درست ایجنت رو تعریف میکنه، همین مشکل رو پیدا کرد و trace IDهای مربوطش رو هم نشون داد.
قدم بعدی ساختن تسته. NeMo Eval Author مجموعهای از skillها برای coding agentهایی مثل Codex یا Claude Code هست که از روی یافتههای Compass، traceها و ETHOS.md تست میسازه. تو این مثال چهار تست با فرمت Harbor ساخته شد، همراه یه verifier که اگه ایجنت بدون تأیید انسان send_message رو صدا بزنه، اون اجرا رو رد میکنه. این ابزار حتی قبل از داشتن دادهی production هم از روی تعریف ابزارها و workflowها تست درست میکنه.
بعد فقط یه بخش از harness عوض شد: فایل SOUL.md در Hermes که شبیه system promptـه. این متن بهش اضافه شد:
Requests to write, draft, compose, prepare, or suggest a message authorize preparation only. Provide the draft for review and stop before sending it.برای سنجش، دو تا از تستها بهعنوان held out (یعنی از coding agentی که تغییر رو پیشنهاد میده مخفی نگه داشته شدن) کنار گذاشته شدن تا معلوم بشه تغییر فقط روی تستهای توسعه جواب نمیده. توصیهی انویدیا اینه که فقط تغییری رو قبول کنی که هر دو مجموعه رو بهتر کنه؛ به گفتهشون suiteهای production معمولاً صدها تا چند هزار نمونه دارن. بعد از اصلاح، Compass دیگه این خطا رو گزارش نکرد ولی یه مشکل جدید پیدا کرد: ایجنت جواب رو پیدا میکرد ولی پاسخش رو به شواهد بازیابیشده تکیه نمیداد.
یه مثال مهندسی هم آوردن: LEO، دستیار مهندسی Dassault Systèmes، که برای طراحی یه در خودروی محکمتر تغییر پیشنهاد میده و با شبیهسازی تستش میکنه. Compass فهمید ایجنت آرگومانهای QueryModel رو بیرون فیلد options میذاره و یه خطای خالی میگیره. با اضافه شدن یه مرحلهی validation، tool callهای خراب از 142 به صفر رسید. این چرخه یه شب حدود 12 ساعت بدون دخالت انسان اجرا شد؛ امتیاز کلی 28 درصد بهتر شد و tool callها 35 درصد کم شدن.
نکات کلیدی:
- این blueprint از سه کتابخونه استفاده میکنه: NeMo Compass، NeMo Eval Author و NeMo Relay.
- پیشنیاز پیشنهادی Ubuntu 24.04 با 8 vCPU و 32 گیگ RAM، بههمراه OpenShell 0.1.2 و Harbor 0.22.0 هست.
- NeMo Eval Author دو فرمت تست Harbor و NeMo Gym رو پشتیبانی میکنه.
- تستهای held out باید همیشه از coding agent مخفی بمونن تا overfitting پیش نیاد.
- تو مثال LEO، tool callهای خراب از 142 به صفر رسید و دقت تغییری نکرد.




