File size: 844 Bytes
85b19cf
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
"""Configuration types for eval runs (CLI, dry-run, and smoke execution)."""

from __future__ import annotations

from dataclasses import dataclass
from pathlib import Path
from typing import Any


@dataclass
class EvalConfig:
    """Resolved paths and flags for one eval invocation."""

    dataset_path: Path
    output_dir: Path
    baseline: str
    smoke: bool = False
    dry_run: bool = False

    def to_display_dict(self) -> dict[str, Any]:
        """JSON-friendly snapshot for dry-run and logging."""
        return {
            "dataset_path": str(self.dataset_path),
            "output_dir": str(self.output_dir),
            "baseline": self.baseline,
            "smoke": self.smoke,
            "dry_run": self.dry_run,
            "dataset_profile": "domain_a_v2_academic",
            "judge": "llm (OpenAI API)",
        }