File size: 1,670 Bytes
f440f03
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
"""Modeļa novērtēšana."""

from __future__ import annotations

import argparse
import json
import logging

from maris_core.training.config import load_training_config
from maris_core.training.train import evaluate_with_config


def evaluate(
    config_path: str | None = None,
    model_path: str | None = None,
    dataset_repo: str | None = None,
    eval_dataset_repo: str | None = None,
    benchmark_dataset_path: str | None = None,
) -> dict[str, float]:
    """Novērtē modeļa kvalitāti."""
    config = load_training_config(
        config_path,
        overrides={
            "dataset_repo": dataset_repo,
            "eval_dataset_repo": eval_dataset_repo,
            "benchmark_dataset_path": benchmark_dataset_path,
            "output_dir": model_path,
        },
    )
    return evaluate_with_config(config, model_path=model_path)


if __name__ == "__main__":
    parser = argparse.ArgumentParser(description="Novērtē Maris AI modeli")
    parser.add_argument("--config", help="JSON konfigurācijas fails")
    parser.add_argument("--model-path", help="Modeļa ceļš vai HF repo")
    parser.add_argument("--dataset-repo", help="HF dataset repo ID")
    parser.add_argument("--eval-dataset-repo", help="Atsevišķs HF eval dataset repo ID")
    parser.add_argument("--benchmark-dataset-path", help="Lokāls JSON benchmark datasets")
    args = parser.parse_args()

    logging.basicConfig(level=logging.INFO)
    results = evaluate(
        args.config,
        args.model_path,
        args.dataset_repo,
        args.eval_dataset_repo,
        args.benchmark_dataset_path,
    )
    print(json.dumps(results, indent=2, ensure_ascii=False))