בניית סוכני שימוש במחשב (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 vision, ומחזיר את האפשרות הזולה ביותר כנתונים מסודרים.
דרישות מוקדמות
- Python 3.12+
- הפריסה של Azure OpenAI מוגדרת בסביבת העבודה שלך
- Chrome או Chromium מותקנים מקומית
- תלויות Playwright מותקנות
- היכרות בסיסית עם 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.
- לוגיקת פייתון משווה בין הרשומות שחולצו ומדגישה את התוצאה הזולה ביותר.
גישה זו שומרת על ההסקה הגמישה המבוססת ראייה ש-Browser-Use טוב בה, תוך מתן שליטה דטרמיניסטית בדפדפן בעת הצורך.
נקודות מפתח והנחיות טובות
מתי להשתמש בסוכן מול שחקן
| מצב |
השתמש בסוכן |
השתמש בשחקן |
| עיצובים דינמיים |
כן, בינה מלאכותית יכולה להסתגל לשינויים בדף |
לא, בוחרים שבירים עלולים להישבר |
| מבנה ידוע |
לא, סוכן איטי יותר מבקרה ישירה |
כן, מהיר ומדויק |
| מציאת אלמנטים |
כן, שפה טבעית עובדת טוב |
לא, דרושים בוחרים מדויקים |
| בקרת זמן |
לא, פחות צפוי |
כן, שליטה מלאה בהמתנות וניסיונות חוזרים |
| זרימות מורכבות |
כן, מטפל במצבי ממשק בלתי צפויים |
לא, דורש הסתעפויות מפורשות |
הנחיות טובות ל-Browser-Use
- התחל עם סוכן לצורך חקר וניווט דינמי.
- עבור לבקרה ישירה של הדף כאשר האינטראקציה הופכת לניבויה.
- השתמש בדגמים עם פלט מסודר כך שהמידע שחולץ מאומת ובטוח מבחינת טיפוסים.
- הוסף דחיות באופן מחושב אחרי פעולות שגורמות לשינויים גלויים בממשק המשתמש.
- צלם מסכי תוכן במהלך האיטרציות כדי להקל על איתור שגיאות.
- צפה שבאתרים תתרחשנה שינויים ועצב אסטרטגיות גיבוי לחלונות קופצים ולהזזות מבנה.
- שלב בין דפוסי סוכן ושחקן כדי לקבל גם גמישות וגם דיוק.
יישומים מעשיים
- הזמנת טיסות ומעקב מחירים
- השוואת מחירי סחר אלקטרוני ובדיקת זמינות
- חילוץ מסודר מאתרים דינמיים
- בדיקות ואימותי ממשק משתמש מבוססי ראייה
- ניטור אתרים והתראות
- מילוי טפסים חכם דרך זרימות רב-שלביות
משאבים נוספים
כתב ויתור:
מסמך זה תורגם באמצעות שירות תרגום מבוסס בינה מלאכותית Co-op Translator. למרות שאנו שואפים לדיוק, יש לקחת בחשבון כי תרגומים אוטומטיים עלולים להכיל שגיאות או אי דיוקים. המסמך המקורי בשפת המקור נחשב למקור הסמכותי. למידע קריטי מומלץ תרגום מקצועי בידי אדם. אנו אינם אחראים לכל אי הבנה או פרשנות שגויה הנובעת משימוש בתרגום זה.