# RubricEvaluation

> **Class** in `deepagents`

📖 [View in docs](https://reference.langchain.com/python/deepagents/middleware/rubric/RubricEvaluation)

One grader evaluation, appended to `_rubric_evaluations` each iteration.

Consumers can read any field without guarding against absence since all
fields are always populated by `_build_evaluation` and
`_handle_grader_exception`.

## Signature

```python
RubricEvaluation()
```

## Extends

- `TypedDict`

## Constructors

```python
__init__(
    grading_run_id: str,
    iteration: int,
    result: RubricResult,
    explanation: str,
    criteria: list[CriterionEval],
)
```

| Name | Type |
|------|------|
| `grading_run_id` | `str` |
| `iteration` | `int` |
| `result` | `RubricResult` |
| `explanation` | `str` |
| `criteria` | `list[CriterionEval]` |


## Properties

- `grading_run_id`
- `iteration`
- `result`
- `explanation`
- `criteria`

---

[View source on GitHub](https://github.com/langchain-ai/deepagents/blob/0412009c5441bef8d75a427e1da8909e33ab5b56/libs/deepagents/deepagents/middleware/rubric.py#L189)