Persist an eval set to `` /.openkb/eval-sets/ .json``.
(
kb_dir: Path,
skill_name: str,
prompts: list[EvalPrompt],
)
| 463 | |
| 464 | |
| 465 | def save_eval_set( |
| 466 | kb_dir: Path, |
| 467 | skill_name: str, |
| 468 | prompts: list[EvalPrompt], |
| 469 | ) -> Path: |
| 470 | """Persist an eval set to ``<kb>/.openkb/eval-sets/<skill_name>.json``.""" |
| 471 | out_dir = kb_dir / ".openkb" / "eval-sets" |
| 472 | out_dir.mkdir(parents=True, exist_ok=True) |
| 473 | out_path = out_dir / f"{skill_name}.json" |
| 474 | data = { |
| 475 | "should_trigger": [p.question for p in prompts if p.expected == "trigger"], |
| 476 | "should_not": [p.question for p in prompts if p.expected == "no-trigger"], |
| 477 | } |
| 478 | out_path.write_text(json.dumps(data, indent=2) + "\n", encoding="utf-8") |
| 479 | return out_path |
| 480 | |
| 481 | |
| 482 | def load_eval_set(path: Path) -> list[EvalPrompt]: |
no outgoing calls