Skip to content

Eval operators

Public

The Eval family contains 4 operators. Grade outputs against assertions, regexes, and judge prompts.

Evaluates a CEL boolean expression against merged inputs and fails the step if it returns false.

Version 1.0.0 · Semantics passthrough · Idempotent

FieldTypeRequiredDefaultDescription
expressionstringyesCEL expression returning a boolean. Inputs are bound under ctx.inputs.* and inputs.*.
targetstringnoOptional target value exposed as ctx.inputs.target.
PortTypeRequiredDescription
inputanynoInput
PortTypeRequiredDescription
outputobjectnoOutput

Scores a response against a rubric using an LLM judge. Returns a score, justification, and per-criterion results.

Version 1.0.0 · Semantics passthrough · Secrets OPENROUTER_API_KEY

FieldTypeRequiredDefaultDescription
max_scorenumberno10
modelstringnoModel identifier (resolved against the customer catalog).
responsestringnoResponse to evaluate. Falls back to inputs.output if omitted.
rubricstringyesEvaluation rubric or criteria. Embedded into the judge’s system prompt.
PortTypeRequiredDescription
inputstringnoInput
PortTypeRequiredDescription
outputobjectnoOutput

Native regex match/find_all/replace against a target string.

Version 1.0.0 · Semantics passthrough · Idempotent

FieldTypeRequiredDefaultDescription
mode”match” | “find_all” | “replace”no"match"
patternstringyesRegular expression pattern (Rust regex syntax).
replacementstringnoReplacement string (required when mode=replace).
targetstringnoString to apply the pattern to. Falls back to inputs.output if omitted.
PortTypeRequiredDescription
inputstringnoInput
PortTypeRequiredDescription
outputobjectnoOutput

Scores output quality against a reference or rubric.

Version 1.0.0 · Semantics passthrough · Visibility advanced · Secrets OPENROUTER_API_KEY

FieldTypeRequiredDefaultDescription
max_tokensintegerno4096
modelstringnoModel identifier (e.g. ‘deepseek/deepseek-r1’).
referencestringnoOptional reference answer.
rubricstringyesEvaluation rubric or criteria.
stop_sequencesstring[]no
temperaturenumberno0.7
top_pnumberno
PortTypeRequiredDescription
inputstringyesInput
PortTypeRequiredDescription
explanationstringnoExplanation
scorenumbernoScore
usageobjectnoUsage

Every operator above is rendered from its JSON schema in /opt/glyph/schemas/operators/:

  • schemas/operators/eval.assertion.json
  • schemas/operators/eval.grade.json
  • schemas/operators/eval.regex.json
  • schemas/operators/eval.score.json