harrrshall's picture
Release BarunAction-35M candidate-v2
5a46e5d verified
Raw
History Blame Contribute Delete
768 Bytes
from __future__ import annotations
import argparse
import json
from pathlib import Path
from .config import TrainingRunConfig
from .trainer import train_sft
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser(
description="Full-parameter, response-only SFT for a pinned BarunLM checkpoint."
)
parser.add_argument(
"--config",
type=Path,
required=True,
help="Path to a strict barun-sft-config-v2 JSON file.",
)
return parser.parse_args()
def main() -> None:
args = parse_args()
config = TrainingRunConfig.from_json(args.config)
summary = train_sft(config)
print(json.dumps(summary.to_dict(), allow_nan=False, sort_keys=True))
if __name__ == "__main__":
main()