GPT
O

OmniParser-v2.0

קוד פתוח

microsoftmit2025-02-12

  • transformers
  • safetensors
  • endpoint-template
  • custom_code
  • endpoints_compatible

microsoft עומדים גם מאחורי Sho, ויש עליו סקירה כאן.

הפיכת צילומי מסך למידע מובנה שסוכני בינה מלאכותית יכולים להבין וללחוץ עליו. מיועד למי שבונה אוטומציה לממשקי משתמש ורוצה לחבר מודל שפה חזק לשליטה ישירה במחשב.

  • 1.0 GBמשקל הקבצים
  • 6,428הורדות בחודש
  • 1,352לייקים

מה זה

במקום לתת למודל שפה גדול לנסות לנחש איפה נמצא כל כפתור בתמונה עמוסה, מקבלים צינור עיבוד ייעודי שמפרק את המסך לגורמים. המערך משלב שתי רשתות נפרדות שעברו אימון ייעודי: גרסה מותאמת של YOLOv8 שמזהה אזורים לחיצים ואייקונים ברשת ובאפליקציות, ומודל Florence-2 base שמייצר תיאור טקסטואלי לכל אלמנט ולתפקיד שלו.

בגרסה השנייה הם ניקו את הדאטה וחתכו 60 אחוז מזמני ההמתנה ביחס לגרסה הקודמת. במבחן ScreenSpot Pro הוא מגיע לדיוק ממוצע של 39.6 אחוז בזיהוי ומיקום אלמנטים על המסך, מה שמספיק כדי לייצר רשימת רכיבים מובנית שסוכנים כמו DeepSeek R1 או GPT-4o יכולים לעבוד איתה דרך כלי כמו OmniTool.

מתאים ל

  • סוכני שליטה במחשב

    חיבור למודלי שפה דרך OmniTool להפעלת לחיצות ועכבר במערכות חלונות ואפליקציות.

  • פירוק ממשק משתמש לקוד

    המרת צילומי מסך מהמובייל או הדפדפן לעץ אלמנטים מובנה עם תיאור פעולה לכל כפתור.

  • בדיקות תוכנה אוטומטיות

    זיהוי כפתורים ורכיבים פעילים במסכים משתנים כדי להריץ תרחישי בדיקה בלי תלות ב־DOM.

איפה זה נופל

הדיוק עומד על 39.6 אחוז בבנצ'מרק של ScreenSpot Pro, מה שאומר שיותר ממחצית מהאלמנטים המורכבים עלולים להתפספס או לקבל מיקום שגוי. הוא לא מנתח תוכן פוגעני או זדוני בצילומי המסך, ואם הסוכן שלכם מקבל החלטות עצמאיות על בסיס הזיהוי, אתם מסתכנים בלחיצות לא נכונות בממשק חי. חייבים לבנות שכבת בדיקה ידנית או ולידציה קשיחה לפני שנותנים לו להקליק על דברים קריטיים.

אותה משפחה

OmniParser יצא ב־2 גרסאות שיש להן עמוד כאן. אלה האחרות, לפי כמה מורידים אותן.

שאלות
נפוצות

האם אפשר להשתמש בו במוצר מסחרי סגור בלי לחשוף קוד?

זה בעייתי מאוד בגלל הרישוי המפוצל. מודל הזיהוי מבוסס על YOLOv8 ומוגדר תחת AGPL, מה שיגרור דרישה לפתיחת קוד אם תפיצו את המערכת יחד, לכן מוטב להריץ אותו כשירות רשת נפרד לחלוטין.

כמה חזקה צריכה להיות המכונה בשביל קצב עבודה סביר?

כרטיס מסך ביתי חזק כמו RTX 4090 מריץ מסגרת בפחות משנייה, סביב 0.8 שניות. המודלים תופסים כגיגה בלבד, כך שלא צריך זיכרון וידאו עצום, אבל כרטיס ייעודי חובה כדי לקבל תגובה מהירה מספיק לסוכן.

איך מריצים

המשקל הכולל יושב על כגיגה בודד, כך שאין כאן צורך במפלצות שרתים מורכבות. לפי המדידות, על כרטיס Nvidia RTX 4090 מקבלים זיהוי מסגרת מלא בתוך 0.8 שניות, ועל כרטיס A100 זה יורד ל־0.6 שניות לכל פריים.

מריצים אותו מקומית בספריית transformers כשרוצים לשלוט במכונות וירטואליות או באפליקציות שולחניות רגישות בלי להוציא צילומי מסך לרשת. אם הזמן שלכם יקר ואין לכם עניין לנהל סביבת פייתון מקומית עם שני מודלים במקביל, שווה לשקול ספקי API חיצוניים שמציעים ראייה ממוחשבת מובנית, אבל כאן מקבלים שליטה מלאה בנתונים.

from transformers import pipeline

pipe = pipeline("text-generation", model="microsoft/OmniParser-v2.0")
print(pipe("שלום"))

הרישיון

למרות הסימון הכללי של MIT בעמוד, יש כאן מלכודת משפטית. המפרסמים מציינים מפורשות שמודל זיהוי האייקונים יושב תחת רישיון AGPL המחמיר, ורק מודל התיאורים מחולק ברישיון MIT. שימוש מסחרי שמפיץ את הקוד מחייב פתיחה של הקוד שלכם בגלל ה־AGPL, לכן אם אתם סוגרים מוצר קנייני, תצטרכו לבדוק היטב איך אתם מבודדים את הריצה שלו.

  • שימוש מסחרי
  • שינוי הקוד
  • הפצה מחדש

הרישיון המלא בעמוד המודל ↗