evaluation_upravy

This commit is contained in:
Ján Pták 2026-08-16 16:57:30 +02:00
parent 07134b7681
commit 0641a71284

View File

@ -24,6 +24,9 @@ from evaluation.rag_metrics import (
summarize_results,
)
from evaluation.rag_runner import (
DEFAULT_BACKOFF_BASE,
DEFAULT_BACKOFF_MAX,
DEFAULT_MAX_ATTEMPTS,
DEFAULT_MODEL,
DEFAULT_TIMEOUT,
LOCAL_OPENAPI_URL,
@ -155,6 +158,39 @@ def parse_args() -> argparse.Namespace:
),
)
parser.add_argument(
"--max-attempts",
type=int,
default=DEFAULT_MAX_ATTEMPTS,
help=(
"Maximálny počet HTTP pokusov "
"pre retryable chyby. "
f"Predvolené: {DEFAULT_MAX_ATTEMPTS}."
),
)
parser.add_argument(
"--backoff-base",
type=float,
default=DEFAULT_BACKOFF_BASE,
help=(
"Počiatočný exponential backoff "
"v sekundách. "
f"Predvolené: {DEFAULT_BACKOFF_BASE}."
),
)
parser.add_argument(
"--backoff-max",
type=float,
default=DEFAULT_BACKOFF_MAX,
help=(
"Maximálny exponential backoff "
"v sekundách. "
f"Predvolené: {DEFAULT_BACKOFF_MAX}."
),
)
parser.add_argument(
"--delay",
type=float,
@ -200,6 +236,21 @@ def parse_args() -> argparse.Namespace:
"--timeout musí byť > 0"
)
if args.max_attempts <= 0:
parser.error(
"--max-attempts musí byť > 0"
)
if args.backoff_base < 0:
parser.error(
"--backoff-base nesmie byť záporné"
)
if args.backoff_max < 0:
parser.error(
"--backoff-max nesmie byť záporné"
)
if args.delay < 0:
parser.error(
"--delay nesmie byť záporné"
@ -799,7 +850,8 @@ def main() -> int:
try:
openwebui_api_key = (
load_env_value(
"OPENWEBUI_API_KEY"
"OPENWEBUI_API_KEY",
allow_env_file=False,
)
)
@ -821,6 +873,15 @@ def main() -> int:
openapi = request_json(
LOCAL_OPENAPI_URL,
timeout=args.timeout,
max_attempts=(
args.max_attempts
),
backoff_base=(
args.backoff_base
),
backoff_max=(
args.backoff_max
),
)
operation_id, rag_tool = (
@ -912,6 +973,17 @@ def main() -> int:
f"{len(questions)}"
)
print(
"Retry: "
f"{args.max_attempts} pokusy"
)
print(
"Backoff: "
f"{args.backoff_base}s "
f"→ max {args.backoff_max}s"
)
print(
"=" * 60
)
@ -1010,6 +1082,15 @@ def main() -> int:
search_api_key
),
timeout=args.timeout,
max_attempts=(
args.max_attempts
),
backoff_base=(
args.backoff_base
),
backoff_max=(
args.backoff_max
),
)
scores = evaluate_answer(
@ -1092,6 +1173,15 @@ def main() -> int:
"applied_override_ids": (
selected_override_ids
),
"max_attempts": (
args.max_attempts
),
"backoff_base": (
args.backoff_base
),
"backoff_max": (
args.backoff_max
),
"completed_so_far": len(
results
),
@ -1174,6 +1264,15 @@ def main() -> int:
"timeout": (
args.timeout
),
"max_attempts": (
args.max_attempts
),
"backoff_base": (
args.backoff_base
),
"backoff_max": (
args.backoff_max
),
"delay": (
args.delay
),