---
title: ModelJudgeEvaluator
framework: evaluations
role: symbol
role_heading: Structure
path: evaluations/modeljudgeevaluator
---

# ModelJudgeEvaluator

An evaluator that uses a language model as a judge to score responses.

## Declaration

```swift
struct ModelJudgeEvaluator<Input> where Input : ModelSampleProtocol
```

## Mentioned in

Scoring with model-as-judge evaluators Designing effective model-as-judge evaluators Designing specific, measurable criteria in an evaluation suite Evaluating language model responses

## Overview

Overview ModelJudgeEvaluator sends the query, response, and optional reference data to a judge model, which returns scores for one or more dimensions. The response is automatically serialized as JSON, because OutputType is Codable, or is customizable via ModelJudgePrompt.

## Topics

### Creating a single-dimension evaluator

- [init(_:scale:judge:scoringMode:)](evaluations/modeljudgeevaluator/init(_:scale:judge:scoringmode:).md)
- [init(_:scale:judge:scoringMode:prompt:)](evaluations/modeljudgeevaluator/init(_:scale:judge:scoringmode:prompt:).md)

### Creating a multi-dimension evaluator

- [init(judge:dimensions:scoringMode:)](evaluations/modeljudgeevaluator/init(judge:dimensions:scoringmode:).md)
- [init(judge:dimensions:scoringMode:prompt:)](evaluations/modeljudgeevaluator/init(judge:dimensions:scoringmode:prompt:).md)

### Creating a pairwise evaluator

- [pairwise(_:scale:judge:scoringMode:evaluationTarget:)](evaluations/modeljudgeevaluator/pairwise(_:scale:judge:scoringmode:evaluationtarget:).md)
- [pairwise(judge:dimensions:scoringMode:evaluationTarget:)](evaluations/modeljudgeevaluator/pairwise(judge:dimensions:scoringmode:evaluationtarget:).md)

### Configuring the judge prompt

- [defaultInstructions](evaluations/modeljudgeevaluator/defaultinstructions.md)
- [judgePrompt(for:output:)](evaluations/modeljudgeevaluator/judgeprompt(for:output:).md)

### Inspecting the evaluator

- [dimensions](evaluations/modeljudgeevaluator/dimensions.md)
- [scoringMode](evaluations/modeljudgeevaluator/scoringmode.md)
- [ScoringMode](evaluations/scoringmode.md)

### Errors

- [ModelJudgeError](evaluations/modeljudgeerror.md)

## Relationships

### Conforms To

- [EvaluatorProtocol](evaluations/evaluatorprotocol.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Model-as-judge evaluations

- [Designing effective model-as-judge evaluators](evaluations/designing-effective-model-judges.md)
- [Scoring with model-as-judge evaluators](evaluations/scoring-with-model-as-judge-evaluators.md)
- [ModelJudgePrompt](evaluations/modeljudgeprompt.md)
- [ScoreDimension](evaluations/scoredimension.md)
