SecAgent: Efficient Mobile GUI Agent with Semantic Context
Organizations: Taobao & Tmall Group of Alibaba
Abstract
Mobile Graphical User Interface (GUI) agents powered by multimodal large language models have demonstrated promising capabilities in automating complex smartphone tasks. However, existing approaches face two critical limitations: the scarcity of high-quality multilingual datasets, particularly for non-English ecosystems, and inefficient history representation methods. To address these challenges, we present SecAgent, an efficient mobile GUI agent at 3B scale. We first construct a human-verified Chinese mobile GUI dataset with 18k grounding samples and 121k navigation steps across 44 applications, along with a Chinese navigation benchmark featuring multi-choice action annotations. Building upon this dataset, we propose a semantic context mechanism that distills history screenshots and actions into concise, natural language summaries, significantly reducing computational costs while preserving task-relevant information. Through supervised and reinforcement fine-tuning, SecAgent outperforms similar-scale baselines and achieves performance comparable to 7B-8B models on our and public navigation benchmarks. Our dataset is available at https://huggingface.co/datasets/alibabagroup/CMGUI.
Figures & tables
| Name | Training Data | Name | Benchmark Data | ||||||||
| Traj. | Steps | Apps | CoT | Human-Verified | Open-Source | Traj. | Steps | Apps | Multi-Choice | ||
| Mobile-Bench-v2 [ 47 ] | 12,856 | 93,592 | 49 | ✗ | ✗ | ✓ | Magic-RICH [ 37 ] | - | 4,000 | 150 | ✗ |
| AgentCPM-GUI [ 57 ] | 55k | 470k | 30 | ✗ | ✓ | ✗ | CAGUI [ 57 ] | 600 | 4,516 | 30 | ✗ |
| CMGUI (Ours) | 29,711 | 121,265 | 44 | ✓ | ✓ | ✓ | CMGUI-Bench (Ours) | 390 | 2,574 | 44 | ✓ |
| Model | Step Acc. | Task Acc. | Action Acc. | |||
| Click Acc. | Type Acc. | Swipe Acc. | Terminate Acc. | |||
| Closed-source Models | ||||||
| GPT-4o [ 15 ] | 48.4 | 0.0 | 43.5 | 68.3 | 63.7 | 62.1 |
| Claude-3-Sonnet [ 2 ] | 81.4 | 25.8 | 91.1 | 30.0 | 81.3 | 53.4 |
| Open-source Models (7B and 8B) | ||||||
| Qwen2.5-VL-7B [ 3 ] | 83.8 | 35.6 | 89.0 | 75.9 | 4.4 | 79.0 |
| Models | AndroidControl | GUIOdyssey |
| Closed-source Models | ||
| GPT-4o [ 15 ] | 20.8 ∗ | 29.3 |
| Claude-3-Sonnet [ 2 ] | 12.5 ∗ | 46.5 |
| Open-source Models (7B and 8B) | ||
| Qwen2.5-VL-7B [ 3 ] | 62.9 ∗ | 59.6 |
| UI-TARS-7B [ 29 ] | 74.4 ∗ | 37.5 |
| Settings | SA | TA | ITC | TTFT | TPS |
| N=0 | 85.3 | 36.2 | 1537 | 0.07 | 145 |
| N=1 | 94.8 | 72.8 | 2239 | 0.11 | 140 |
| N=2 | 95.1 | 73.8 | 2760 | 0.14 | 134 |
| N=5 | 95.5 | 74.1 | 3642 | 0.22 | 122 |
| N=5 w/o SC | 95.0 | 73.0 | 3507 | 0.22 | 124 |
| N=1 w/o SC | 90.6 | 56.4 | 2171 | 0.11 | 142 |
| Training Data | Training Method | In-Domain Apps | Out-of-Domain Apps | ||||||
| Taobao SA / TA | Kuaishou SA / TA | Fliggy SA / TA | JD SA / TA | Rednote SA / TA | Bilibili SA / TA | Baidu Maps SA / TA | Pinduoduo SA / TA | ||
| Partial | SFT | 91.2 / 56.9 | 89.1 / 44.8 | 91.9 / 58.3 | 91.9 / 61.1 | 91.7 / 54.5 | 88.4 / 45.8 | 86.6 / 41.7 | 94.4 / 66.7 |
| SFT + RFT | 94.5 / 70.8 | 90.1 / 48.3 | 96.0 / 79.2 | 93.5 / 61.1 | 96.4 / 80.0 | 90.2 / 45.8 | 91.3 / 62.5 | 97.6 / 83.3 | |
| Full | SFT | 94.5 / 70.8 | 91.2 / 58.6 | 96.1 / 79.2 | 92.9 / 61.1 | 97.3 / 87.3 | 96.3 / 79.2 | 96.9 / 79.2 | 97.7 / 83.3 |
| SFT + RFT | 95.5 / 73.8 | 93.2 / 75.9 | 96.6 / 79.2 | 97.6 / 83.3 | 98.4 / 89.1 | 97.6 / 91.7 | 96.6 / 79.2 | 97.6 / 88.9 | |
| Training Data | Training Method | SA | TA |
| Navigation | SFT | 93.7 | 65.8 |
| Grounding + Navigation | SFT | 94.4 | 69.2 |
| Gr2Nav + Navigation | SFT | 94.8 | 72.8 |
| Gr2Nav + Navigation | RFT ∗ | 95.2 | 75.9 |
| Gr2Nav + Navigation | SFT + RFT | 96.4 | 80.0 |
| Hyperparameter | Value |
| Supervised Fine-tuning | |
| Epoch | 6 |
| Batch Size | 2 |
| Learning Rate | 2e-5 |
| LoRA Rank | 8 |
| LoRA Alpha | 16 |
| Action | Description | Format |
| CLICK | Click the point on the screen with coordinate (x, y). | {"name": "mobile_use", "arguments": {"action": "click", "coordinate": [x, y]}} |
| SWIPE | Swipe from the starting point with coordinate (x, y) to the end point with coordinates2 (x2, y2). | {"name": "mobile_use", "arguments": {"action": "swipe", "coordinate": [x, y], "coordinate2": [x2, y2]}} |
| TYPE | Input the specified text into the activated input box. | {"name": "mobile_use", "arguments": {"action": "type", "text": "specified_text"}} |
| SYSTEM_BUTTON | Press the specified system button ( e.g . , “Back”, “Home”, “Menu”, “Enter”). | {"name": "mobile_use", "arguments": {"action": "system_button", "button": "specified_button"}} |
| WAIT | Wait specified seconds for the change to happen. | {"name": "mobile_use", "arguments": {"action": "wait", "time": "specified_seconds"}} |
| TERMINATE | Terminate the current task and report its completion status (“success” or “failure”). | {"name": "mobile_use", "arguments": {"action": "terminate", "status": "success"}} |
| #ID | App Name | #Traj. | #ID | App Name | #Traj. | #ID | App Name | #Traj. | #ID | App Name | #Traj. |
| 1 | Taobao | 4,722 | 2 | Kuaishou | 1,829 | 3 | Rednote | 1,341 | 4 | Baidu Maps | 1,213 |
| 5 | Fliggy | 1,184 | 6 | Bilibili | 1,157 | 7 | 1145 | 8 | JD | 1,023 | |
| 9 | Pinduoduo | 861 | 10 | Weather | 817 | 11 | Meituan | 777 | 12 | Douyin | 757 |
| 13 | Calendar | 741 | 14 | Poizon | 714 | 15 | Aliyun Drive | 693 | 16 | Amap | 686 |
| 17 | Ele.me | 640 | 18 | Quark Browser | 589 | 19 | Toutiao | 580 | 20 | Tencent Maps | 576 |
| 21 | Calculator | 541 | 22 | Baidu | 519 | 23 | Tencent Meeting | 499 | 24 | Browser | 496 |
Mobile GUI Automation
Mobile GUI automation develops agents and testing systems that interpret smartphone interfaces and carry out or verify multi-step tasks.
See all 37 papers