File size: 700 Bytes
78dea75
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
#!/usr/bin/env python3
"""Supervised fine-tuning on instruction/response JSONL."""

from __future__ import annotations

import argparse
import sys
from pathlib import Path

ROOT = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(ROOT / "src"))

from weather_llm.config_loader import repo_root_from
from weather_llm.training.sft_trainer import run_sft


def main() -> int:
    ap = argparse.ArgumentParser()
    ap.add_argument("--sft_config", type=Path, default=None)
    args = ap.parse_args()
    root = repo_root_from(ROOT)
    cfg = args.sft_config or (root / "configs/sft_default.yaml")
    run_sft(cfg.resolve())
    return 0


if __name__ == "__main__":
    raise SystemExit(main())