Adding endless terminal environment after rebase:

This commit is contained in:
Sam Herring 2026-02-17 16:56:17 -08:00
parent d0f82e6dcc
commit 9139eeaa60
4 changed files with 329 additions and 0 deletions

View file

@ -0,0 +1,66 @@
# Endless Terminals Environment -- Default Configuration
#
# Trains agents on terminal tasks from the Endless Terminals HuggingFace dataset.
# Each task includes a pre-built Apptainer container and pytest-based verification.
#
# Dataset: https://huggingface.co/datasets/obiwan96/endless-terminals-train
#
# Prerequisites:
# 1. Download dataset: huggingface-cli download obiwan96/endless-terminals-train \
# --repo-type dataset --local-dir ~/endless-terminals-data \
# --local-dir-use-symlinks False
# 2. Install Apptainer/Singularity (for test execution)
# 3. Set TASKS_BASE_DIR environment variable or configure tasks_base_dir below
#
# Usage:
# python environments/endless_terminals/endless_terminals_env.py process \
# --config environments/endless_terminals/default.yaml
env:
# Toolsets
enabled_toolsets: ["terminal", "file"]
# Agent configuration
max_agent_turns: 32
max_token_length: 4096
agent_temperature: 1.0
# Terminal backend
terminal_backend: "local" # Change to "modal" or "docker" for cloud isolation
# Dataset settings
use_dataset: true
dataset_name: "obiwan96/endless-terminals-train"
dataset_split: "train"
dataset_cache_dir: "~/.cache/huggingface/datasets"
tasks_base_dir: "" # Set to directory containing task_* folders (e.g., ~/endless-terminals-data)
# Test execution
test_timeout_s: 60
# Training configuration
group_size: 4
total_steps: 1000
steps_per_eval: 100
# Tool call parsing (for Phase 2 VLLM training)
tool_call_parser: "hermes"
tokenizer_name: "NousResearch/Hermes-3-Llama-3.1-8B"
# Logging
use_wandb: true
wandb_name: "endless-terminals"
# System prompt
system_prompt: >
You are a skilled Linux system administrator and programmer.
You have access to a terminal and file tools to complete system administration
and programming tasks. Use the tools effectively to solve the given task,
and verify your solution works correctly before finishing.
openai:
base_url: "http://localhost:8000/v1"
model_name: "NousResearch/Hermes-3-Llama-3.1-8B"
server_type: "openai"
api_key: ""
health_check: false