Computer Use چیست؟ کنترل کامپیوتر و مرورگر با هوش مصنوعی
Computer Use قابلیتی است که به عامل هوش مصنوعی اجازه میدهد رابط کاربری کامپیوتر یا مرورگر را ببیند، درباره مرحله بعد تصمیم بگیرد و اقداماتی مانند کلیک، تایپ و پیمایش را اجرا کند. در این راهنما معماری، کاربردها و ساخت آن با API را بررسی میکنیم.
چتباتهای معمولی میتوانند سؤال را پاسخ دهند، متن بنویسند یا درباره انجام یک کار توضیح دهند؛ اما خودشان آن کار را در کامپیوتر انجام نمیدهند.
برای مثال، یک چتبات ممکن است مراحل ثبت اطلاعات در یک پنل را توضیح دهد، اما نمیتواند صفحه را باز کند، فیلدها را پیدا کند، اطلاعات را بنویسد و دکمه ثبت را بزند.
Computer Use این محدودیت را تغییر میدهد.
Computer Use قابلیتی است که به مدل هوش مصنوعی اجازه میدهد وضعیت یک رابط کاربری را مشاهده کند و اقداماتی مانند کلیک، تایپ، پیمایش، انتخاب گزینه و جابهجایی میان صفحات را پیشنهاد دهد. یک نرمافزار واسط نیز این اقدامات را در مرورگر، محیط دسکتاپ یا دستگاه مجازی اجرا میکند.
این فناوری یکی از اجزای مهم نسل جدید AI Agentهاست؛ عاملهایی که فقط پاسخ نمیدهند، بلکه میتوانند برای رسیدن به یک هدف، مجموعهای از اقدامات را انجام دهند.
Computer Use چیست؟
Computer Use به قابلیت استفاده مدل هوش مصنوعی از رابط گرافیکی کامپیوتر گفته میشود.
یک مدل دارای این قابلیت میتواند براساس Screenshot، ساختار صفحه یا اطلاعات رابط کاربری تشخیص دهد:
- چه برنامه یا صفحهای باز است؟
- چه دکمهها و فیلدهایی وجود دارند؟
- برای انجام هدف کاربر باید چه اقدامی انجام شود؟
- نتیجه اقدام قبلی چه بوده است؟
- آیا عملیات موفق بوده یا باید روش دیگری امتحان شود؟
اقداماتی که یک Computer Using Agent میتواند پیشنهاد دهد عبارتاند از:
- بازکردن یک آدرس
- کلیک روی دکمه
- تایپ داخل فرم
- انتخاب گزینه
- پیمایش صفحه
- رفتن به صفحه قبل
- بازکردن تب جدید
- بارگذاری فایل
- خواندن پیام خطا
- گرفتن Screenshot
- انتظار برای بارگذاری صفحه
- تحویل کنترل به کاربر
خود مدل معمولاً مستقیماً موس و صفحهکلید سیستم را کنترل نمیکند. مدل تصمیم میگیرد چه اقدامی لازم است و یک لایه اجرایی مانند Playwright، محیط Sandbox یا ابزار اختصاصی آن اقدام را انجام میدهد.
Computer Use چگونه کار میکند؟
Computer Use معمولاً به شکل یک چرخه چندمرحلهای اجرا میشود:
- دریافت هدف از کاربر
- مشاهده وضعیت صفحه
- تحلیل رابط کاربری
- انتخاب اقدام بعدی
- اجرای اقدام توسط نرمافزار
- دریافت وضعیت جدید
- بررسی نتیجه
- ادامه چرخه تا تکمیل یا توقف کار
این چرخه با عنوان Observe، Reason، Act شناخته میشود؛ یعنی مشاهده، تصمیمگیری و اقدام.
برای مثال، کاربر میگوید:
وارد پنل آزمایشی شو، فهرست سفارشها را باز کن و تعداد سفارشهای در انتظار را گزارش بده.
عامل ممکن است این مراحل را طی کند:
- صفحه پنل را باز میکند.
- Screenshot یا ساختار صفحه را دریافت میکند.
- گزینه «سفارشها» را پیدا میکند.
- روی آن کلیک میکند.
- منتظر بارگذاری جدول میماند.
- فیلتر وضعیت را پیدا میکند.
- گزینه «در انتظار» را انتخاب میکند.
- تعداد نتایج را میخواند.
- گزارش نهایی را به کاربر میدهد.
اگر صفحه تغییر کند یا پیامی غیرمنتظره نمایش داده شود، مدل میتواند وضعیت جدید را دوباره تحلیل کند.
اجزای اصلی یک سامانه Computer Use
مدل هوش مصنوعی
مدل نقش تصمیمگیرنده را دارد. این مدل باید بتواند هدف کاربر، وضعیت فعلی و نتیجه اقدامات قبلی را درک کند.
بسته به معماری، مدل ممکن است از این قابلیتها استفاده کند:
- ورودی تصویر
- درک Screenshot
- Reasoning چندمرحلهای
- Function Calling
- Structured Output
- حافظه وضعیت
- انتخاب Tool
هر مدل دارای ورودی تصویر الزاماً برای Computer Use مناسب نیست. مدل باید بتواند رابطه میان مشاهده، هدف و اقدام بعدی را نیز مدیریت کند.
محیط اجرا
عامل نباید بدون واسطه به کامپیوتر اصلی متصل شود. معمولاً عملیات در یکی از این محیطها اجرا میشوند:
- مرورگر کنترلشده
- Browser Context مجزا
- Container
- ماشین مجازی
- Remote Desktop
- محیط آزمایشی
- دستگاه شبیهسازیشده
محیط اجرا باید محدوده دسترسی عامل را مشخص کند.
Action Handler
Action Handler دستور مدل را به عملیات واقعی تبدیل میکند.
برای مثال، مدل چنین خروجیای میدهد:
{
"action": "click",
"target": "دکمه ورود"
}
لایه اجرایی باید دکمه موردنظر را پیدا و روی آن کلیک کند. مدل صرفاً اقدام را پیشنهاد داده است؛ اجرای واقعی بر عهده برنامه میزبان است.
سیستم مشاهده
عامل برای تصمیمگیری باید وضعیت صفحه را دریافت کند. این وضعیت ممکن است به یکی از شکلهای زیر ارائه شود:
- Screenshot
- Accessibility Tree
- DOM خلاصهشده
- متن صفحه
- فهرست عناصر تعاملی
- ترکیب Screenshot و ساختار صفحه
حافظه و وضعیت
عامل باید بداند:
- هدف اصلی چیست؟
- چه اقداماتی انجام شدهاند؟
- اکنون در کدام مرحله قرار دارد؟
- نتیجه هر اقدام چه بوده است؟
- چند بار یک مرحله تکرار شده است؟
- چه محدودیتهایی وجود دارند؟
بدون مدیریت State، عامل ممکن است یک اقدام را چند بار تکرار یا هدف اصلی را فراموش کند.
کنترل و تأیید کاربر
برای بعضی اقدامات بهتر است اجرای خودکار متوقف و تأیید کاربر دریافت شود؛ بهویژه پیش از:
- ارسال نهایی فرم
- خرید
- پرداخت
- حذف اطلاعات
- انتشار محتوا
- ارسال پیام
- تأیید قرارداد
- تغییر تنظیمات حساب
عامل میتواند اطلاعات را آماده کند، اما اقدام نهایی را به کاربر بسپارد.
سه روش اصلی کنترل رابط کاربری
کنترل تصویری با Screenshot
در این روش، عامل تصویر صفحه را مشاهده و مختصات عنصر موردنظر را تعیین میکند.
برای مثال:
{
"action": "click",
"x": 620,
"y": 410
}
مزایا:
- امکان کار با رابطهای فاقد ساختار مناسب
- شباهت بیشتر به نحوه مشاهده انسان
- امکان تعامل با Canvas، تصویر و محیط Remote Desktop
- قابلاستفاده برای بعضی نرمافزارهای دسکتاپ
محدودیتها:
- حساسیت به رزولوشن و اندازه پنجره
- احتمال کلیک روی مختصات اشتباه
- هزینه بیشتر پردازش تصویر
- دشواری خواندن عناصر کوچک
- کاهش پایداری هنگام تغییر چیدمان
کنترل ساختاریافته با DOM یا Accessibility Tree
در این روش، عامل بهجای تصویر کامل، ساختار عناصر صفحه را دریافت میکند.
نمونه ساده:
heading "ورود"
textbox "شماره موبایل" [ref=e12]
button "دریافت کد" [ref=e15]
عامل میتواند بهجای حدسزدن مختصات، عنصر e15 را انتخاب کند.
Playwright MCP برای تعامل Agent با صفحات وب از Accessibility Snapshot استفاده میکند. این روش اطلاعاتی مانند نقش، نام و شناسه عناصر تعاملی را در قالبی ساختاریافته به مدل ارائه میدهد.
مزایا:
- مصرف کمتر نسبت به Screenshot کامل
- انتخاب دقیقتر عناصر
- پایداری بیشتر
- مناسب فرمها و صفحات استاندارد
- امکان استفاده بدون مدل Vision
محدودیتها:
- بعضی عناصر در Accessibility Tree دیده نمیشوند.
- رابطهای Canvas یا گرافیکی ممکن است ساختار کافی نداشته باشند.
- کیفیت نتیجه به ساخت صحیح صفحه وابسته است.
- برای نرمافزار دسکتاپ همیشه قابلاستفاده نیست.
روش ترکیبی
در معماری Hybrid، عامل ابتدا از ساختار صفحه استفاده میکند و فقط برای عناصر نامشخص یا گرافیکی به Screenshot مراجعه میکند.
برای مثال:
- عناصر صفحه از Accessibility Tree استخراج میشوند.
- عامل تلاش میکند دکمه را با نام یا نقش پیدا کند.
- اگر عنصر موجود نبود، Screenshot گرفته میشود.
- مدل Vision محل احتمالی عنصر را تشخیص میدهد.
- پس از اجرا، وضعیت صفحه دوباره بررسی میشود.
این روش میتواند میان هزینه، دقت و پوشش رابطهای مختلف تعادل ایجاد کند.
تفاوت Computer Use با AI Agent چیست؟
AI Agent یک مفهوم گستردهتر است. عامل هوش مصنوعی میتواند برای رسیدن به هدف، تصمیم بگیرد، ابزار فراخوانی کند، داده بخواند و چند مرحله را هماهنگ کند.
Computer Use یکی از ابزارهایی است که Agent میتواند در اختیار داشته باشد.
برای مثال، یک Agent ممکن است از این ابزارها استفاده کند:
- جستوجوی وب
- پایگاه داده
- API داخلی
- ماشین حساب
- اجرای کد
- ارسال ایمیل
- مرورگر
- Computer Use
بنابراین هر Computer Using Agent یک نوع AI Agent است، اما همه Agentها نیاز ندارند رابط کامپیوتر را کنترل کنند.
تفاوت Computer Use با Function Calling چیست؟
در Function Calling، مدل یک تابع از پیش تعریفشده را فراخوانی میکند.
برای مثال:
{
"name": "get_order",
"arguments": {
"order_id": "12345"
}
}
برنامه مستقیماً اطلاعات سفارش را از API یا پایگاه داده دریافت میکند.
در Computer Use، مدل ممکن است وارد پنل شود، صفحه سفارشها را باز کند، شماره سفارش را جستوجو و اطلاعات را از رابط کاربری بخواند.
در بیشتر پروژهها، API مستقیم انتخاب بهتری است؛ زیرا سریعتر، پایدارتر و قابلکنترلتر است. Computer Use زمانی مفید است که:
- سرویس API ندارد.
- API تمام عملیات لازم را پوشش نمیدهد.
- نرمافزار قدیمی است.
- فقط رابط گرافیکی در دسترس است.
- فرایند میان چند نرمافزار انجام میشود.
- عملیات به درک بصری رابط نیاز دارد.
تفاوت Computer Use با RPA چیست؟
RPA یا Robotic Process Automation برای اجرای فرایندهای تکراری براساس قواعد و مراحل از پیش تعریفشده استفاده میشود.
| ویژگی | RPA سنتی | Computer Use مبتنی بر هوش مصنوعی |
|---|---|---|
| تعریف مراحل | دقیق و از پیش نوشتهشده | براساس هدف و وضعیت صفحه |
| انعطاف در تغییر صفحه | محدود | بیشتر، اما بدون خطا نیست |
| درک زبان طبیعی | معمولاً محدود | دارد |
| تصمیمگیری پویا | محدود | امکانپذیر |
| رفتار قابلپیشبینی | بیشتر | کمتر |
| مناسب فرایند ثابت | بسیار مناسب | ممکن است غیرضروری باشد |
| مناسب رابط متغیر | شکنندهتر | انعطافپذیرتر |
| نیاز به ارزیابی انسانی | بسته به فرایند | معمولاً بیشتر |
بهترین معماری میتواند ترکیبی باشد: مراحل ثابت با کد یا RPA اجرا شوند و تصمیمهای متغیر به مدل سپرده شوند.
تفاوت Computer Use با Browser Automation چیست؟
ابزارهایی مانند Playwright و Selenium از سالها قبل امکان خودکارسازی مرورگر را فراهم کردهاند. توسعهدهنده معمولاً باید Selector، مسیر و شرایط هر مرحله را در کد بنویسد.
در Browser Agent مبتنی بر هوش مصنوعی، مدل میتواند براساس هدف و وضعیت صفحه تصمیم بگیرد که کدام ابزار Playwright فراخوانی شود.
برای مثال، در اتوماسیون سنتی نوشته میشود:
page.get_by_role("button", name="ورود").click()
در معماری Agentic، مدل ابتدا Snapshot صفحه را میخواند، دکمه مناسب را انتخاب میکند و سپس برنامه همان اقدام را با Playwright اجرا میکند.
Playwright همچنان موتور اجرای مرورگر است؛ مدل جایگزین آن نمیشود.
کاربردهای Computer Use
ورود اطلاعات در سامانههای قدیمی
بعضی نرمافزارهای سازمانی API مناسبی ندارند. عامل میتواند اطلاعات را از یک منبع بخواند و فرمهای سامانه مقصد را تکمیل کند.
آزمون رابط کاربری
Computer Use میتواند سناریوهای آزمایشی را مانند یک کاربر اجرا کند:
- ثبتنام
- ورود
- جستوجو
- تکمیل فرم
- افزودن محصول به سبد
- بررسی خطاها
- گرفتن Screenshot
- تهیه گزارش تست
برای تستهای ثابت و تکرارشونده، اسکریپتهای مستقیم Playwright معمولاً پایدارترند. عامل هوش مصنوعی بیشتر برای آزمون اکتشافی یا رابطهای متغیر مفید است.
جمعآوری اطلاعات از پنلهای مجاز
عامل میتواند با مجوز کاربر، اطلاعات موردنیاز را از چند سامانه جمعآوری و در یک گزارش ترکیب کند.
شرایط استفاده سایت، محدودیت نرخ و مجوز دسترسی باید رعایت شوند.
تکمیل پیشنویس فرم
عامل میتواند اطلاعات را در فرم وارد کند و پیش از ثبت نهایی، صفحه را برای بررسی کاربر نمایش دهد.
پشتیبانی مشتری
عامل میتواند مراحل گزارششده توسط کاربر را در محیط آزمایشی تکرار کند، Screenshot بگیرد و نقطه بروز خطا را مشخص کند.
عملیات فروش و CRM
در سامانههای فاقد API، عامل میتواند اطلاعات عمومی Lead را جمعآوری، فرم CRM را آماده یا پیشنویس پیگیری را ثبت کند. ارسال نهایی پیام بهتر است براساس سیاست سازمان کنترل شود.
انتقال اطلاعات میان نرمافزارها
برای مثال، اطلاعات یک فایل یا پنل میتواند پس از استخراج و اعتبارسنجی وارد سامانه دیگری شود.
دستیار کار با نرمافزار
کاربر میتواند بهجای پیداکردن دستی گزینهها، هدف خود را با زبان طبیعی بیان کند:
گزارش فروش این ماه را باز کن و خروجی CSV بگیر.
عامل رابط را بررسی و مراحل لازم را اجرا میکند.
Computer Use برای چه کارهایی مناسب نیست؟
این فناوری همیشه بهترین گزینه نیست.
در شرایط زیر بهتر است از API یا اسکریپت مستقیم استفاده شود:
- API رسمی و پایدار وجود دارد.
- فرایند کاملاً ثابت است.
- سرعت بسیار بالا لازم است.
- هزاران عملیات یکسان باید اجرا شوند.
- نتیجه باید کاملاً قطعی و تکرارپذیر باشد.
- هر خطا میتواند خسارت جدی ایجاد کند.
- رابط کاربری مرتب تغییر میکند و قابلارزیابی نیست.
- دسترسی عامل بیش از نیاز وظیفه است.
Computer Use معمولاً کندتر و پرهزینهتر از API مستقیم است؛ زیرا پس از هر اقدام باید وضعیت جدید صفحه دریافت و تحلیل شود.
محدودیتهای Computer Using Agent
کلیک روی عنصر اشتباه
اگر رابط شلوغ باشد یا چند دکمه مشابه وجود داشته باشد، عامل ممکن است هدف اشتباهی را انتخاب کند.
گمکردن وضعیت
در فرایندهای طولانی، مدل ممکن است مرحله فعلی یا نتیجه اقدام قبلی را نادرست تفسیر کند.
تغییر رابط کاربری
تغییر نام دکمه، محل عناصر، نمایش Popup یا طراحی جدید میتواند گردش کار را مختل کند.
CAPTCHA و احراز هویت
CAPTCHA برای جلوگیری از اتوماسیون طراحی شده است و نباید برای دورزدن آن تلاش شود. مرحله احراز هویت، OTP یا تأیید هویت میتواند به کاربر واگذار شود.
هزینه و زمان اجرا
هر چرخه ممکن است شامل Screenshot، ورودی مدل، تصمیمگیری و اجرای ابزار باشد. یک کار چندمرحلهای میتواند چندین درخواست API ایجاد کند.
تفاوت میان موفقیت ظاهری و واقعی
کلیک روی دکمه به معنی انجام موفق عملیات نیست. عامل باید نتیجه را بررسی کند:
- پیام موفقیت نمایش داده شده است؟
- رکورد در فهرست وجود دارد؟
- URL تغییر کرده است؟
- پاسخ شبکه موفق بوده است؟
- خطایی در صفحه وجود دارد؟
روشهای کنترل عملکرد Agent
تعیین محدوده سایتها
عامل فقط باید به دامنهها و محیطهای موردنیاز دسترسی داشته باشد.
محدودکردن تعداد مراحل
برای هر Run سقف مرحله تعیین کنید تا عامل در حلقه بیپایان قرار نگیرد.
تعریف اقدامات نیازمند تأیید
اقدامات حساس باید قبل از اجرا متوقف شوند و تأیید کاربر را دریافت کنند.
استفاده از محیط آزمایشی
پیش از استفاده در حساب واقعی، گردش کار را روی محیط Test، داده ساختگی و حساب محدود ارزیابی کنید.
ثبت تمام اقدامات
برای هر مرحله این اطلاعات را نگهداری کنید:
- وضعیت صفحه
- تصمیم مدل
- Tool Call
- نتیجه اجرا
- خطا
- زمان
- تعداد تلاش
- مصرف مدل
امکان توقف فوری
کاربر یا سیستم باید بتواند اجرای Agent را در هر مرحله متوقف کند.
معماری ساخت Computer Using Agent
یک معماری ساده شامل این بخشهاست:
دریافت هدف
کاربر هدف و محدودیتها را مشخص میکند:
وارد سایت آزمایشی شو، فرم تماس را با اطلاعات نمونه تکمیل کن، اما آن را ارسال نکن.
ایجاد محیط مرورگر
یک Browser Context جداگانه با Playwright ساخته میشود. عامل نباید به تمام Sessionها و حسابهای مرورگر شخصی کاربر دسترسی داشته باشد.
دریافت Snapshot
برنامه Accessibility Tree یا Screenshot صفحه را میگیرد.
تصمیمگیری مدل
مدل وضعیت را همراه با هدف و تاریخچه اقدامات دریافت میکند و اقدام بعدی را در قالب JSON برمیگرداند.
اعتبارسنجی اقدام
برنامه بررسی میکند:
- Action در فهرست مجاز است؟
- دامنه مجاز است؟
- تعداد مراحل از سقف عبور نکرده است؟
- اقدام به تأیید کاربر نیاز دارد؟
- آرگومانها معتبر هستند؟
اجرای اقدام
Playwright یا ابزار کنترل رابط، اقدام تأییدشده را اجرا میکند.
مشاهده نتیجه
پس از اجرا، Snapshot جدید گرفته و دوباره به مدل داده میشود.
تکمیل یا توقف
چرخه تا یکی از این وضعیتها ادامه پیدا میکند:
- هدف تکمیل شد.
- کاربر باید اقدامی انجام دهد.
- تأیید لازم است.
- خطا قابل بازیابی نیست.
- سقف مراحل تمام شده است.
- کاربر اجرای Agent را متوقف کرده است.
نقش API در Computer Use
یک سامانه Computer Use معمولاً از دو لایه مستقل تشکیل میشود:
مدل هوش مصنوعی
↓
انتخاب اقدام بعدی
↓
برنامه واسط و کنترلها
↓
Playwright یا محیط دسکتاپ
↓
مشاهده نتیجه و ارسال مجدد به مدل
مدل وظیفه تحلیل و تصمیمگیری را انجام میدهد. ابزارهایی مانند Playwright عملیات مرورگر را اجرا میکنند.
با استفاده از API درواره میتوان مدلهای دارای قابلیتهای لازم مانند Reasoning، ورودی تصویر یا Tool Calling را برای بخش تصمیمگیری آزمایش کرد.
درواره خود یک مرورگر یا محیط آماده Computer Use نیست. توسعهدهنده باید لایه اجرا، Playwright، مدیریت State، کنترل دسترسی و تأیید اقدامات را در نرمافزار خود پیادهسازی کند.
مزیت استفاده از API یکپارچه این است که میتوان مدلهای مختلف را برای وظایف زیر مقایسه کرد:
- درک Screenshot
- انتخاب عنصر صحیح
- تولید JSON معتبر
- پیروی از محدودیتها
- برنامهریزی چندمرحلهای
- تشخیص تکمیل وظیفه
- کیفیت زبان فارسی
- هزینه هر Run
- زمان پاسخ
نمونه تعریف اقدامات عامل
برای شروع میتوان مجموعه محدودی از اقدامات را تعریف کرد:
{
"allowed_actions": [
{
"name": "navigate",
"arguments": {
"url": "string"
}
},
{
"name": "click",
"arguments": {
"element_ref": "string"
}
},
{
"name": "type",
"arguments": {
"element_ref": "string",
"text": "string"
}
},
{
"name": "snapshot",
"arguments": {}
},
{
"name": "finish",
"arguments": {
"summary": "string"
}
},
{
"name": "request_user_confirmation",
"arguments": {
"reason": "string"
}
}
]
}
در نسخه اولیه بهتر است تعداد ابزارها کم باشد. ابزارهای زیاد انتخاب اقدام را دشوارتر و Context مدل را شلوغتر میکنند.
نمونه دستور سیستمی برای Browser Agent
تو عامل کنترل یک مرورگر آزمایشی هستی.
هدف کاربر را با کمترین تعداد اقدام انجام بده.
قوانین:
- فقط از اقدامات تعریفشده استفاده کن.
- فقط روی دامنههای مجاز کار کن.
- اطلاعاتی را که در صفحه وجود ندارند حدس نزن.
- بعد از هر اقدام، منتظر Snapshot جدید بمان.
- اگر عنصر موردنظر پیدا نشد، همان اقدام را بدون تغییر تکرار نکن.
- قبل از ارسال فرم، خرید، حذف یا انتشار، تأیید کاربر را درخواست کن.
- اگر هدف کامل شد، از finish استفاده کن.
- خروجی خارج از JSON تولید نکن.
این دستور بهتنهایی برای ایمن یا قابلاعتمادشدن سیستم کافی نیست. محدودیتها باید در کد برنامه نیز اجرا شوند.
اتصال مدل از طریق API درواره
در مرحله تصمیمگیری میتوان وضعیت صفحه را به یک مدل سازگار ارسال کرد:
import os
import requests
API_KEY = os.environ["DARVAREH_API_KEY"]
MODEL_ID = os.environ["DARVAREH_MODEL_ID"]
page_snapshot = """
Page URL: https://example.test/contact
- heading "تماس با ما" [ref=e1]
- textbox "نام" [ref=e2]
- textbox "ایمیل" [ref=e3]
- textbox "پیام" [ref=e4]
- button "ارسال" [ref=e5]
"""
goal = """
فرم را با اطلاعات نمونه تکمیل کن، اما دکمه ارسال را نزن.
"""
response = requests.post(
"https://api.darvareh.ir/v1/chat/completions",
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
},
json={
"model": MODEL_ID,
"messages": [
{
"role": "system",
"content": (
"تو برنامهریز یک Browser Agent آزمایشی هستی. "
"فقط یک اقدام بعدی را در قالب JSON پیشنهاد بده. "
"اقدامات مجاز: type، click، finish و "
"request_user_confirmation."
),
},
{
"role": "user",
"content": f"""
هدف:
{goal}
وضعیت فعلی صفحه:
{page_snapshot}
اقدام بعدی را انتخاب کن.
""",
},
],
"temperature": 0.1,
},
timeout=90,
)
response.raise_for_status()
result = response.json()
print(result["choices"][0]["message"]["content"])
این نمونه فقط بخش تصمیمگیری را نشان میدهد. برای اجرای واقعی باید خروجی JSON اعتبارسنجی و اقدام مجاز با Playwright اجرا شود.
پیش از استفاده، باید بررسی کنید مدل انتخابشده قابلیتهای موردنیاز پروژه را دارد. Model ID و مشخصات مدلهای فعال ممکن است تغییر کنند.
چگونه هزینه Computer Use را کاهش دهیم؟
از ساختار صفحه بهجای تصویر استفاده کنید
اگر Accessibility Snapshot اطلاعات کافی دارد، لازم نیست پس از هر مرحله Screenshot کامل به مدل ارسال شود.
Snapshot را خلاصه کنید
منوها، Footer و عناصر نامرتبط میتوانند پیش از ارسال حذف شوند.
مدل را براساس مرحله انتخاب کنید
مدل اقتصادی میتواند صفحات ساده و فرمها را مدیریت کند. مدل قویتر فقط برای شرایط مبهم یا تصمیمهای پیچیده استفاده شود.
تعداد مراحل را محدود کنید
یک برنامه اولیه بسازید و برای هر مرحله سقف تلاش تعیین کنید.
اقدامات قطعی را با کد اجرا کنید
اگر مسیر مشخص است، اجرای مستقیم Playwright ارزانتر از پرسیدن هر مرحله از مدل خواهد بود.
وضعیتهای شناختهشده را Cache کنید
برای صفحات ثابت میتوان عناصر و مسیرهای موفق را ذخیره کرد و فقط هنگام تغییر صفحه از مدل کمک گرفت.
چگونه Computer Use را ارزیابی کنیم؟
برای ارزیابی، مجموعهای از وظایف واقعی اما کنترلشده بسازید.
نمونه وظایف:
- بازکردن یک صفحه مشخص
- جستوجوی یک رکورد
- تکمیل فرم بدون ارسال
- استخراج داده جدول
- تغییر یک فیلتر
- بارگذاری فایل نمونه
- تشخیص پیام خطا
- توقف پیش از اقدام نهایی
معیارهای مهم:
- نرخ تکمیل موفق وظیفه
- تعداد اقدامات تا تکمیل
- نرخ کلیک اشتباه
- تعداد تکرارها
- زمان هر Run
- هزینه هر Run
- نرخ نیاز به دخالت کاربر
- کیفیت گزارش نهایی
- رعایت محدودیتها
- توانایی توقف صحیح
موفقیت یک کلیک کافی نیست؛ باید نتیجه کامل کسبوکار اندازهگیری شود.
آیا Computer Use جایگزین API میشود؟
خیر. API همچنان روش ترجیحی ارتباط نرمافزارهاست.
API معمولاً:
- سریعتر است.
- ساختار مشخصتری دارد.
- خطای کمتری دارد.
- راحتتر تست میشود.
- برای حجم بالا مناسبتر است.
- وابستگی کمتری به ظاهر رابط دارد.
Computer Use بیشتر نقش یک لایه تکمیلی را دارد؛ بهخصوص برای نرمافزارهایی که API ندارند یا بخشی از فرایند فقط از طریق رابط کاربری انجام میشود.
معماری مناسب معمولاً این اولویت را دارد:
- API رسمی
- اتصال مستقیم به پایگاه داده یا سرویس داخلی مجاز
- ابزارهای ساختاریافته
- اسکریپت ثابت مرورگر
- Computer Use برای مراحل پویا یا فاقد API
آینده Computer Using Agentها
Computer Use در حال حرکت از اجرای چند کلیک ساده به سمت عاملهایی است که میتوانند گردش کارهای طولانیتر را انجام دهند.
روندهای مهم این حوزه عبارتاند از:
- ترکیب Vision و Accessibility Tree
- کنترل مرورگر، موبایل و دسکتاپ
- Agentهای دارای حافظه
- اجرای چند وظیفه موازی
- اتصال Computer Use به MCP
- تولید و اجرای خودکار تست
- یادگیری از اجرای موفق قبلی
- انتقال هوشمند کنترل به انسان
- ثبت و بازپخش کامل اقدامات
- ترکیب API و رابط گرافیکی در یک Workflow
بااینحال، ارزش واقعی این فناوری به تعداد کلیکهایی که انجام میدهد وابسته نیست. معیار مهم این است که آیا میتواند یک فرایند واقعی را با هزینه، زمان و نرخ خطای قابلقبول تکمیل کند یا خیر.
چکلیست ساخت Computer Using Agent
پیش از استفاده عملی بررسی کنید:
- هدف Agent محدود و روشن است.
- محیط اجرا از سیستم اصلی جداست.
- دامنههای مجاز مشخص شدهاند.
- ابزارهای Agent حداقلی هستند.
- اقدامات حساس تأیید انسانی دارند.
- تعداد مراحل و تلاشها محدود شده است.
- تمام اقدامات ثبت میشوند.
- امکان توقف فوری وجود دارد.
- نتیجه هر اقدام بررسی میشود.
- خروجی مدل قبل از اجرا اعتبارسنجی میشود.
- مدل با صفحات و زبان فارسی آزمایش شده است.
- برای عملیات ثابت از کد مستقیم استفاده میشود.
- هزینه هر Run اندازهگیری میشود.
- سناریوی خطا و بازیابی تعریف شده است.
- API رسمی در صورت وجود بر Computer Use اولویت دارد.
جمعبندی
Computer Use قابلیتی است که به AI Agent اجازه میدهد رابط کاربری مرورگر یا کامپیوتر را مشاهده و اقداماتی مانند کلیک، تایپ و پیمایش را پیشنهاد کند.
مدل بهتنهایی کامپیوتر را کنترل نمیکند. یک لایه اجرایی مانند Playwright، Browser Sandbox یا ابزار اختصاصی باید تصمیم مدل را اعتبارسنجی و اجرا کند.
Computer Use برای نرمافزارهای فاقد API، آزمون رابط کاربری، تکمیل فرم، انتقال اطلاعات و انجام فرایندهای چندمرحلهای مفید است. بااینحال، اگر API رسمی یا مسیر ثابت وجود دارد، استفاده از آن معمولاً سریعتر و پایدارتر خواهد بود.
برای ساخت چنین سامانهای میتوانید از مدلهای دارای قابلیت Reasoning، Vision یا Tool Calling از طریق API درواره استفاده کنید و لایه کنترل مرورگر را با Playwright یا ابزار مشابه توسعه دهید. درواره دسترسی یکپارچه به مدلهای مختلف و امکان پرداخت ریالی را فراهم میکند، اما اجرای مرورگر و کنترل اقدامات باید در معماری نرمافزار شما پیادهسازی شود.
سؤالات متداول
Computer Use چیست؟
Computer Use قابلیتی است که به مدل هوش مصنوعی اجازه میدهد وضعیت رابط کاربری را مشاهده کند و اقداماتی مانند کلیک، تایپ، پیمایش و انتخاب گزینه را برای انجام یک هدف پیشنهاد دهد.
آیا هوش مصنوعی مستقیماً موس و صفحهکلید را کنترل میکند؟
معمولاً خیر. مدل اقدام بعدی را انتخاب میکند و یک برنامه واسط مانند Playwright آن را در محیط کنترلشده اجرا میکند.
تفاوت Computer Use و AI Agent چیست؟
AI Agent مفهوم گستردهتری است. Computer Use یکی از ابزارهایی است که یک Agent میتواند برای تعامل با رابط گرافیکی استفاده کند.
تفاوت Computer Use و RPA چیست؟
RPA معمولاً مراحل ثابت و از پیش تعریفشده را اجرا میکند. Computer Use مبتنی بر هوش مصنوعی میتواند براساس وضعیت صفحه درباره اقدام بعدی تصمیم بگیرد، اما رفتار آن کمتر قابلپیشبینی است.
آیا Computer Use جایگزین Playwright میشود؟
خیر. Playwright مرورگر را کنترل میکند؛ مدل هوش مصنوعی تصمیم میگیرد کدام عملیات Playwright باید اجرا شود.
آیا Computer Use جایگزین API است؟
خیر. اگر API رسمی وجود دارد، معمولاً استفاده از آن مناسبتر است. Computer Use بیشتر برای نرمافزارهای فاقد API یا مراحل وابسته به رابط کاربری کاربرد دارد.
آیا میتوان با Computer Use فرمها را تکمیل کرد؟
بله. عامل میتواند فیلدها را پیدا و اطلاعات را وارد کند. بهتر است ارسال نهایی فرم به تأیید کاربر وابسته باشد.
آیا Computer Use فقط برای مرورگر است؟
خیر. این مفهوم میتواند مرورگر، نرمافزار دسکتاپ، محیط موبایل یا Remote Desktop را پوشش دهد. نوع محیط به مدل و ابزار اجرا بستگی دارد.
آیا میتوان Computer Use را با API درواره ساخت؟
بله، میتوان از مدلهای مناسب درواره برای تحلیل وضعیت و انتخاب اقدام بعدی استفاده کرد. اجرای واقعی مرورگر، مدیریت State و کنترل اقدامات باید در برنامه توسعه داده شود.
چه مدلی برای Computer Use مناسب است؟
مدلی که درک مناسبی از رابط، Reasoning چندمرحلهای، خروجی ساختاریافته و در صورت نیاز ورودی تصویر داشته باشد. انتخاب نهایی باید با وظایف واقعی پروژه ارزیابی شود.
هزینه Computer Use چگونه محاسبه میشود؟
هزینه به تعداد مراحل، حجم Snapshot یا Screenshot، مدل انتخابشده و تعداد درخواستهای API وابسته است. هرچه Agent برای تکمیل کار به مشاهده و اقدام بیشتری نیاز داشته باشد، هزینه و زمان افزایش مییابد.
مقالات مرتبط
- AI Agent و Agent Skills چیست؟
- MCP چیست؟ راهنمای Model Context Protocol
- Progressive Tool Discovery چیست؟
- Programmatic Tool Calling چیست؟
- ظهور سیستمعامل عاملهای هوش مصنوعی
- API هوش مصنوعی چیست؟
- OpenAI-compatible API چیست؟
منابع
- مستندات Computer Use در Google AI for Developers
- مدل Computer Use در OpenAI API
- مستندات رسمی Playwright MCP
- روش استفاده Playwright از Accessibility Snapshot
- Vision Mode در Playwright MCP
این مقاله صرفاً با هدف آموزش و اطلاعرسانی تهیه شده است. پیش از استفاده عملی، مستندات رسمی سرویسها و صفحه سلب مسئولیت را مطالعه کنید.