Evaluation¶
EvalCase ¶
Bases: BaseModel
A single evaluation test case.
Defines what to send to the agent and what to expect back.
Example
case = EvalCase( ... name="ioc_triage", ... prompt="Is 198.51.100.23 malicious? Enrich it and decide.", ... expected_tools=["enrich_indicator"], ... expected_output_contains=["malicious", "198.51.100.23"], ... max_iterations=5, ... )
EvalResult ¶
Bases: BaseModel
Result from evaluating a single case.
EvalReport ¶
Bases: BaseModel
Aggregated report from running an eval suite.
summary ¶
Generate a human-readable summary.
Source code in .sdk/src/tulip/evaluation/framework.py
EvalRunner ¶
Run evaluation cases against an agent.
Example
runner = EvalRunner(agent=my_agent) report = runner.run( ... [ ... EvalCase( ... name="basic", prompt="Hello", expected_output_contains=["hello"] ... ), ... EvalCase( ... name="tool_use", prompt="Search for X", expected_tools=["search"] ... ), ... ] ... ) print(report.summary())
Source code in .sdk/src/tulip/evaluation/framework.py
run ¶
Run all eval cases and produce a report.