Skip to content

Configuration

Runtime settings live in the Settings dataclass in oddsgraph/config.py. CLI flags override selected fields at runtime; the table below is the code default source of truth.

Paths

Field Default Purpose
repo_root package parent Repository root
data_dir <repo>/data Source parquet directory
build_dir <repo>/build Build artifacts
models_dir <repo>/models Local model weights
fragments_dir build/fragments Per-event fragment JSON
failed_fragments_dir build/fragments/_failed Failed fragment dumps
input_glob data/*market_hourly_odds*.parquet Preferred input glob
fallback_glob polymarket_wc2026_market_hourly_odds_*.parquet Fallback input glob
semantic_markets_path build/semantic_markets.parquet Reduced markets
nodes_path build/nodes.parquet Exported nodes
edges_path build/edges.parquet Exported edges
rejected_edges_path build/rejected_edges.parquet Rejected edges
ontology_path build/ontology.json Ontology dump
inference_report_path build/inference_report.json Inference report
implies_closure_path build/implies_closure.parquet On-demand transitive IMPLIES
odds_history_path build/odds_history.parquet Knockout advance odds time series
stage_odds_history_path build/stage_odds_history.parquet Stage-reach / champion odds time series

Model / LLM

Field Default Purpose
model_path models/qwen3-4b-q4_k_m.gguf GGUF path
mlx_model_path models/qwen3-4b-mlx MLX model directory
n_ctx 8192 Model context window
n_gpu_layers -1 GPU layers (-1 = all)
max_tokens 4096 Max generation tokens
temperature 0.1 Sampling temperature
max_retries 2 LLM retries
chunk_token_budget 5000 Max estimated input tokens per chunk
chunk_output_token_budget 4096 Max estimated output tokens per chunk
max_markets_per_chunk 24 Hard cap on markets per chunk
chunk_context_safety_margin 64 Context safety margin
max_text_field_chars 500 Truncate long prompt fields
flash_attn true Metal flash attention (in-process)
n_batch / n_ubatch 1024 llama.cpp batch sizes
llm_backend inprocess inprocess, server, or mlx
server_base_url http://127.0.0.1:8080 llama-server base URL
server_request_timeout 120.0 HTTP timeout seconds
llm_concurrency 2 Concurrent server requests

Pipeline behavior

Field Default Purpose
deterministic_topology true Skip LLM for template-covered events
official_bracket true Inject curated FIFA schedule on build
compile_propositions true Compile formal propositions onto OUTCOME nodes
apply_rules true Apply deterministic logical rules over propositions
verify_deterministic false LLM confirm/patch over deterministic output
verify_max_tokens 512 Max tokens for verify pass
use_few_shot_exemplars true Few-shot exemplars in residual prompts
few_shot_top_k 2 Exemplars per residual prompt
competition_label World Cup 2026 COMPETITION label/slug base
fuzzy_threshold 92 Entity resolution fuzzy match cutoff
minimum_confidence 0.0 Edge confidence floor on build
resume true Reuse completed fragments / verified topology when manifests match
limit_events None Optional event cap
event_ids [] Optional explicit event ID list

See also