ساخت عاملهای استفاده از رایانه (CUA)
عاملهای استفاده از رایانه میتوانند با وبسایتها همانطور که یک انسان انجام میدهد تعامل کنند: با باز کردن مرورگر، بررسی صفحه و انجام بهترین اقدام بعدی بر اساس آنچه میبینند. در این درس، شما یک عامل خودکارسازی مرورگر میسازید که در Airbnb جستجو میکند، دادههای ساختیافتهٔ لیستها را استخراج میکند و ارزانترین اقامت در استکهلم را شناسایی میکند.
این درس ترکیبی است از Browser-Use برای ناوبری مبتنی بر هوش مصنوعی، Playwright و پروتکل Chrome DevTools (CDP) برای کنترل مرورگر، Azure OpenAI برای استدلال مبتنی بر بینایی و Pydantic برای استخراج ساختیافته.
مقدمه
این درس پوشش میدهد:
- درک زمان مناسب بودن استفاده از عاملهای رایانه به جای خودکارسازی فقط از طریق API
- ترکیب Browser-Use با Playwright و CDP برای مدیریت قابل اعتماد چرخه عمر مرورگر
- استفاده از بینایی Azure OpenAI و خروجی ساختیافته Pydantic برای استخراج دادههای لیست از صفحات وب پویا
- تصمیمگیری درباره زمان استفاده از جریان کاری خودکار مرورگر مبتنی بر عامل، بازیگر، یا ترکیبی
اهداف یادگیری
بعد از تکمیل این درس شما خواهید دانست چگونه:
- Browser-Use را با Azure OpenAI و Playwright پیکربندی کنید
- یک جریان کاری خودکار مرورگر بسازید که از یک وبسایت واقعی ناوبری کند و با المانهای UI پویا کار کند
- نتایج تایپشده را از محتوای صفحه قابل مشاهده استخراج کنید و آنها را به منطق کسبوکار پاییندستی تبدیل نمایید
- بین الگوهای عامل و بازیگر بر اساس میزان پیشبینیپذیری کار مرورگر تصمیم بگیرید
نمونه کد
این درس شامل یک دفترچه راهنمای آموزشی است:
- 15-browser-user.ipynb: یک جلسه کروم را با CDP راهاندازی میکند، در Airbnb به دنبال لیستهای استکهلم جستجو میکند، قیمتها را با بینایی Browser-Use استخراج میکند و ارزانترین گزینه را به صورت داده ساختیافته بازمیگرداند.
پیشنیازها
- پایتون ۳.۱۲ یا بالاتر
- استقرار Azure OpenAI در محیط شما پیکربندی شده باشد
- کروم یا کرومیوم به صورت محلی نصب شده باشد
- وابستگیهای Playwright نصب شده باشند
- آشنایی پایه با پایتون ناهمزمان
راهاندازی
بستههای استفاده شده در دفترچه را نصب کنید:
pip install browser_use playwright python-dotenv
playwright install chromium
متغیرهای محیطی Azure OpenAI که توسط دفترچه استفاده میشوند را تنظیم کنید:
AZURE_OPENAI_ENDPOINT=...
AZURE_OPENAI_API_KEY=...
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME=...
# اختیاری: در صورت حذف، به طور پیشفرض به جدیدترین نسخه API تنظیم میشود
AZURE_OPENAI_API_VERSION=...
نمای کلی معماری
دفترچه یک جریان کاری خودکار مرورگر ترکیبی را نشان میدهد:
- کروم با CDP فعال شده است تا هم Playwright و هم Browser-Use بتوانند جلسه مرورگر یکسانی را به اشتراک بگذارند.
- یک عامل Browser-Use وظایف ناوبری آزاد مانند باز کردن Airbnb، رد کردن پنجرههای پاپآپ و جستجو برای استکهلم را مدیریت میکند.
- صفحه فعال با یک اسکیمای ساختیافتهٔ Pydantic برای استخراج عناوین لیستها، قیمتهای شبانه، امتیازها، و لینکها بررسی میشود.
- منطق پایتون لیستهای استخراج شده را مقایسه کرده و ارزانترین نتیجه را برجسته میکند.
این رویکرد انعطافپذیری و استدلال مبتنی بر بینایی که Browser-Use در آن مهارت دارد را حفظ میکند و در عین حال کنترل قطعی مرورگر را زمانی که لازم است به شما میدهد.
نکات کلیدی و بهترین شیوهها
چه زمانی از عامل استفاده کنیم و چه زمانی از بازیگر
| سناریو |
استفاده از عامل |
استفاده از بازیگر |
| چیدمانهای پویا |
بله، هوش مصنوعی میتواند به تغییرات صفحه سازگار شود |
خیر، انتخابگرهای شکننده ممکن است خراب شوند |
| ساختار شناخته شده |
خیر، عامل کندتر از کنترل مستقیم است |
بله، سریع و دقیق است |
| پیدا کردن عناصر |
بله، زبان طبیعی به خوبی عمل میکند |
خیر، انتخابگرهای دقیق لازم است |
| کنترل زمانبندی |
خیر، پیشبینیناپذیرتر است |
بله، کنترل کامل روی انتظارها و تلاشهای مجدد |
| گردشهای کاری پیچیده |
بله، وضعیتهای غیرمنتظره UI را مدیریت میکند |
خیر، نیاز به شاخهبندی صریح دارد |
بهترین شیوههای Browser-Use
- با یک عامل برای کاوش و ناوبری پویا شروع کنید.
- وقتی تعامل قابل پیشبینی شد به کنترل مستقیم صفحه تغییر وضعیت دهید.
- از مدلهای خروجی ساختیافته استفاده کنید تا دادههای استخراج شده اعتبارسنجی شده و نوعايمن باشند.
- به طور استراتژیک بعد از اقداماتی که باعث تغییرات قابل مشاهده UI میشوند، تأخیر اضافه کنید.
- هنگام تکرار گرفتن اسکرینشات کنید تا اشکالات راحتتر رفع شوند.
- انتظار تغییر وبسایتها را داشته باشید و استراتژیهای پشتیبان برای پنجرههای پاپآپ و جابجایی چیدمان طراحی کنید.
- الگوهای عامل و بازیگر را ترکیب کنید تا هم انعطافپذیری و هم دقت را داشته باشید.
کاربردهای دنیای واقعی
- رزرو سفر و پایش قیمتها
- مقایسه قیمت و بررسی موجودی در تجارت الکترونیک
- استخراج ساختیافته از وبسایتهای پویا
- تست و اعتبارسنجی UI آگاه از بینایی
- پایش وبسایت و اعلام هشدار
- پرکردن هوشمند فرم در جریانهای چند مرحلهای
منابع اضافی
سلب مسئولیت:
این سند با استفاده از سرویس ترجمه ماشینی Co-op Translator ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است حاوی اشتباهات یا نادرستیهایی باشند. سند اصلی به زبان مادری خود باید منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفهای انسانی توصیه میشود. ما مسئول هیچ گونه سوءتفاهم یا تفسیر نادرست ناشی از استفاده از این ترجمه نمیباشیم.