Израда агената за коришћење рачунара (CUA)
Агенти за коришћење рачунара могу да комуницирају са веб сајтовима на исти начин као и људи: отварају прегледач, прегледају страницу и предузимају следећу најбољу акцију на основу онога што виде. У овој лекцији направићете агента за аутоматизацију прегледача који претражује Airbnb, извлачи структуриране податке о огласима и идентификује најјефтинији смештај у Стокхолму.
Лекција комбинује Browser-Use за навигацију вођену вештачком интелигенцијом, Playwright и Chrome DevTools Protocol (CDP) за контролу прегледача, Azure OpenAI за резоновање омогућено визијом, и Pydantic за структурирани екстракт.
Увод
Ова лекција ће обухватити:
- Разумевање када су агенти за коришћење рачунара боље решење од аутоматизације само преко API-ја
- Комбинацију Browser-Use са Playwright и CDP за поуздано управљање животним циклусом прегледача
- Коришћење Azure OpenAI визије и структурираних Pydantic резултата за извлачење података о огласима са динамичких веб страна
- Одлучивање када користити агентски први, глумачки први, или хибридни радни ток за аутоматизацију прегледача
Циљеви учења
Након завршетка ове лекције, знаћете како да:
- Конфигуришете Browser-Use са Azure OpenAI и Playwright
- Направите радни ток аутоматизације прегледача који навигира кроз прави веб сајт и рукује динамичким елементима корисничког интерфејса
- Извуците типизиране резултате из видљивог садржаја странице и претворите их у даљу пословну логику
- Изаберете између агента и глумца у зависности од предвидивости задатка у прегледачу
Пример кода
Ова лекција садржи један туторијал у форме свеске:
- 15-browser-user.ipynb: Покреће Chrome сесију преко CDP-а, претражује Airbnb за огласе у Стокхолму, извлачи цене помоћу Browser-Use визије, и враћа најјефтинију опцију као структуриране податке.
Претпоставке
- Python 3.12+
- Azure OpenAI конфигурисан у вашем окружењу
- Локално инсталиран Chrome или Chromium
- Инсталиране Playwright зависности
- Основно познавање async Python-а
Подешавање
Инсталирајте пакете коришћене у свесци:
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=...
Преглед архитектуре
Свеска демонстрира хибридни радни ток аутоматизације прегледача:
- Chrome се покреће са омогућеним CDP-ом како би и Playwright и Browser-Use могли да деле исту сесију прегледача.
- Browser-Use агент управља отвореним навигационим задацима као што су отварање Airbnb веб сајта, уклањање искачућих прозора и претрага за Стокхолм.
- Активна страница се прегледа структурираним Pydantic шемама како би се извукли наслови огласа, ноћне цене, оцена и URL-ови.
- Python логика упоређује издвојене огласе и истиче најјефтинију понуду.
Овај приступ задржава флексибилност резоновања заснованог на визији коју Browser-Use поседује, а истовремено пружа детерминистичку контролу над прегледачем када вам је потребна.
Кључне поуке и најбоље праксе
Када користити агента, а када глумца
| Сценарио |
Користите агента |
Користите глумца |
| Динамички распореди |
Да, вештачка интелигенција се може прилагодити променама на страници |
Не, крхки селектори могу да прекину поступак |
| Позната структура |
Не, агент је спорији од директне контроле |
Да, брз и прецизан |
| Пронаћи елементе |
Да, природни језик добро функционише |
Не, потребни су прецизни селектори |
| Контрола времена |
Не, мање је предвидљиво |
Да, пуна контрола над чекањима и поновним покушајима |
| Комплексни радни токови |
Да, рукује неочекиваним стањима у корисничком интерфејсу |
Не, потребно је експлицитно грануљање |
Најбоље праксе Browser-Use
- Почните са агентом за истраживање и динамичку навигацију.
- Прелазите на директну контролу странице када интеракција постане предвидива.
- Користите моделе структурисаног излаза како би издвојени подаци били верификовани и типски безбедни.
- Додајте задатке са кашњењима након радњи које покрећу видљиве промене у корисничком интерфејсу.
- Снимајте слике екрана током итерација како би неуспеси били лакши за дијагнозу.
- Очекујте промене на веб сајтовима и направите резервне стратегије за искачуће прозоре и промене распореда.
- Комбинујте агент и глумац шаблоне да бисте добили и флексибилност и прецизност.
Примери у стварном свету
- Резервације путовања и праћење цена
- Поређење цена и проверa расположивости у е-трговини
- Структурирано извлачење података са динамичких веб сајтова
- Тестирање и верификација корисничког интерфејса осетљивог на визуелне промене
- Праћење веб сајтова и алармирање
- Интелигентно попуњавање формулара у вишестепеним поступцима
Додатни ресурси
Изјава о одрицању одговорности:
Овај документ је преведен коришћењем АИ сервиса за превођење Co-op Translator. Иако се трудимо да превод буде прецизан, имајте у виду да аутоматски преводи могу садржати грешке или нетачности. Оригинални документ на његовом изворном језику треба сматрати ауторитетом. За критичне информације препоручује се стручан људски превод. Нисмо одговорни за било какве неспоразуме или погрешне тумачења настале коришћењем овог превода.