figment / scripts /generate_v7_full_corpus.py
ThomsenDrake's picture
Sync full submission repo state
94cbe85 verified
Raw
History Blame Contribute Delete
2.16 kB
"""Generate, verify, and Modal-prep the Figment v7 delta SFT corpus."""
from __future__ import annotations
import argparse
from pathlib import Path
import sys
PROJECT_ROOT = Path(__file__).resolve().parents[1]
if str(PROJECT_ROOT) not in sys.path:
sys.path.insert(0, str(PROJECT_ROOT))
from scripts.generate_finetune_data import V7_NAVIGATOR_COUNTS # noqa: E402
from scripts.generate_v3_full_corpus import main as _run_full_corpus # noqa: E402
DEFAULT_OUTPUT_VERSION = "figment_sft_v7_delta"
DEFAULT_TEACHER_MODEL_ID = "nvidia/nemotron-3-ultra-550b-a55b:free"
DEFAULT_NAVIGATOR_COUNT = sum(V7_NAVIGATOR_COUNTS.values())
DEFAULT_REPAIR_COUNT = 240
DEFAULT_ARGS = [
"--dataset-version",
DEFAULT_OUTPUT_VERSION,
"--navigator-count",
str(DEFAULT_NAVIGATOR_COUNT),
"--repair-count",
str(DEFAULT_REPAIR_COUNT),
"--teacher-model-id",
DEFAULT_TEACHER_MODEL_ID,
"--base-start-index",
"80000",
"--shard-prefix",
"data/finetune/shards/figment_sft_v7_delta_full_shard",
"--output",
"data/finetune/figment_sft_v7_delta.jsonl",
"--case-specs",
"data/finetune/figment_sft_v7_delta_case_specs.jsonl",
"--manifest",
"data/finetune/figment_sft_v7_delta_manifest.json",
"--modal-output-dir",
"data/finetune/modal/figment_sft_v7_delta",
"--seed",
"figment-modal-sft-v7-delta",
]
def build_corpus_args(argv: list[str] | None = None) -> list[str]:
raw_args = list(sys.argv[1:] if argv is None else argv)
parser = argparse.ArgumentParser(add_help=False)
parser.add_argument("--navigator-count", type=int, default=DEFAULT_NAVIGATOR_COUNT)
parser.add_argument("--repair-count", type=int, default=DEFAULT_REPAIR_COUNT)
parsed, remaining = parser.parse_known_args(raw_args)
defaults = list(DEFAULT_ARGS)
defaults[defaults.index("--navigator-count") + 1] = str(parsed.navigator_count)
defaults[defaults.index("--repair-count") + 1] = str(parsed.repair_count)
return defaults + remaining
def main(argv: list[str] | None = None) -> int:
return _run_full_corpus(build_corpus_args(argv))
if __name__ == "__main__":
raise SystemExit(main())