Skip to content

Running the pipeline

OddsFox Graph exposes a Typer CLI named oddsgraph. Every command shares --build-dir, --data-dir, and --verbose.

Commands

Command What it does
oddsgraph reduce Reduce hourly odds parquet to semantic market records
oddsgraph infer Infer graph fragments per event (deterministic + residual LLM)
oddsgraph build Resolve entities, compile propositions, apply rules, export
oddsgraph odds-history Build match + stage probability time-series parquet (one source scan)
oddsgraph validate Validate exported artifacts
oddsgraph closure On-demand transitive IMPLIES closure
oddsgraph run Full pipeline: reduce → infer → build → odds-history → validate

Stage-by-stage

oddsgraph reduce
oddsgraph -v infer --limit-events 10
oddsgraph build
oddsgraph odds-history
oddsgraph validate
oddsgraph closure   # optional

Or one shot:

oddsgraph -v run --limit-events 10

oddsgraph run with --event-id / --limit-events reuses the same in-memory market list for build, and inferred/verified fragments are filtered to those event IDs so the exported graph stays scoped. Standalone oddsgraph build still reads the full semantic parquet (and all on-disk fragments) unless you pass a narrowed market list programmatically.

Useful flags

Infer / run:

oddsgraph infer \
  --llm-backend server \
  --concurrency 4 \
  --deterministic-topology \
  --resume

Build / run:

oddsgraph build --minimum-confidence 0.5 --official-bracket
oddsgraph build --no-propositions --no-reasoning

See CLI for the complete flag list and Configuration for Settings defaults.

Output locations

Default build directory is build/:

build/semantic_markets.parquet
build/fragments/
build/nodes.parquet
build/edges.parquet
build/rejected_edges.parquet
build/odds_history.parquet          # from oddsgraph odds-history / run
build/stage_odds_history.parquet    # from oddsgraph odds-history / run
build/implies_closure.parquet   # from oddsgraph closure
build/inference_report.json
build/ontology.json

See also