Start with the job: implement and run a small DeepEval suite
DeepEval can make LLM evaluation look like a test suite, but the useful unit is still a well-designed case and criterion. Begin with a few representative cases and one decision-linked metric rather than enabling every available evaluator.
Metric names and default prompts can change with releases or model configuration. Pin the package, record evaluator models and inspect failing examples before treating a threshold as stable.
Make the operating boundary visible
The framework represents inputs, actual outputs and optional expected or contextual fields as test cases, applies selected metrics and integrates execution with a test workflow. Model-based metrics add cost and nondeterminism that the run record must expose.
Case to inspected test result
Build a reproducible path
For DeepEval: Build a Reproducible Eval Suite, use a small fixture that another developer can repeat without privileged production data. Change one boundary at a time and preserve the exact configuration needed to explain how the page's decision was reached.
- Pin DeepEval and define a small versioned case file.
- Select one metric whose criterion matches the observed failure.
- Set an initial threshold from reviewed examples, not convention.
- Run locally and in CI, then inspect every failure and evaluator disagreement.
Keep secrets outside the deepeval artifact. Record variable names, scopes and owners, then verify the relevant system of record whenever this tool or workflow can change external state.
Record evidence that survives a rerun
Store the package version, case data, metric configuration, evaluator model and raw per-case results. A green summary without those inputs cannot be reproduced after an upgrade.
- DeepEval and dependency versions
- Case schema and dataset version
- Metric, threshold, evaluator model and prompt
- Run command, per-case outputs, cost and review notes
Date the DeepEval: Build a Reproducible Eval Suite record and keep factual observations separate from inference. If a claim depends on a hosted service, preview feature or moving SDK, name that dependency beside the claim.
Use a decision rule and a stopping rule
Use DeepEval when a code-first, test-runner-oriented workflow fits the team and its metrics can express the actual criteria. Add a platform only if trace review, labeling or collaboration needs justify another boundary.
Run a frozen candidate twice, deliberately add one passing and one failing case and compare evaluator consistency. Upgrade the package in a branch and diff raw results before changing the release baseline.
Use deterministic or model-based metrics
Protect against predictable failure and continue deliberately
For DeepEval: Build a Reproducible Eval Suite, the architecture review flags three recurring failure modes: metrics are chosen before error analysis; an LLM judge is not calibrated; the evaluation dataset leaks or drifts. Treat them as release checks, not footnotes. This page remains draft when its exact implementation or intent evidence is still research-gated.
Use the eval framework selection guide next: it matches harness choice to datasets, CI and trace requirements.
Use the Langfuse eval guide next: it covers trace-linked evaluation and collaborative review.
Use the LLM evals field guide next: it builds evaluation from observed failures and release decisions.