OSU-NLP-Group/UGround
[ICLR'25 Oral] UGround: Universal GUI Visual Grounding for GUI Agents
🎯 UGround 는 무엇인가요?
UGround 는 그래픽 사용자 인터페이스(GUI) 에이전트를 위한 시각적 기준화 문제를 해결하는 오픈소스 연구 프로젝트입니다. 스크린샷과 자연어 설명(예: "보내기 버튼을 클릭하세요")이 주어지면, 모델은 해당 UI 요소의 (x, y) 좌표를 예측합니다. 코드, 사전 학습된 가중치, 학습 데이터, 평가 세트가 모두 공개되었으며, ICLR 2025에서 구두 발표 논문으로 채택되었습니다.
📚 주요 기여
| 구성 요소 | 제공 내용 |
|---|---|
| 모델 패밀리 | GUI 기준화를 위해 최적화된 Qwen2-VL 기반의 시각-언어 모델(2B, 7B, 72B) 세 가지 크기(UGround-V1로 명명). |
| 학습 데이터 | 100만 장 이상의 GUI 스크린샷과 경계 상자 레이블(UGround-V1 데이터셋)을 Hugging Face에서 호스팅. 별도의 "박스만" 버전도 제공. |
| 평가 세트 | ScreenSpot, Multimodal-Mind2Web, OmniAct, AndroidControl의 네 가지 기존 GUI 기준화 벤치마크용 실행 가능한 스크립트, 그리고 라이브 에이전트 벤치마크(Mind2Web-Live-SeeAct-V, AndroidWorld-SeeAct-V) |
| 데모 | 이미지와 설명을 업로드할 수 있는 Hugging Face Spaces 웹 데모. 예측된 좌표를 반환합니다. |
| 논문 및 결과 | ICLR 2025 전체 논문, arXiv 사전 인쇄본, 그리고 최고 성능을 보여주는 리더보드(예: 72B 모델로 ScreenSpot에서 평균 89.4%) |
🚀 시작하기 (추론)
1. 필요한 Python 패키지 설치
pip install "git+https://github.com/huggingface/transformers@21fac7abba2a37fae86106f87fcf9974fd1e3830"
pip install accelerate qwen-vl-utils "vllm==0.6.1"
2. vLLM 로 모델 실행 (고처리량 서빙)
# 7-B 체크포인트 예시
vllm serve osunlp/UGround-V1-7B \
--api-key <your-token> \
--dtype float16
리포지토리는 더 안정적인 디코딩을 위해 float16을 권장합니다.
3. 기준화 프롬프트 구성
def format_openai_template(description, base64_image):
return [{
"role": "user",
"content": [
{"type": "image_url",
"image_url": {"url": f"data:image/jpeg;base64,{base64_image}"}},
{"type": "text",
"text": f"""당신의 작업은 설명에 따라 화면 내 특정 영역/요소/객체의 정확한 좌표 (x, y) 를 식별하는 것입니다.
- 설명된 요소의 중심을 가리키는 단일 문자열 "x, y"를 반환하세요.
- 설명이 모호할 경우 가장 타당한 요소를 선택하세요.
- 모델은 [0, 1000) 범위의 좌표를 출력합니다. 픽셀 값으로 변환하려면 (너비/1000, 높이/1000)으로 스케일링하세요.
설명: {description}
응답:"""
]
}]
temperature=0 으로 messages 리스트를 vLLM의 OpenAI 호환 엔드포인트에 전송하면 결정론적 좌표를 얻을 수 있습니다.
📂 리포지토리 구조 (개요)
train/– UGround 데이터 위에서 Qwen2-VL을 파인튜닝하는 스크립트.offline_evaluation/– ScreenSpot, Multimodal-Mind2Web, OmniACT, AndroidControl의 네 가지 정적 벤치마크용 코드와 결과.online_experiments/– 모델을 인터랙티브 환경에서 실행하는 외부 리포지토리 링크(Mind2Web-Live-SeeAct-V, AndroidWorld-SeeAct-V).README.md– 이 개요, 가중치, 데이터, 데모, 인용 링크.
📊 성능 요약 (ScreenSpot 벤치마크)
| 모델 | 크기 | 평균 점수 |
|---|---|---|
| UGround-V1-2B (Qwen2-VL) | 2B | 77.7 |
| UGround-V1-7B (Qwen2-VL) | 7B | 86.3 |
| UGround-V1-72B (Qwen2-VL) | 72B | 89.4 |
| Claude (Computer-Use) | – | 82.9 |
72B 체크포인트는 표준 ScreenSpot 설정에서 모든 이전 모델을 능가하며, GPT-4o를 플래너로 사용할 경우 에이전트 설정에서도 최고 성능을 기록했습니다.
🌐 리소스 및 링크
- 홈페이지: https://osu-nlp-group.github.io/UGround
- 논문 (arXiv): https://arxiv.org/abs/2410.05243
- 모델 가중치 (Hugging Face): https://huggingface.co/collections/osunlp/uground-677824fc5823d21267bc9812
- 데모 (HF Spaces): https://huggingface.co/spaces/orby-osu/UGround
- 학습 데이터: https://huggingface.co/datasets/osunlp/UGround-V1-Data ("박스만" 버전도 제공)
- 리더보드: https://gui-agent.github.io/grounding-leaderboard/
📜 인용
@inproceedings{gou2024uground,
title={Navigating the Digital World as Humans Do: Universal Visual Grounding for GUI Agents},
author={Boyu Gou and Ruohan Wang and Boyuan Zheng and Yanan Xie and Cheng Chang and Yiheng Shu and Huan Sun and Yu Su},
booktitle={International Conference on Learning Representations},
year={2025},
url={https://openreview.net/forum?id=kxnoqaisCT}
}
TL;DR: UGround는 자연어에서 UI 요소를 정확히 찾을 수 있는 즉시 사용 가능한 고성능 시각-언어 모델을 제공하며, 데이터, 가중치, 벤치마크, 실시간 데모를 모두 포함합니다. GUI 인식 에이전트가 필요한 모든 연구 및 제품 개발의 견고한 기반을 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트