Smol2Operator 릴리스: 작은 VLM을 오픈‑소스 에이전시 GUI 코더로 전환
TL;DR
Smol2Operator는 경량 비전‑언어 모델 SmolVLM2‑2.2B‑Instruct를 그래픽 사용자 인터페이스를 인식하고 상호작용할 수 있는 에이전시 GUI 코더로 전환하는 사후 훈련 레시피를 소개하며, 모든 코드, 데이터 및 결과 모델을 오픈소스로 공개합니다.
소개 – 작은 VLM이 GUI 에이전트가 될 수 있다
Hugging Face 팀은 처음에는 GUI 기반이 전혀 없던 2.2 B 파라미터 비전‑언어 모델을 두 단계의 감독 미세조정 파이프라인을 통해 기능적인 GUI 에이전트로 변환할 수 있음을 보여줍니다. 그 결과인 smolagents/SmolVLM2‑2.2B‑Instruct‑Agentic‑GUI는 UI 요소를 찾고, 저수준 액션(클릭, 입력, 스크롤)을 생성하며, 스크린샷에 대해 다단계 추론을 수행합니다. 전체 훈련 레시피, 데이터 처리 도구 및 최종 모델을 오픈소스로 제공함으로써 재현성을 보장하고 경량 GUI 에이전트에 대한 추가 연구를 촉진합니다.
1. 통합 액션 공간 – 이질적인 GUI 데이터셋 표준화
일관되지 않은 액션 형식의 문제
기존 GUI 자동화 데이터셋은 서로 다른 함수 시그니처, 명명 규칙 및 좌표 체계를 사용하여 단일 모델이 이를 모두 학습하기 어렵게 합니다.
통합 솔루션
저자들은 모든 함수 호출을 파싱하고 매개변수 순서를 정규화하며 모든 액션을 공통 API에 매핑하는 변환 파이프라인을 구축했습니다. 주요 구성 요소는 다음과 같습니다:
utils/function_parser.py– 원시 텍스트에서 함수 호출을 추출하고 정규화합니다.preprocessing/action_conversion.py– 모바일 및 PyAutoGUI 액션을 통합된 집합(예:click,double_click,type)으로 변환합니다.- 정규화된 좌표(0‑1 범위)는 픽셀 값을 대체하여 이미지 해상도에 관계없이 일관성을 보장합니다.
변환 예시
# Original
pyautogui.click(x=0.8102, y=0.9463)
mobile.swipe(from_coord=[0.581, 0.898], to_coord=[0.601, 0.518])
# Unified
click(x=0.8102, y=0.9463)
swipe(from_coord=[0.581, 0.898], to_coord=[0.601, 0.518])
액션 공간 변환기 – 어휘 맞춤화
utils/action_space_converter.py는 사용자가 통합된 액션을 任意 도메인‑특정 API(예: click을 touch로 변환)와 매핑할 수 있게 해줍니다. 함수 수준 및 매개변수 수준 매핑, 값 변환, 검증을 지원합니다.
공개 데이터셋
파이프라인은 통합 형식의 두 개 새로운 Hugging Face 데이터셋을 생성합니다:
smolagents/aguvis-stage-1smolagents/aguvis-stage-2이들은 GUI 에이전트 훈련에 바로 사용할 수 있습니다.
2. Phase 1 – 제로에서 인식으로
훈련 데이터
Phase 1은 smolagents/aguvis-stage-1을 미세조정합니다. 이 데이터셋은 사용자 명령과 구체적인 액션 코드(예: { "user": "click on more button", "assistant": "click(x=0.8875, y=0.2281)" })를 짝지어 제공합니다. 손실은 어시스턴트의 액션 출력에만 계산됩니다.
이미지 해상도 및 좌표 실험
| 이미지 크기 | 좌표 유형 | ScreenSpot‑v2 ↑ |
|---|---|---|
| 384 px | Normalised | 31.28 % |
| 764 px | Normalised | 32.32 % |
| 1152 px | Normalised | 33.72 % |
| 1152 px | Pixel | 4.32 % |
| 최적 구성은 정규화된 좌표와 1152 px 해상도를 사용하는 것입니다. |
결과
최적 구성을 두 에포크 동안 훈련한 결과 ScreenSpot‑v2 정확도가 0 %(베이스라인)에서 **41.27 %**로 상승했으며, 이는 절대 41 %p 상승으로 모델이 시각 요소를 액션에 연결하는 방법을 학습했음을 확인합니다.
3. Phase 2 – 인식에서 인지로
훈련 데이터
Phase 2는 smolagents/aguvis-stage-2를 사용하며, 여기에는 명시적인 추론 태그가 추가됩니다(<code> click(x=0.41, y=0.178) </code>).
결과
Phase 1 체크포인트를 두 에포크 더 미세조정한 결과 ScreenSpot‑v2 성능이 **61.71 %**로 향상되었습니다. 이는 추론 중심 데이터가 GUI 기반을 더욱 강화함을 보여줍니다. 동일한 두 단계 레시피를 460 M 파라미터 nanoVLM에 적용했을 때 ScreenSpot‑v2에서 약 58 %를 기록해 해당 모델 크기에서 최첨단 성능을 달성했습니다.
4. 오픈소스 릴리스 – 재현에 필요한 모든 것
- 훈련 레시피 –
recipe.ipynb(TRL 라이브러리 사용). - 데이터셋 –
smolagents/aguvis-stage-1및smolagents/aguvis-stage-2. - 훈련된 모델 –
smolagents/SmolVLM2-2.2B-Instruct-Agentic-GUI. - 전처리 유틸리티 – 함수 파서, 액션 변환 시스템, 액션‑공간 변환기(모두 블로그에 링크).
- 데모 스페이스 – 인터랙티브 Hugging Face Space(
A-Mahla/Smol2Operator)가 엔드‑투‑엔드 작업 실행을 시연합니다. 모든 리소스는 관대한 라이선스 하에 공개됩니다.
5. 시사점 및 향후 방향
이 연구는 고품질의 추론‑풍부 GUI 데이터가 경량 VLM에도 감독 미세조정만으로 신뢰할 수 있는 인식 및 에이전시 능력을 부여할 수 있음을 증명합니다. 이는 도메인‑특화 GUI 어시스턴트를 구축하는 장벽을 낮추며, 강화학습이나 Direct Preference Optimization(DPO)과 같은 방법이 상호작용을 통한 지속 학습을 가능하게 할 수 있음을 시사합니다.
6. 다음은?
저자들은 실시간 적응 및 추론 깊이 향상을 위해 RL 및 DPO 탐색을 계획하고 있습니다. 커뮤니티 기여—새 데이터셋, 맞춤형 액션 어휘, 혹은 더 큰 베이스 모델—은 접근 방식을 모바일, 웹, 특수 기업 인터페이스로 확장할 수 있습니다.
핵심: 이질적인 GUI 액션 데이터를 통합하고 두 단계 감독 미세조정 방식을 적용함으로써 Hugging Face는 2.2 B 파라미터 비전‑언어 모델을 오픈소스 에이전시 GUI 코더로 전환했으며, 연구 커뮤니티가 기반 위에 구축할 수 있도록 전체 스택을 공개했습니다.