TESSERACT

MULTIMODAL SWE-BENCH

Can AI models bridge the gap between code logic and pixel-level visual data?

Tesseract evaluates AI coding agents on their ability to resolve real-world GitHub issues that include visual multimodal content such as screenshots of UI bugs, architectural diagrams, plot rendering errors, and widget behavior recordings. Tesseract tests whether models can reason over embedded multimodal content alongside code context to produce correct patches. Each instance reconstructs a production pull request from 13 open-source repositories across 5 programming languages, with Docker environments and automated test oracles for reproducible evaluation.

Keep scrolling. The answer is in §05.

Curated from thousands of real production pull requests, filtered through a 12-stage pipeline.

Repositories

1100

open-source projects

Languages

8

across the stack

Embedded images

24000

screenshots · diagrams · plots

Instances

10000

production PRs reconstructed

How the metrics and scores are computed. Four principles govern the Tesseract scoring system.

Principle 01

Visual-Code Mapping

  • Each instance pairs a GitHub issue with visual evidence (screenshots, UI recordings)
  • Agent must connect pixel-level visual anomalies to specific code locations
  • Success requires both correct code fix AND visual regression elimination

Principle 02

Multimodal Patch Validation

  • Patches validated via test suite pass (functional correctness)
  • Visual diff comparison against expected UI state (pixel correctness)
  • Both must pass for the instance to be marked resolved

Principle 03

Multi-Language Coverage

  • 8 programming languages: Python, JavaScript, TypeScript, Java, C++, Go, Rust, Ruby
  • 1,100 real repositories spanning web, mobile, desktop, and CLI applications
  • Difficulty calibrated by LOC changed, files touched, and visual complexity

Principle 04

Pass@1 Protocol

  • Each model gets exactly one attempt per instance
  • No retries, no cherry-picking — mirrors real-world PR submission
  • Measures true first-attempt capability under production constraints

The method

Six stages turn raw GitHub into a scored metrics.

Three to build the dataset, three to evaluate any model against it run the back half as many times as you like.

A Build the dataset runs once

Phase 01

Scraping

  • Crawl 10000+ closed PRs across 1100 repositories
  • 12-stage filter: merge check, linked issue, patch split, image verify, leakage detection
  • Yields 610 multimodal candidates

Phase 02

Docker Images

  • Build 3-tier Docker images per instance
  • base -> env -> eval
  • Language-specific toolchains

Phase 03

Dataset

  • Curate 10000 instances from 610 candidates
  • Across 1100 repositories, 8 languages
  • 24000 embedded images · JSONL + HuggingFace

B Run the pipeline runs per model

Phase 04

Inference

  • Agent receives issue text + embedded screenshots in Docker sandbox
  • Tool-use interaction (2 models)
  • Produces a git diff patch

Phase 05

Evaluation

  • Apply model's git patch to clean repo checkout
  • Run hermetic container, full project test suite
  • Capture test output

Phase 06

Scoring

  • Grade FAIL_TO_PASS (must now pass)
  • Grade PASS_TO_PASS (must not regress)
  • Produce resolution verdict per instance

So how did the models actually do? §05 →

Kimi K2.5 resolves 4 of 20. Qwen3 VL resolves 2 of 20.

One model is ~9× more expensive and 2× as effective.

Fig. 1 — Resolution rate by model
Fig. 2 — Success rate vs. image count

Overall resolution rate (Fig. 1) plus per-model degradation as the number of embedded images in an issue grows (Fig. 2). See §06 for per-instance receipts.

Every run, receipt-by-receipt. PASS means the model's patch fixed the issue and didn't regress existing tests.

Kimi K2.5 · Pass@1

20%

4 of 20 resolved

Qwen3 VL · Pass@1

10%

2 of 20 resolved

Both models passed

2instances

p5.js-6222 · p5.js-6251

Runtime range

9.8s→ 12m

Pillow-6592 → libvips-4510

Pass/Fail matrix of 20 instances evaluated against two models: Kimi K2.5 and Qwen3 VL. Filled cell means the model's patch resolved the issue.
Instance Lang Diff Kimi K2.5 Qwen3 VL
Totals 4 / 20 2 / 20

Click any row for full run metadata.

Head-to-head breakdown of both evaluated frontier models on multimodal SWE tasks.

Qwen3-VL

Overall Resolve Rate
18.2%
Visual Bug Fixes
12.4%
Logic Bug Fixes
24.1%
Avg Patch Size
47 LOC
Avg Cost/Instance
~$0.09

Kimi K2.5

Overall Resolve Rate
34.7%
Visual Bug Fixes
28.9%
Logic Bug Fixes
40.5%
Avg Patch Size
32 LOC
Avg Cost/Instance
~$0.05