Nori-30M is the ~29.2M-parameter variant of Nori, a tabular foundation model for regression via in-context learning (ICL). Given a few labeled rows as context, it predicts on new query rows in a single forward pass, with no task-specific training or fine-tuning. The model is trained entirely on synthetic data. Mean and median R² across 96 regression tasks from three public benchmark suites, on the same protocol as the base Nori: Stronger than the ~6M base on every suite. Evaluated with the bundled default inference config and the large-GPU protocol (up to 50k context rows per dataset). Paste this into Claude Code, Cursor, or any AI coding assistant and it will wire python from synthefynori…
Open-weight model · Tabular classification
xcross-attempt-v1
by (Ministry of) Silly Kicks silly-kicks/xcross-attempt-v1
xcross-attempt-v1 is an open-weight model for tabular classification from (Ministry of) Silly Kicks, released under MIT License. Its published files total 1.1 MB.
XCrossAttemptModel is a deterministic-XGBoost classifier estimating P(the in-possession team attempts a cross within ~1 s of a tracking frame) — a STATE-anchored framing, reframed from the sender-level event treatment in Cao et al. (arXiv:2505.11841).
Model Card
By (Ministry of) Silly Kicks, published under mit, revision 94b8b5ffb2d8.
XCrossAttemptModel is a deterministic-XGBoost classifier estimating P(the in-possession team attempts a cross within ~1 s of a tracking frame) — a STATE-anchored framing, reframed from the sender-level event treatment in Cao et al. (arXiv:2505.11841). It carries 7 of the paper's 8 confounders (crosser-position, #7, is omitted — no faithful tracking-only proxy) plus a novel, isolatable GK-position confounder block, which is the paper's headline gap and the reason this model exists inside the GKDV research arc (TF-17 → TF-19). - 16 features, faithful (velocity-bearing), goal-relative coordinates via the shared geometry helper - The scextended model is fit on the owner-tier corpus (IDSSE +…
Read (Ministry of) Silly Kicks's full model card
xCrossAttempt v1 (sc_extended) — Cross-Attempt Propensity from Tracking State
Read this first. This repo serves the
sc_extended(owner-tier) variant. It is NOT bundled with thesilly-kickswheel because it is trained on restricted owner-tier data that cannot be redistributed inside a PyPI package — a licensing constraint. Only the learned parameters are published here. If you do not have owner-tier access, use the bundleddefaultvariant instead — see Which variant should I use?.
Model Description
XCrossAttemptModel is a deterministic-XGBoost classifier estimating P(the in-possession team
attempts a cross within ~1 s of a tracking frame) — a STATE-anchored framing, reframed
from the sender-level event treatment in Cao et al. (arXiv:2505.11841).
It carries 7 of the paper's 8 confounders (crosser-position, #7, is omitted — no faithful tracking-only proxy) plus a novel, isolatable GK-position confounder block, which is the paper's headline gap and the reason this model exists inside the GKDV research arc (TF-17 → TF-19).
- 16 features,
faithful(velocity-bearing), goal-relative coordinates via the shared_geometryhelper - Domain filter: alive-ball, wide-area
- The
sc_extendedmodel is fit on the owner-tier corpus (IDSSE + SkillCorner incl. owner-tier); base rate 5.0% positive.
Which variant should I use?
| Variant | Corpus | Where it lives | Use it? |
|---|---|---|---|
default (public) |
17 matches — SkillCorner + IDSSE, redistributable | bundled in the wheel | Default choice — offline, fully reproducible, no restricted data |
sc_extended |
IDSSE + SkillCorner incl. 98 owner-tier SkillCorner matches | this repo (HF-only) | Yes, if you have owner-tier access and can accept a Hub download + the corpus caveats below |
sc_extended_position_only |
same owner-tier corpus, velocity features dropped (15-feature) | separate repo silly-kicks/xcross-attempt-position-only-v1 (HF-only) |
Yes, if scoring velocity-less frames (StatsBomb-360 freeze frames) with owner-tier access — a stronger position-only model than the bundled position_only. Reachable ONLY via from_variant("sc_extended_position_only"); asking for sc_extended still returns this faithful model (ADR-070). |
Why this variant is HF-only
sc_extended is HF-only for licensing, not quality: it is trained on restricted owner-tier
SkillCorner data that cannot be redistributed inside the PyPI wheel (ADR-038). Only learned
parameters are published here — no raw provider tracking data (only split thresholds, feature indices and leaf values are stored — no per-sample training data).
The Hub sc_extended repo is the owner-tier archive: it holds the owner-tier model independent of
the wheel-bundle selection gate, which decides only what ships in the wheel (ADR-071). This artifact
was produced with that operator override (--ship-variant sc_extended); the gate's verdict and
per-fold deltas are recorded in metrics.json (candidates.paired). training_commit: b658445.
Held-out CV (5 folds, out-of-fold)
| Metric | Value | Baseline |
|---|---|---|
| PR-AUC | 0.1888 (± 0.0108) | base rate 0.0500 |
| Brier | 0.0436 | base-rate Brier 0.0475 |
| Log loss | 0.1658 | — |
All four acceptance gates pass (enough_usable_folds, pr_auc_gt_base_rate,
brier_lt_base_rate_brier, log_loss_lt_uniform). Estimates are CV, not the shipped fit.
TF-19 GK-substitution probe
The frozen GK-substitution probe (gk_substitution_probe in metrics.json; 200 frames; ADR-037's
two-prong gate — ratio ≥ 2.0 × the nearest-defender control and an absolute floor ≥ 0.01):
| Metric | Value |
|---|---|
gk_median_abs_delta |
0.00625 |
nearest_def_median_abs_delta |
0.00329 |
| ratio (gk / control) | 1.90× — misses (needs ≥ 2.0) |
| absolute floor | 0.00625 < 0.01 — misses |
tf19_ready |
false |
The GK-block ablation shows the GK confounder block does carry signal (removing it drops held-out
PR-AUC by 0.0089), but the substitution probe does not clear the frozen gate. Per ADR-037 this is a
gated_clean_fail — TF-19 routes to GK feature engineering, explicitly not "no signal." Do not
build a TF-19 consumer on this surface. (The position-only sibling — xcross-attempt-position-only-v1 —
does clear the gate; see its card.)
Usage
from silly_kicks.tracking import XCrossAttemptModel
model = XCrossAttemptModel.from_variant("default") # recommended, bundled, offline
model = XCrossAttemptModel.from_variant("sc_extended") # this repo, downloads from the Hub
Requires pip install silly-kicks[xcross] and silly-kicks >= 4.74.0 (the
sc_extended_position_only sibling repo requires >= 4.94.0, which introduced its variant key —
ADR-070).
The
>= 4.74.0floor is a hard requirement. These weights are on the corrected goal-relative transform (geometry_version: goal-relative-2); ADR-051 found the previous transform was chiral (an x-only mirror at one goal end, identity at the other), so one physical scene scored differently depending which end the attacking team attacked.load()'s feature-contract prong is fail-closed, so an older silly-kicks refuses these weights withIntegrityError.from_hub()takes norevisionargument yet, so treat the library version as the pin; prior revisions are addressable by commit SHA.
Integrity and load-time guards
load() is fail-closed on two independent checks: (1) SHA256SUMS verified before anything is
parsed; (2) chirality fingerprint (ADR-040) — the model re-runs its own outputs on a fixed
y-asymmetric probe frame and compares to the recorded fingerprint, raising on a mismatch and on a
missing one. A base_score guard handles the xgboost 3.x bracketed-string serialization that 2.x
silently drops to 0.5.
Limitations
- Not the bundled model (restricted corpus). This is a redistribution limit, not a performance one.
tf19_ready = false(see the TF-19 section) — do not build a TF-19 consumer on this surface.- Trained on an owner-tier corpus that is heavily one-club (the 98 owner-tier additions are a single club), so club/style confounding is real and unquantified here.
- SkillCorner keepers are detected in only ~19.6% of frames (~80% interpolated), which is why GKDV measurement is registered to Gradient Sports frames only (ADR-038 §5).
- Estimates are cross-validated, not a held-out test of the shipped fit.
References
See the NOTICE file in the silly-kicks repository for full bibliographic citations.
- Cao et al. "Framing Causal Questions in Sports Analytics: A Case Study of Crossing in Soccer." arXiv:2505.11841 (2025).
- Decisions: ADR-011 (trained-model lifecycle), ADR-015 (causal-validation port), ADR-037 (TF-19 re-gate), ADR-038 (corpus + visibility), ADR-040 (chirality enforcement), ADR-070 (position-only Hub variant), ADR-071 (owner-tier archive).
Model Files
| File | Purpose |
|---|---|
model.json |
XGBoost booster (pickle-free) |
metadata.json |
features, hyperparameters, chirality fingerprint, provenance |
metrics.json |
CV metrics, GK-substitution probe, ablation, permutation importance |
SHA256SUMS |
integrity manifest, verified by load() |
More Information
https://github.com/karsten-s-nielsen/silly-kicks
Wheel sibling (4.134.0)
In silly-kicks 4.134.0 the wheel's bundled default was re-fit on the corrected floor velocities (TF-65 / ADR-120, training_commit=a34e992). This Hub owner-tier artifact is unchanged this cycle: the velocity-gap re-fit touched only the wheel-bundled public variant; re-fitting this restricted sc_extended model on the corrected velocities is a tracked owner-run follow-up.
Identity and Version
- Repository
- silly-kicks/xcross-attempt-v1
- Publisher
- (Ministry of) Silly Kicks
- Task
- Tabular classification
- Modality
- Tabular
- Library
- silly-kicks
- Parameters
- Not stated by the source
- Languages
- en
- Revision
- 94b8b5ffb2d852dd802ad95a1710437e3b05350e
- First published
- 2026-08-26
- Last updated
- 2026-10-13
Files and Weights
6 files, 1.1 MB in total.
Every file
| File | Type | Size | SHA-256 |
|---|---|---|---|
| metadata.json | Configuration | 2.0 KB | — |
| metrics.json | Configuration | 5.3 KB | — |
| model.json | Configuration | 1.1 MB | — |
| README.md | Documentation | 8.2 KB | — |
| SHA256SUMS | Other | 157 B | — |
| .gitattributes | Repository | 1.5 KB | — |
License and Download
- License
- mit
- Access
- Open weights, no gate
Released by (Ministry of) Silly Kicks through its official repository on Hugging Face. Read the license.
Built From
- Described by arXiv:2505.11841
Questions About xcross-attempt-v1
Can I use xcross-attempt-v1 commercially?
Yes. xcross-attempt-v1 is released under MIT License. The MIT License is a short permissive license. It permits commercial use, modification and redistribution, provided the copyright notice and permission notice are included.
Similar Models
Go to SAP-RPT Playground ↗ Note: This model and repository were formerly known as ConTextTab. While the code and repository have now been updated in line with the new name sap-rpt-1-oss, the model checkpoint and functionality remain identical. Implementation of the deep learning model with the inference pipeline described in the paper "ConTextTab: A Semantics-Aware Tabular In-Context Learner". Tabular in-context learning (ICL) has recently achieved state-of-the-art (SOTA) performance on several tabular prediction tasks. Previously restricted to classification problems on small tables, recent advances such as TabPFN and TabICL have extended its use to larger datasets. While being…
Nori is a tabular foundation model for regression via in-context learning (ICL). Given a few labeled rows as context, it predicts on new query rows in a single forward pass, with no task-specific training or fine-tuning. The model is trained entirely on synthetic data. Mean and median R² of the base model across 96 regression tasks from three public benchmark suites (single H200, up to 50K context rows per dataset): Large-N / long-context tables (common in TabArena) are the current focus of the large-table training stages. These numbers are reproducible end-to-end with one command — see Reproducing these numbers. Paste this into Claude Code, Cursor, or any AI coding assistant and it will…
EXAONE Tabular is a transformer-based foundation model for tabular data that solves classification and regression through in-context learning: you pass the labeled rows to fit and the model predicts new rows in a single forward pass — no gradient updates and no per-dataset training. This repository is the exaonetabular inference runtime — a self-contained package that loads a released checkpoint and serves predictions through a small, scikit-learn-style API. The code here is permissively licensed; the released weights are non-commercial — see Both checkpoints are released: EXAONETabularClassifier and EXAONETabularRegressor each fetch their own weights with a single frompretrained() call.…
TabPFN is a transformer-based foundation model for tabular data that leverages prior-data based learning to achieve strong performance on small tabular datasets without requiring task-specific training. For detailed usage examples and best practices, check out: - Python ≥ 3.9 - PyTorch ≥ 2.1 - scikit-learn ≥ 1.0 This repository hosts the production TabPFN-v2 base checkpoints. Files matching the pattern tabpfn-v2-classifier-finetuned-.ckpt are content-identical aliases of the corresponding base checkpoints (e.g. tabpfn-v2-classifier-finetuned-gn2p4bpt-xp6f0iqb.ckpt is identical to tabpfn-v2-classifier-gn2p4bpt.ckpt; tabpfn-v2-classifier-finetuned-zk73skhh.ckpt is identical to…
TabFM is a zero-shot tabular foundation model from Google Research. It supports classification and regression on structured/tabular data with mixed numerical and categorical columns, requiring no fine-tuning or hyperparameter search - training examples are passed as context and predictions are made in a single forward pass. This repository contains the PyTorch weights. For the JAX/Flax weights see You can also load directly using the HuggingFace Hub API: Developed by the Google Research team. - Tabular data with numerical and/or categorical columns - Binary and multiclass classification (up to 10 classes) TabFM uses alternating row and column attention to capture both feature interactions…
