Image-Text-to-Text
Transformers
Safetensors
English
Chinese
qwen2_5_vl
gui-agent
computer-use
vision-language
reinforcement-learning
osworld
conversational
text-generation-inference
Instructions to use LEONW24/BEPA-7B-S2 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use LEONW24/BEPA-7B-S2 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="LEONW24/BEPA-7B-S2") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("LEONW24/BEPA-7B-S2") model = AutoModelForMultimodalLM.from_pretrained("LEONW24/BEPA-7B-S2", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use LEONW24/BEPA-7B-S2 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "LEONW24/BEPA-7B-S2" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "LEONW24/BEPA-7B-S2", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/LEONW24/BEPA-7B-S2
- SGLang
How to use LEONW24/BEPA-7B-S2 with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "LEONW24/BEPA-7B-S2" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "LEONW24/BEPA-7B-S2", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "LEONW24/BEPA-7B-S2" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "LEONW24/BEPA-7B-S2", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }' - Docker Model Runner
How to use LEONW24/BEPA-7B-S2 with Docker Model Runner:
docker model run hf.co/LEONW24/BEPA-7B-S2
Add model card and metadata
#1
by nielsr HF Staff - opened
README.md
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
library_name: transformers
|
| 4 |
+
pipeline_tag: image-text-to-text
|
| 5 |
+
tags:
|
| 6 |
+
- gui-agent
|
| 7 |
+
- rlvr
|
| 8 |
+
- computer-use
|
| 9 |
+
---
|
| 10 |
+
|
| 11 |
+
# BEPA-7B-S2
|
| 12 |
+
|
| 13 |
+
This repository contains the weights for **BEPA-7B-S2**, an end-to-end screenshot-to-action policy for GUI agents. The model was introduced in the paper [From Off-Policy to On-Policy: Enhancing GUI Agents via Bi-level Expert-to-Policy Assimilation](https://huggingface.co/papers/2601.05787).
|
| 14 |
+
|
| 15 |
+
## Introduction
|
| 16 |
+
|
| 17 |
+
**BEPA** (Bi-Level Expert-to-Policy Assimilation) is a framework designed to enhance Vision-Language Models acting as computer-use agents (CUAs). It addresses the challenges of using static expert trajectories in reinforcement learning from verifiable rewards (RLVR) by turning them into policy-aligned guidance.
|
| 18 |
+
|
| 19 |
+
BEPA operates in two complementary stages:
|
| 20 |
+
- **LEVEL-1 (Self-Rolled Execution):** Transforms alien expert traces into policy-compatible trajectories by abstracting them into natural-language plans and letting the base policy execute them.
|
| 21 |
+
- **LEVEL-2 (Self-Aligned Assimilation):** Dynamically maintains a per-task cache that injects guided trajectories into training updates when on-policy failures occur.
|
| 22 |
+
|
| 23 |
+
On the OSWorld-Verified benchmark, BEPA improves the success rate of UITARS1.5-7B from 22.87% to **32.13%**, establishing it as a top-performing open-source end-to-end model.
|
| 24 |
+
|
| 25 |
+
## Resources
|
| 26 |
+
- **Paper:** [https://huggingface.co/papers/2601.05787](https://huggingface.co/papers/2601.05787)
|
| 27 |
+
- **Project Page:** [https://leon-gittech.github.io/Verl_GUI/](https://leon-gittech.github.io/Verl_GUI/)
|
| 28 |
+
- **GitHub Repository:** [https://github.com/LEON-gittech/Verl_GUI](https://github.com/LEON-gittech/Verl_GUI)
|
| 29 |
+
|
| 30 |
+
## Main Results
|
| 31 |
+
|
| 32 |
+
| Method | Overall Success (%) |
|
| 33 |
+
|--------|-------------|
|
| 34 |
+
| UITARS1.5-7B | 22.87 |
|
| 35 |
+
| GRPO | 23.60 |
|
| 36 |
+
| **BEPA (ours)** | **32.13** |
|
| 37 |
+
|
| 38 |
+
## Citation
|
| 39 |
+
|
| 40 |
+
```bibtex
|
| 41 |
+
@misc{wang2026offpolicyonpolicyenhancinggui,
|
| 42 |
+
title={From Off-Policy to On-Policy: Enhancing GUI Agents via Bi-level Expert-to-Policy Assimilation},
|
| 43 |
+
author={Zezhou Wang and Ziyun Zhang and Xiaoyi Zhang and Zhuzhong Qian and Yan Lu},
|
| 44 |
+
year={2026},
|
| 45 |
+
eprint={2601.05787},
|
| 46 |
+
archivePrefix={arXiv},
|
| 47 |
+
primaryClass={cs.AI},
|
| 48 |
+
url={https://arxiv.org/abs/2601.05787},
|
| 49 |
+
}
|
| 50 |
+
```
|