مدلهای زبانی تنها اشتباه نمیکنند - آنها واقعیت را با اطمینان کامل جعل میکنند. یک AI Agent ممکن است ادعا کند که رکوردهای پایگاه دادهای ایجاد کرده که وجود ندارند، یا اصرار داشته باشد که اقداماتی را انجام داده که هرگز تلاش نکرده است. برای تیمهایی که این سیستمها را در محیط تولید مستقر میکنند، این تمایز تعیین میکند که چگونه مشکل را حل کنید.
دیمیترو کیاشکو در تست سیستمهای هوش مصنوعی تخصص دارد. کار او بر یک سوال متمرکز است: چگونه میتوانید به طور سیستماتیک دروغ گفتن یک مدل را شناسایی کنید؟
مشکل تست مزخرفات با اطمینان
نرمافزار سنتی به طور قابل پیشبینی خراب میشود. یک تابع خراب یک خطا برمیگرداند. یک API نادرست پیکربندی شده یک سیگنال خرابی قطعی ارائه میدهد - معمولاً یک کد وضعیت HTTP استاندارد و یک پیام خطای قابل خواندن که توضیح میدهد چه اشتباهی رخ داده است.
مدلهای زبانی به طور متفاوتی خراب میشوند. آنها گزارش میدهند که وظایفی را که هرگز شروع نکردهاند تکمیل کردهاند، اطلاعاتی را از پایگاههای دادهای که هرگز جستجو نکردهاند بازیابی میکنند، و اقداماتی را توصیف میکنند که فقط در دادههای آموزشی آنها وجود دارد. پاسخها صحیح به نظر میرسند. محتوا ساختگی است.
"هر AI Agent طبق دستورالعملهای آماده شده توسط مهندسان عمل میکند"، کیاشکو توضیح میدهد. "ما دقیقاً میدانیم که Agent ما چه کاری میتواند و نمیتواند انجام دهد." این دانش پایه و اساس تمایز توهم از خطا میشود.
اگر یک Agent آموزش دیده برای جستجوی پایگاه داده به طور خاموش شکست بخورد، این یک باگ است. اما اگر نتایج جستجوی دقیقی را بدون لمس پایگاه داده برگرداند؟ این یک توهم است. مدل خروجی قابل قبولی را بر اساس الگوهای آموزشی اختراع کرده است.
تأییدیه در مقابل حقیقت زمینی
رویکرد کیاشکو بر تأیید در برابر وضعیت واقعی سیستم متمرکز است. وقتی یک Agent ادعا میکند که رکوردهایی ایجاد کرده، تستهای او بررسی میکنند که آیا آن رکوردها وجود دارند. پاسخ Agent اهمیتی ندارد اگر سیستم آن را نقض کند.
"من معمولاً از انواع مختلف تستهای منفی - هم واحد و هم یکپارچه - برای بررسی توهمات LLM استفاده میکنم"، او اشاره میکند. این تستها عمداً اقداماتی را درخواست میکنند که Agent مجوز انجام آنها را ندارد، سپس تأیید میکنند که Agent به طور نادرست موفقیت را تأیید نمیکند و وضعیت سیستم بدون تغییر باقی میماند.
یک تکنیک در برابر محدودیتهای شناخته شده تست میکند. یک Agent بدون مجوزهای نوشتن پایگاه داده برای ایجاد رکورد درخواست میشود. تست تأیید میکند که هیچ داده غیرمجازی ظاهر نشده و پاسخ ادعای موفقیت نمیکند.
مؤثرترین روش از دادههای تولید استفاده میکند. "من از تاریخچه مکالمات مشتری استفاده میکنم، همه چیز را به فرمت JSON تبدیل میکنم و تستهای خود را با استفاده از این فایل JSON اجرا میکنم." هر مکالمه به یک مورد تست تبدیل میشود که تجزیه و تحلیل میکند آیا Agentها ادعاهایی مغایر با گزارشهای سیستم مطرح کردهاند.
این الگوهایی را که تستهای مصنوعی از دست میدهند شناسایی میکند. کاربران واقعی شرایطی را ایجاد میکنند که موارد استثنایی را آشکار میسازد. گزارشهای تولید نشان میدهند که مدلها در کجا تحت استفاده واقعی دچار توهم میشوند.
دو استراتژی ارزیابی
کیاشکو از دو رویکرد مکمل برای ارزیابی سیستمهای هوش مصنوعی استفاده میکند.
ارزیابهای مبتنی بر کد تأیید عینی را مدیریت میکنند. "ارزیابهای مبتنی بر کد زمانی ایدهآل هستند که تعریف شکست عینی باشد و بتوان آن را با قوانین بررسی کرد. به عنوان مثال: تجزیه ساختار، بررسی اعتبار JSON یا نحو SQL"، او توضیح میدهد.
اما برخی از شکستها در برابر طبقهبندی باینری مقاومت میکنند. آیا لحن مناسب بود؟ آیا خلاصه وفادار است؟ آیا پاسخ مفید است؟ "ارزیابهای LLM-as-Judge زمانی استفاده میشوند که حالت شکست شامل تفسیر یا ظرافتی باشد که کد نمیتواند آن را ضبط کند."
برای رویکرد LLM-as-Judge، کیاشکو به LangGraph متکی است. هیچ یک از رویکردها به تنهایی کار نمیکنند. چارچوبهای مؤثر از هر دو استفاده میکنند.
آنچه آموزش QA کلاسیک از دست میدهد
مهندسان کیفیت با تجربه وقتی برای اولین بار سیستمهای هوش مصنوعی را تست میکنند با مشکل مواجه میشوند. فرضیاتی که آنها را مؤثر کرده منتقل نمیشوند.
"در QA کلاسیک، ما دقیقاً فرمت پاسخ سیستم را میدانیم، دقیقاً فرمت دادههای ورودی و خروجی را میدانیم"، کیاشکو توضیح میدهد. "در تست سیستم هوش مصنوعی، چنین چیزی وجود ندارد." داده ورودی یک prompt است - و تنوع در نحوه عبارتبندی درخواستها توسط مشتریان بیپایان است.
این نظارت بر ریسک در زمان واقعی را میطلبد. کیاشکو آن را "تحلیل خطای مداوم" مینامد - بررسی منظم نحوه پاسخ Agentها به کاربران واقعی، شناسایی جایی که آنها اطلاعات جعلی تولید میکنند، و بهروزرسانی مجموعه تستها بر این اساس.
چالش با حجم دستورالعمل ترکیب میشود. سیستمهای هوش مصنوعی به promptهای گستردهای نیاز دارند که رفتار و محدودیتها را تعریف میکنند. هر دستورالعمل میتواند به طور غیرقابل پیشبینی با دیگران تعامل داشته باشد. "یکی از مشکلات سیستمهای هوش مصنوعی تعداد زیاد دستورالعملهایی است که باید دائماً بهروزرسانی و تست شوند"، او اشاره میکند.
شکاف دانش قابل توجه است. اکثر مهندسان فاقد درک روشنی از معیارهای مناسب، آمادهسازی مؤثر مجموعه داده، یا روشهای قابل اعتماد برای تأیید خروجیهایی که با هر اجرا تغییر میکنند هستند. "ساخت یک AI Agent دشوار نیست"، کیاشکو مشاهده میکند. "خودکارسازی تست آن Agent چالش اصلی است. از مشاهدات و تجربه من، زمان بیشتری صرف تست و بهینهسازی سیستمهای هوش مصنوعی نسبت به ایجاد آنها میشود."
انتشارهای هفتگی قابل اعتماد
توهمات اعتماد را سریعتر از باگها فرسایش میدهند. یک ویژگی خراب کاربران را ناامید میکند. یک Agent که با اطمینان اطلاعات نادرست ارائه میدهد اعتبار را نابود میکند.
روش تست کیاشکو انتشارهای هفتگی قابل اعتماد را فراهم میکند. تأییدیه خودکار رگرسیونها را قبل از استقرار شناسایی میکند. سیستمهای آموزش دیده و تست شده با دادههای واقعی اکثر درخواستهای مشتری را به درستی مدیریت میکنند.
تکرار هفتگی مزیت رقابتی را هدایت میکند. سیستمهای هوش مصنوعی از طریق افزودن قابلیتها، اصلاح پاسخها، گسترش حوزهها بهبود مییابند.
چرا این برای مهندسی کیفیت اهمیت دارد
شرکتهایی که هوش مصنوعی را یکپارچه میکنند روزانه رشد میکنند. "جهان قبلاً مزایای استفاده از هوش مصنوعی را دیده است، بنابراین بازگشتی وجود ندارد"، کیاشکو استدلال میکند. پذیرش هوش مصنوعی در صنایع تسریع میشود - شرکتهای نوآفرین بیشتری راهاندازی میشوند، شرکتهای بیشتری هوش را در محصولات اصلی یکپارچه میکنند.
اگر مهندسان سیستمهای هوش مصنوعی بسازند، باید بفهمند چگونه آنها را تست کنند. "حتی امروز، ما باید بفهمیم که LLMها چگونه کار میکنند، چگونه AI Agentها ساخته میشوند، چگونه این Agentها تست میشوند، و چگونه این بررسیها را خودکار کنیم."
مهندسی prompt برای مهندسان کیفیت اجباری میشود. تست داده و اعتبارسنجی داده پویا همان مسیر را دنبال میکنند. "اینها باید از هماکنون مهارتهای اساسی مهندسان تست باشند."
الگوهایی که کیاشکو در سراسر صنعت میبیند این تغییر را تأیید میکنند. از طریق کار او در بررسی مقالات فنی در مورد ارزیابی هوش مصنوعی و ارزیابی معماریهای شرکتهای نوآفرین در انجمنهای فنی، همان مسائل به طور مکرر ظاهر میشوند: تیمها در همه جا با مشکلات یکسانی مواجه هستند. چالشهای اعتبارسنجی که او سالها پیش در تولید حل کرده اکنون به دغدغههای جهانی تبدیل میشوند زیرا استقرار هوش مصنوعی مقیاس مییابد.
زیرساخت تست که مقیاس مییابد
روششناسی کیاشکو اصول ارزیابی، ارزیابی مکالمه چندنوبتی و معیارها برای حالتهای شکست مختلف را مورد توجه قرار میدهد.
مفهوم اصلی: تست متنوع. اعتبارسنجی سطح کد خطاهای ساختاری را شناسایی میکند. ارزیابی LLM-as-Judge ارزیابی اثربخشی و دقت سیستم هوش مصنوعی بسته به اینکه کدام نسخه LLM استفاده میشود را فراهم میکند. تجزیه و تحلیل خطای دستی الگوها را شناسایی میکند. تست RAG تأیید میکند که Agentها از زمینه ارائه شده استفاده میکنند به جای اختراع جزئیات.
"چارچوبی که من توصیف میکنم بر اساس مفهوم یک رویکرد متنوع به تست سیستمهای هوش مصنوعی است. ما از پوشش سطح کد، ارزیابهای LLM-as-Judge، تجزیه و تحلیل خطای دستی، و ارزیابی تولید افزوده شده بازیابی استفاده میکنیم." چندین روش اعتبارسنجی که با هم کار میکنند انواع مختلف توهم را شناسایی میکنند که رویکردهای منفرد از دست میدهند.
آنچه بعداً میآید
این حوزه بهترین شیوهها را در زمان واقعی از طریق شکستهای تولید و اصلاح تکراری تعریف میکند. شرکتهای بیشتری هوش مصنوعی تولیدی را مستقر میکنند. مدلهای بیشتری تصمیمات خودمختار میگیرند. سیستمها توانمندتر میشوند، که به این معنی است که توهمات قابل قبولتر میشوند.
اما تست سیستماتیک جعلها را قبل از اینکه کاربران با آنها مواجه شوند شناسایی میکند. تست برای توهمات در مورد کمال نیست - مدلها همیشه موارد استثنایی خواهند داشت که در آنها جعل میکنند. بلکه در مورد شناسایی سیستماتیک جعلها و جلوگیری از رسیدن آنها به تولید است.
تکنیکها زمانی که به درستی اعمال شوند کار میکنند. آنچه گم شده است درک گستردهای از نحوه اجرای آنها در محیطهای تولید است که در آن قابلیت اعتماد اهمیت دارد.
دیمیترو کیاشکو یک توسعهدهنده نرمافزار در تست است که در تست سیستمهای هوش مصنوعی تخصص دارد، با تجربه ساخت چارچوبهای تست برای هوش مصنوعی مکالمهای و Agentهای خودمختار. کار او چالشهای قابلیت اعتماد و اعتبارسنجی در سیستمهای هوش مصنوعی چندحالته را بررسی میکند.


