Back to list
eyadsibai

agent-evaluation

by eyadsibai

0🍴 0📅 Jan 15, 2026

SKILL.md


name: agent-evaluation description: Use when evaluating agent performance, building test frameworks, measuring quality, or asking about "agent evaluation", "LLM-as-judge", "agent testing", "quality metrics", "evaluation rubrics", "agent benchmarks" version: 1.0.0

Agent Evaluation Methods

Agent evaluation requires different approaches than traditional software. Agents are non-deterministic, may take different valid paths, and lack single correct answers.

Key Finding: 95% Performance Drivers

Research on BrowseComp found three factors explain 95% of variance:

FactorVarianceImplication
Token usage80%More tokens = better performance
Tool calls~10%More exploration helps
Model choice~5%Better models multiply efficiency

Implications: Model upgrades beat token increases. Multi-agent architectures validate.

Multi-Dimensional Rubric

DimensionExcellentGoodAcceptableFailed
Factual accuracyAll correctMinor errorsSome errorsWrong
CompletenessAll aspectsMost aspectsKey aspectsMissing
Citation accuracyAll matchMost matchSome matchWrong
Tool efficiencyOptimalGoodAdequateWasteful

LLM-as-Judge

evaluation_prompt = """
Task: {task_description}
Agent Output: {agent_output}
Ground Truth: {ground_truth}

Evaluate on:
1. Factual accuracy (0-1)
2. Completeness (0-1)
3. Citation accuracy (0-1)
4. Tool efficiency (0-1)

Provide scores and reasoning.
"""

Test Set Design

test_set = [
    {"name": "simple", "complexity": "simple",
     "input": "What is capital of France?"},
    {"name": "medium", "complexity": "medium",
     "input": "Compare Apple and Microsoft revenue"},
    {"name": "complex", "complexity": "complex",
     "input": "Analyze Q1-Q4 sales trends"},
    {"name": "very_complex", "complexity": "very_complex",
     "input": "Research AI tech, evaluate impact, recommend strategy"}
]

Evaluation Pipeline

def evaluate_agent(agent, test_set):
    results = []
    for test in test_set:
        output = agent.run(test["input"])
        scores = llm_judge(output, test)
        results.append({
            "test": test["name"],
            "scores": scores,
            "passed": scores["overall"] >= 0.7
        })
    return results

Complexity Stratification

LevelCharacteristics
SimpleSingle tool call
MediumMultiple tool calls
ComplexMany calls, ambiguity
Very ComplexExtended interaction, deep reasoning

Context Engineering Evaluation

Test context strategies systematically:

  1. Run agents with different strategies on same tests
  2. Compare quality scores, token usage, efficiency
  3. Identify degradation cliffs at different context sizes

Continuous Evaluation

  • Run evaluations on all agent changes
  • Track metrics over time
  • Set alerts for quality drops
  • Sample production interactions

Avoiding Pitfalls

PitfallSolution
Path overfittingEvaluate outcomes, not steps
Ignoring edge casesInclude diverse scenarios
Single metricMulti-dimensional rubrics
Ignoring contextTest realistic context sizes
No human reviewSupplement automated eval

Best Practices

  1. Use multi-dimensional rubrics
  2. Evaluate outcomes, not specific paths
  3. Cover complexity levels
  4. Test with realistic context sizes
  5. Run evaluations continuously
  6. Supplement LLM with human review
  7. Track metrics for trends
  8. Set clear pass/fail thresholds

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon