CoolFace
Datasetpublic

rokugatsu/sft_alfworld_trajectory_dataset_v5

ALFWorld Trajectory Dataset Overview This is a synthetic SFT (Supervised Fine-Tuning) dataset designed for agent training in ALFWorld-compatible environments. The dataset programmatically generates expert trajectories without requiring an actual ALFWorld environment or a large language model. Key Approach Template-based Simulation: Lightweight simulator based on published ALFWorld information (papers, ReAct prompt examples). Subgoal Decomposition:… See the full description on the dataset page: https://huggingface.co/datasets/rokugatsu/sft_alfworld_trajectory_dataset_v5.

sourceHugging Facemitupdated 7mo agoView on Hugging Face
0likes20downloads
Dataset Card

ALFWorld Trajectory Dataset

Overview

This is a synthetic SFT (Supervised Fine-Tuning) dataset designed for agent training in ALFWorld-compatible environments. The dataset programmatically generates expert trajectories without requiring an actual ALFWorld environment or a large language model.

Key Approach

  • Template-based Simulation: Lightweight simulator based on published ALFWorld information (papers, ReAct prompt examples).
  • Subgoal Decomposition: Rule-based expert system supporting 6 task types.
  • Observation & Thought Diversity: Various templates for diversifying observation and thought texts.
  • Multiple Formats: Supports both function-calling and ReAct formats.

Key Features

FeatureDescription
CompatibilityALFWorld-compatible tasks and actions
Task Types6 distinct task types: pickandplace, cleanandplace, heatandplace, coolandplace, examine, pick_two
Difficulty LevelsEasy, Normal, Hard (controlling exploration detours)
Trajectory FormatFunction-calling (also available in ReAct format)
Multi-turn DialogueEach trajectory is a multi-turn conversation between user (observation) and assistant (thought, action)
Synthetic DataProgrammatically generated, ensuring controlled and varied scenarios

Dataset Statistics

  • Total trajectories: 2,502
  • Average messages per trajectory: 22.6
  • Number of steps (turns) distribution: 9 steps (8.4%) / 11 steps (6.4%) / 13 steps (7.3%) / 15 steps (8.3%) / 17 steps (8.3%) / 19 steps (6.9%) / 21 steps (7.4%) / 23 steps (8.3%) / 25 steps (8.3%) / 27 steps (6.8%) / 29 steps (6.9%) / 31 steps (5.3%) / 33 steps (2.9%) / 35 steps (2.6%) / 37 steps (2.0%) / 39 steps (1.8%) / 41 steps (0.9%) / 43 steps (0.8%) / 45 steps (0.3%) / 47 steps (0.1%) / 49 steps (0.0%) / 51 steps (0.0%)
  • Task type distribution: cleanandplace: 417 (16.7%) / coolandplace: 417 (16.7%) / examine: 417 (16.7%) / heatandplace: 417 (16.7%) / pickandplace: 417 (16.7%) / pick_two: 417 (16.7%)
  • Difficulty distribution: Easy: 530 (21.2%) / Hard: 718 (28.7%) / Normal: 1254 (50.1%)

Data Format

Each line in the JSONL file is a JSON object with the following fields:

json
{{ # Start of outer JSON object
  "messages": [
    {{"role": "system", "content": "Interact with a household to solve a task..."}},
    {{"role": "user", "content": "You are in the middle of a room..."}},
    {{"role": "assistant", "content": "Think: I should look for apple...",
      "tool_calls": [
        {{"id": "call_1", "type": "function", "function": {{ # Inner function object
          "name": "act", "arguments": "{"action": "go to microwave 1"}"
        }}}}
      ]
    }},
    {{"role": "tool", "tool_call_id": "call_1", "content": "The microwave 1 is open..."}}
    // ... more turns
  ],
  "metadata": {{ # Metadata object
    "task_type": "heat_and_place",
    "description": "put a hot apple in/on stoveburner 1.",
    "room_type": "kitchen",
    "difficulty": "normal",
    "num_steps": 17
  }}
}}

Usage

For SFT Training

python
from datasets import load_dataset
ds = load_dataset("u-10bei/sft_alfworld_trajectory_dataset_v5")

for sample in ds["train"]:
    messages = sample["messages"]
    # messages is already in chat format for training

Last Updated

2026-02-10 06:37:32

License

MIT