limen.sfd.foundational_sfd
The catalog of packaged, ready-to-run Single-File Decoders.
Canonical docs
What this package owns
Owns the production-oriented, packaged SFD modules — each defining an experiment shape via params() and a manifest() that wires the data pipeline together.
Does not own model training logic (owned by the matching limen.sfd.reference_architecture model) or experiment execution.
Key entry points
| Entry point | Use case | Notes |
|---|---|---|
logreg_binary | Standard binary-classification SFD | Manifest-driven |
dlinear_regressor | Linear time-series regression SFD | Manifest-driven |
lightgbm_binary | Gradient-boosted binary classifier SFD | Manifest-driven |
xgboost_regressor | Regression-style SFD | Manifest-driven |
random_binary | Baseline classifier for comparison | Manifest-driven |
rule_based | Predicate-driven, non-learned SFD | Uses limen.sfd.rule_based |
tabpfn_binary | TabPFN-based SFD | Module is lazy; model use requires the tabpfn extra |
Adjacent modules
limen.sfd.reference_architecturesupplies the model function each foundational SFD delegates training to.limen.experimentruns these SFDs, consuming theirparams()andmanifest().limen.data,limen.indicators,limen.features,limen.transforms, andlimen.scalersare the building blocks the manifests wire together.
Quick orientation
foundational_sfd/
├── logreg_binary.py
├── dlinear_regressor.py
├── lightgbm_binary.py
├── xgboost_regressor.py
├── random_binary.py
├── rule_based.py
└── tabpfn_binary.py # Optional
Things to know
- Exports are lazy: the package uses module-level
__getattr__, so importingfoundational_sfddoes not import heavy model dependencies until a specific SFD is accessed. This is whytabpfn_binarycan be listed withouttabpfninstalled. - A foundational SFD owns the experiment shape; the matching reference architecture owns the training logic.
- The simplest path to a new SFD is to copy an existing module, adjust
params(), and modify the manifest chain.