05_generate_testset.py 670 Bytes
from __future__ import annotations

import sys

import _bootstrap  # noqa: F401

from weknora_eval.config import load_config
from weknora_eval.loaders import setup_logging
from weknora_eval.testset import generate_rule_based_testset


def main() -> int:
    setup_logging()
    config = load_config()
    testset = config.get("testset", {})
    rows = generate_rule_based_testset(
        size=int(testset.get("size", 50)),
        min_context_chars=int(testset.get("min_context_chars", 80)),
    )
    print(f"Generated {len(rows)} pending QA candidates at data/testsets/testset.raw.jsonl")
    return 0 if rows else 1


if __name__ == "__main__":
    sys.exit(main())