---
title: AI2-THOR
description: "Ai2 Unity household simulator: 120 iTHOR rooms. WorldFoundry can step closed-loop FloorPlan wiring; it does not ship ALFRED or TEACh."
---

AI2-THOR (Allen Institute for AI) is a **Unity** household simulator for embodied AI. The original **iTHOR** set is **120** artist-built rooms: 30 kitchens, 30 living rooms, 30 bedrooms, 30 bathrooms (`FloorPlan1–30`, `201–230`, `301–330`, `401–430`). Agents take **discrete** actions (`MoveAhead`, `RotateLeft`, `PickupObject`, open/close, toggle) against physics and object state. The usual iTHOR split is **20 / 5 / 5** train / val / test rooms per type. Later packs (RoboTHOR, ProcTHOR) and language stacks (**ALFRED**, **TEACh**) sit on this engine — they are not the WorldFoundry default.

Paper: [AI2-THOR: An Interactive 3D Environment for Visual AI](https://arxiv.org/abs/1712.05474). Project: [ai2thor.allenai.org](https://ai2thor.allenai.org/). Code: [allenai/ai2thor](https://github.com/allenai/ai2thor) (Apache-2.0).

WorldFoundry **evaluates** a native closed loop: `worldfoundry-eval embodied run` boots the Unity build and steps a policy that already emits simulator tokens. In-tree configs (`FloorPlan1`–`FloorPlan3`) are **wiring checks**, not ALFRED/TEACh. You can also **import** a rollout export via `WORLDFOUNDRY_AI2THOR_RESULTS_PATH`. This page does **not** run VLA inference — supply the policy or policy server yourself.

<BenchmarkPageSections id="ai2thor" locale="en" />

## How to run

Closed-loop wiring (Unity package, simulator cache, and a CloudRendering or X11 display):

```bash
worldfoundry-eval embodied run \
  --config worldfoundry/data/benchmarks/eval_configs/embodied/ai2thor/floorplan1.yaml
```

Import an existing export:

```bash
worldfoundry-eval zoo benchmark-run \
  --benchmark-id ai2thor \
  --mode official-validation \
  --official-results-path <official_results.json> \
  --output-dir tmp/ai2thor/official-validation \
  --json
```

Optional `WORLDFOUNDRY_AI2THOR_ROOT` points at a local runtime/repo. Default import path: `WORLDFOUNDRY_AI2THOR_RESULTS_PATH`. Manifest: `worldfoundry/data/benchmarks/tasks/external/ai2thor.yaml`. Repo mirror: `cache/vla_va_wam/repos/allenai--ai2thor`. Outputs: `scorecard.json` (primary `success_rate`), `run_manifest.json`, `results.jsonl`, `metrics/summary.json`.

[← Benchmark Hub](/docs/evaluation/benchmark-hub)
