تیپ #۳۷
به ایجنت مرورگر نقشه بدهید، نه فقط پیکسل
بیشتر شکستهای ایجنتهای کامپیوتری از ضعف مدل نیست، از این است که مجبورشان میکنیم مختصات پیکسلی حدس بزنند. کافی است هر عنصر قابل کلیک را با یک شماره برچسب بزنید و درخت دسترسپذیری (accessibility tree) را در اختیار ایجنت بگذارید تا بهجای «کلیک روی (۴۱۲، ۲۳۳)» بگوید «کلیک روی عنصر ۱۷» 🖱️. همین تغییر کوچک، عملیات شکننده را به اقدامی قابلآزمون و قابلردیابی تبدیل میکند.
توضیح کاملتر
وقتی یک ایجنت کامپیوتری وارد حلقه اجرا میشود، چرخهاش تقریباً همیشه یکی است: گرفتن تصویر از صفحه، تصمیمگیری مدل، اجرای اقدامی مثل کلیک یا تایپ، و گرفتن تصویر تازه. اگر تنها ورودی مدل همان تصویر خام باشد، باید مختصات هر کلیک را تخمین بزند و این تخمین با کوچکترین تغییر در اندازه پنجره، میزان اسکرول یا یک انیمیشن نیمهکاره خراب میشود. راهحل رایج این است که درخت دسترسپذیری مرورگر به مدل داده شود؛ این درخت برای هر عنصر یک نقش و نام معنایی دارد، مثل «دکمه، ورود به حساب». تکنیک مکمل آن set-of-mark است: روی تصویر، دور هر عنصر قابل تعامل یک کادر شمارهدار میکشیم و مدل فقط شماره را برمیگرداند. نتیجه این میشود که خروجی مدل به شناسه عنصر گره میخورد، پس میتوان آن را لاگ کرد، تست کرد و بعد از هر تغییر رابط کاربری سریع دیباگ کرد. در عمل بهتر است تصویر را برای تأیید بصری نگه دارید، اما اقدامها را روی شناسههای معنایی بنا کنید و اجرای ایجنت را داخل یک محیط ایزوله و محدود نگه دارید.
← بازگشت به همهٔ نکتههای روز