"""
SAGE Evaluation Framework

Tools for benchmarking and evaluating the SAGE RAG system
against NCS benchmark datasets.
"""

from sage.evaluation.benchmark import (
    BenchmarkResult,
    BenchmarkRunner,
    QuestionResult,
    load_benchmark_result,
    save_benchmark_result,
)
from sage.evaluation.datasets import (
    BenchmarkDataset,
    BenchmarkQuestion,
    DatasetLoader,
    Difficulty,
    QuestionCategory,
    create_sample_ncs_dataset,
    load_or_create_sample_dataset,
)
from sage.evaluation.metrics import (
    AnswerMetrics,
    CitationMetrics,
    EvaluationMetrics,
    MetricsCalculator,
    RetrievalMetrics,
    SafetyMetrics,
)
from sage.evaluation.reports import (
    ReportConfig,
    ReportGenerator,
    generate_summary_report,
)
from sage.evaluation.icsbep_validator import (
    BenchmarkComparison,
    ICSBEPValidator,
    KeffInterpretation,
)
from sage.evaluation.validation_metrics import (
    ValidationMetrics,
    ValidationMetricsTracker,
    ValidationThresholds,
)

__all__ = [
    # Benchmark
    "BenchmarkRunner",
    "BenchmarkResult",
    "QuestionResult",
    "save_benchmark_result",
    "load_benchmark_result",
    # Datasets
    "BenchmarkDataset",
    "BenchmarkQuestion",
    "DatasetLoader",
    "QuestionCategory",
    "Difficulty",
    "create_sample_ncs_dataset",
    "load_or_create_sample_dataset",
    # Metrics
    "MetricsCalculator",
    "EvaluationMetrics",
    "AnswerMetrics",
    "CitationMetrics",
    "RetrievalMetrics",
    "SafetyMetrics",
    # Reports
    "ReportGenerator",
    "ReportConfig",
    "generate_summary_report",
    # ICSBEP Validation
    "ICSBEPValidator",
    "KeffInterpretation",
    "BenchmarkComparison",
    # Validation Metrics
    "ValidationMetricsTracker",
    "ValidationMetrics",
    "ValidationThresholds",
]
