[English] | δΈζ
VIBE (Visual & Interactive Benchmark for Execution) sets a new standard for evaluating Large Language Models (LLMs) in full-stack software engineering. Moving beyond recent benchmarks that rely on static screenshots or rigid workflow snapshots to assess application development, VIBE pioneers the Agent-as-a-Verifier (AaaV) paradigm to assess the true "0-to-1" capability of constructing production-ready applications.
By deploying intelligent agents into dynamic, containerized sandboxes, VIBE performs a hierarchical evaluation across three critical dimensions that directly mirror its name:
This repository contains the foundational data for the VIBE benchmark:
| Subset | Description |
|---|---|
| Web | Frontend apps with high aesthetic standards and complex DOM interactions |
| Simulation | Scientific simulations (Physics, Chemistry, CS) requiring high-fidelity rendering |
| Android | Native Android development (Kotlin/Java) |
| iOS | Native iOS development (Swift/Objective-C) |
| Backend | Server-side systems focusing on API integrity and architecture |
| Subset | Easy | Medium | Hard | Total |
|---|---|---|---|---|
| Web | 13 | 14 | 13 | 40 |
| Simulation | 13 | 14 | 13 | 40 |
| Android | 13 | 14 | 13 | 40 |
| iOS | 13 | 14 | 13 | 40 |
| Backend | 13 | 14 | 13 | 40 |
| Total | 65 | 70 | 65 | 200 |
Each task is a JSON object with the following fields:
{
"idx": 1,
"query": "Design and build a portfolio site for a top-tier design agency...",
"domain": "web",
"difficulty": "easy"
}
| Field | Description |
|---|---|
idx | Unique task identifier |
query | Natural language requirement specification |
domain | One of: web, simulation, android, ios, backend |
difficulty | One of: easy, medium, hard |
from datasets import load_dataset
# Load the full dataset
dataset = load_dataset("MiniMaxAI/VIBE")
# Load special domain dataset. eg: web
web_tasks = dataset.filter(lambda x: x["domain"] == "web")
# Load special difficulty dataset; eg: easy
easy_tasks = dataset.filter(lambda x: x["difficulty"] == "easy")
Scores are computed through a unified pipeline:
@misc{vibe2025,
title={VIBE: Visual & Interactive Benchmark for Execution in Application Development},
author={MiniMax},
year={2025},
publisher={Hugging Face}
}
1 commits
[English] | δΈζ
VIBE (Visual & Interactive Benchmark for Execution) sets a new standard for evaluating Large Language Models (LLMs) in full-stack software engineering. Moving beyond recent benchmarks that rely on static screenshots or rigid workflow snapshots to assess application development, VIBE pioneers the Agent-as-a-Verifier (AaaV) paradigm to assess the true "0-to-1" capability of constructing production-ready applications.
By deploying intelligent agents into dynamic, containerized sandboxes, VIBE performs a hierarchical evaluation across three critical dimensions that directly mirror its name:
This repository contains the foundational data for the VIBE benchmark:
| Subset | Description |
|---|---|
| Web | Frontend apps with high aesthetic standards and complex DOM interactions |
| Simulation | Scientific simulations (Physics, Chemistry, CS) requiring high-fidelity rendering |
| Android | Native Android development (Kotlin/Java) |
| iOS | Native iOS development (Swift/Objective-C) |
| Backend | Server-side systems focusing on API integrity and architecture |
| Subset | Easy | Medium | Hard | Total |
|---|---|---|---|---|
| Web | 13 | 14 | 13 | 40 |
| Simulation | 13 | 14 | 13 | 40 |
| Android | 13 | 14 | 13 | 40 |
| iOS | 13 | 14 | 13 | 40 |
| Backend | 13 | 14 | 13 | 40 |
| Total | 65 | 70 | 65 | 200 |
Each task is a JSON object with the following fields:
{
"idx": 1,
"query": "Design and build a portfolio site for a top-tier design agency...",
"domain": "web",
"difficulty": "easy"
}
| Field | Description |
|---|---|
idx | Unique task identifier |
query | Natural language requirement specification |
domain | One of: web, simulation, android, ios, backend |
difficulty | One of: easy, medium, hard |
from datasets import load_dataset
# Load the full dataset
dataset = load_dataset("MiniMaxAI/VIBE")
# Load special domain dataset. eg: web
web_tasks = dataset.filter(lambda x: x["domain"] == "web")
# Load special difficulty dataset; eg: easy
easy_tasks = dataset.filter(lambda x: x["difficulty"] == "easy")
Scores are computed through a unified pipeline:
@misc{vibe2025,
title={VIBE: Visual & Interactive Benchmark for Execution in Application Development},
author={MiniMax},
year={2025},
publisher={Hugging Face}
}
1 commits