← Back to Dashboard
1. Offline Evaluation Design2. Online Eval and User Feedback Loops
Offline Evaluation Design
📚 Evaluation Frameworks⏱ 11 min⭐ 90 XP⌨ Hands-on lab
Offline Evals Before User Traffic
Offline evaluation lets you compare prompt/model variants before rollout - the AI equivalent of a test suite that must pass before deploy. Without it, every prompt tweak is an uncontrolled experiment on your users.
Dataset Design
| Dataset | Purpose | Size guidance |
|---|---|---|
| Golden set | Representative real tasks with reference answers | 100-500 cases, weighted to critical intents |
| Adversarial set | Injections, jailbreaks, malformed inputs, edge cases | Grow continuously from incidents |
| Regression set | Every case that previously failed and was fixed | Append-only - bugs stay fixed |
Scoring Methods
- Programmatic - JSON validity, schema adherence, exact-match classification labels. Cheap, deterministic, run on everything.
- LLM-as-judge - a strong model scores factuality, instruction adherence, and tone against a rubric. Calibrate the judge against a sample of human ratings before trusting it.
- Human review - reserve for high-stakes samples and judge calibration; too expensive for every run.
Amazon Bedrock Evaluations supports automatic metrics, LLM-as-judge, and human evaluation workflows natively - including RAG-specific evaluation for Knowledge Bases (retrieval quality vs generation quality scored separately).
Gates, Not Vibes
# promotion gate example
release if:
accuracy >= 0.85 (golden set)
safety >= 0.97 (adversarial block rate)
schema_ok >= 0.99 (programmatic)
p95_latency <= 2200ms
else: block promotion, file regression diff
- Use representative and adversarial datasets - passing only friendly inputs proves nothing.
- Score factuality, instruction adherence, and policy compliance as separate dimensions - one aggregate score hides which dimension regressed.
- Gate promotion with explicit pass thresholds agreed before the run.
🚀 September 2026 Update: Native TypeScript SDK for AgentCore Evaluations
AWS introduced first-party TypeScript/Node.js SDK bindings for Bedrock AgentCore Evaluations. You can now execute headless automated evaluation suites in GitHub Actions / AWS CodePipeline using standard Jest, Vitest, or Playwright runners against agents built with Strands, LangGraph.js, OpenAI Agents SDK, or Vercel AI SDK.
AWS introduced first-party TypeScript/Node.js SDK bindings for Bedrock AgentCore Evaluations. You can now execute headless automated evaluation suites in GitHub Actions / AWS CodePipeline using standard Jest, Vitest, or Playwright runners against agents built with Strands, LangGraph.js, OpenAI Agents SDK, or Vercel AI SDK.
Version everything together: an eval result is meaningful only as a tuple - (prompt version, model ID, guardrail config, dataset version). Change any element and scores are no longer comparable.
⌨ HANDS-ON LABCreate a Bedrock Eval Scorecard
⭐ +150 XPDefine objective quality dimensions and pass thresholds before deployment.
1Create an evaluation rubric file.
2Set minimum release thresholds.
OBJECTIVE 1 / 2 — type "hint" if stuck
🧪 Knowledge Check
Press 1-4 to select1 of 2
Why run offline evals first?
To skip monitoring
To reduce risk before exposing users
To bypass IAM
To avoid test data