Skip to content

Commit 055e13e

Browse files
committed
feat(just): corpus-refresh pipeline — provision → extract → retrain
Justfile Three new recipes that compose the scripts landed in e8854ab into an idiomatic end-to-end retrain flow: just provision-corpora [NAMES...] # scripts/provision_corpora.sh just corpora-status # on-disk report just extract-corpora [NAMES...] # scripts/extract_all.sh just retrain # src/julia/run_training.jl just corpus-refresh # all three, in order Each step is idempotent; re-running the pipeline only touches what has changed. The retrain recipe honours the env-var knobs added in 62e55f7 (ECHIDNA_MAX_PROOF_STATES, ECHIDNA_NUM_EPOCHS, ECHIDNA_NUM_NEGATIVES), so: ECHIDNA_MAX_PROOF_STATES=0 just corpus-refresh re-baselines MRR against the full expanded corpus on GPU hardware.
1 parent e8854ab commit 055e13e

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

Justfile

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,40 @@ vocab-canon:
7474
julia scripts/vocabulary_mine_corpus.jl
7575
julia scripts/vocabulary_canonicalize.jl
7676

77+
# ── Corpus / training pipeline ─────────────────────────────────
78+
#
79+
# Three steps in order: provision upstream mirrors, run every extractor,
80+
# then retrain. Each step is idempotent; re-running only touches what
81+
# has changed. See scripts/provision_corpora.sh --list for the source
82+
# catalogue.
83+
84+
# Clone every upstream prover corpus into external_corpora/.
85+
# Pass specific names to provision a subset: `just provision-corpora metamath mathlib4`.
86+
provision-corpora *NAMES:
87+
@if [ -z "{{NAMES}}" ]; then \
88+
scripts/provision_corpora.sh --all; \
89+
else \
90+
scripts/provision_corpora.sh {{NAMES}}; \
91+
fi
92+
93+
# Report which upstream corpora are on disk and their sizes.
94+
corpora-status:
95+
scripts/provision_corpora.sh --status
96+
97+
# Run every scripts/extract_*.jl against the provisioned corpora.
98+
# Pass names to run a subset: `just extract-corpora metamath mathlib4`.
99+
extract-corpora *NAMES:
100+
scripts/extract_all.sh {{NAMES}}
101+
102+
# Full retrain from provisioned corpora. Honours ECHIDNA_MAX_PROOF_STATES
103+
# (0 = unlimited), ECHIDNA_NUM_EPOCHS, ECHIDNA_NUM_NEGATIVES.
104+
retrain:
105+
julia --project=src/julia src/julia/run_training.jl
106+
107+
# End-to-end pipeline: provision → extract → retrain.
108+
# Use `ECHIDNA_MAX_PROOF_STATES=0 just corpus-refresh` to lift the sample cap.
109+
corpus-refresh: provision-corpora extract-corpora retrain
110+
77111
# Run the eight-axis metrics suite against the current corpus and post
78112
# results to VeriSimDB. Falls back to training_data/metrics_<run_id>.jsonl
79113
# if VERISIM_URL is unreachable. Target values are documented in

0 commit comments

Comments
 (0)