# Baseline Performance

To evaluate the AI's performance, we need to know what the building *would have done* without AI control. This counterfactual is called the **baseline**. The baseline system trains a model for each signal in a building that predicts the signal's value as a function of outdoor temperature, using historical data from periods when the AI was not in control.

## Architecture

The baseline system is a weekly Spark pipeline that reads from the `on_off_data` Iceberg table and produces three output tables in the `myrspoven-core.baselines` namespace. It runs as a single Airflow DAG with three sequential tasks.

```mermaid
flowchart LR
    OO[(on_off_data)] --> C

    C[curate_model_data] --> TD[(training_data)]

    TD --> P[compute_predictions]
    TD --> A[compute_assessments]

    P --> PR[(predictions)]
    PR --> A

    A --> SA[(signal_assessments)]
```

The three tasks run sequentially as a single Airflow DAG: `curate_model_data` -> `compute_predictions` -> `compute_assessments`. A fourth table, `signal_assessment_overrides`, is managed separately via the dashboard and is never written by the pipeline.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.myrspoven.com/evaluation/baseline-performance.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
