Quick Start

1. Install

Published HTML documentation:

If you want the conceptual walkthrough first, read Student Tutorial.

From the repository root:

python -m pip install -e .[dev]

2. Run the App

python scripts/run_dev.py

This server run is GPU-only by default and expects a CUDA-capable machine with the real Diffusers backend configured.

Open:

http://127.0.0.1:8000

3. Create Your First Session

  1. open /setup
  2. enter a text prompt
  3. enter an experiment name
  4. keep the default YAML configuration for your first run
  5. submit the form

4. Run One Steering Cycle

  1. click Generate next round
  2. watch the progress bar while the async generation job runs
  3. use the visible controls for the active feedback mode
  4. click Submit feedback
  5. watch the status message while the async feedback job runs
  6. click Generate next round again

5. Review Replay

Open the replay page from the session view to inspect the stored rounds and update summaries.

You can also open the session trace report from the session or replay page to inspect:

6. Run the Tests

python -m pytest

Browser end-to-end tests:

npm install
npm run test:e2e:chrome

Headed Chrome debug run:

npm run test:e2e:debug

The browser suite also includes a replay export API smoke test in addition to the click-through UI flow.

7. Prepare Hugging Face Model Assets

If you want to stage the real Diffusers model snapshot:

python scripts/setup_huggingface.py

Example with an explicit output directory:

python scripts/setup_huggingface.py --model-id runwayml/stable-diffusion-v1-5 --output-root models

Install inference dependencies and enable the real backend:

python -m pip install -e .[dev,inference]
set STABLE_STEERING_GENERATION_BACKEND=diffusers
python scripts/run_dev.py

Real Diffusers inference runs on GPU only. If CUDA is unavailable, the app refuses to start instead of falling back to mock. The mock generator is test-only.

Tracing is enabled by default. Backend and frontend trace events are persisted under:

data/traces/

Per-session bundles are persisted under:

data/traces/sessions/<session_id>/

Create a real GPU-backed example bundle with images and HTML walkthrough:

python scripts/create_real_e2e_example.py