Files
Andreas Köpf c69bc5d4e6 Basic curriculum (#198)
* feat: Add optional curriculum support to dataset registration and creation
* docs: Add docstrings to create_curriculum() and register_dataset()
* feat: Add curriculum configuration classes for CurriculumExperiment
* feat: Add weight parameter to CurriculumAttributeConfig and use in DatasetSpec
* refactor: Simplify CurriculumAttributeConfig with "*" attribute level support
* test: Add unit tests for CurriculumExperiment class
* feat: Add from_yaml() method to CurriculumExperimentConfig with unit test
2025-03-07 11:22:12 +01:00
..
2025-03-07 11:22:12 +01:00

Reasoning Gym Tools

This directory contains additional tools for working with Reasoning Gym:

Server

A FastAPI server that manages reasoning gym experiments, allowing runtime configuration and monitoring.

Starting the Server

  1. Install server dependencies:
pip install -e ".[server]"
  1. Set the API key environment variable:
export REASONING_GYM_API_KEY=your-secret-key
  1. Start the server:
uvicorn tools.server.server:app

The server will be available at http://localhost:8000. You can access the API documentation at http://localhost:8000/docs.

RGC (Reasoning Gym Client)

A command-line interface for interacting with the Reasoning Gym server.

Installation

pip install -e ".[cli]"

Usage

First, set the API key to match your server:

export REASONING_GYM_API_KEY=your-secret-key

Then you can use the CLI:

# List all commands
rgc --help

# List experiments
rgc experiments list

# Create a new experiment interactively
rgc experiments create my-experiment

# Create from config file
rgc experiments create my-experiment -f config.yaml

# Show experiment details
rgc experiments show my-experiment

# Edit dataset configuration
rgc config edit my-experiment chain_sum

Example Configuration File

Here's an example config.yaml for creating an experiment:

size: 500
seed: 42
datasets:
  chain_sum:
    weight: 1.0
    config:
      min_terms: 2
      max_terms: 4
      min_digits: 1
      max_digits: 2
      allow_negation: false