Documentation Index
Fetch the complete documentation index at: https://docs.kaireonai.com/llms.txt
Use this file to discover all available pages before exploring further.
Datasets
| Dataset | Customers | Offers | Domain |
|---|---|---|---|
banking-cards | 5,000 | 12 | Credit-card propensity & cross-sell |
telco-churn | 8,000 | 6 | Retention offer routing |
retail-loyalty | 10,000 | 20 | Loyalty-tier upgrade & coupon |
customers.csv, offers.json, outcomes.csv,
splits.json, and meta.json. All synthetic — no PII. Generated by
tools/qa/decisioning-bench/datasets/generate.ts with a hard-coded
seed so every checkout reproduces the same rows.
Submission contract
A submission is a Docker image that:- Listens on
:8080. - Accepts
POST /recommendwith body{ customerId, channelId?, attributes? }and returns{ decisionTraceId, offers: [{ offerId, score, rank }] }. - Accepts
POST /respondwith body{ customerId, outcome, ... }. - Tolerates 100 RPS for 5 minutes (the bench harness ramps to that).
Running the harness
results/<dataset>/<utc-timestamp>.json plus a leaderboard CSV.
Scoring rubric
| Dimension | Weight |
|---|---|
| Latency p99 | 20% |
| AUC (rank-based) | 25% |
| Fairness gap (worst DI ratio) | 15% |
| Explanation quality | 10% |
| Uplift over random | 30% |
Honest limits
- V1 datasets are synthetic. Real-world distribution shift is not modeled — this is a capability check, not a market-fit signal.
- Latency is measured from the harness on a single host. Multi-pod scale isn’t tested here; that’s k6’s job.
- The repo currently lives in
tools/qa/decisioning-bench/. Splitting to a dedicatedkaireonai/decisioning-benchrepo + GitHub-Pages leaderboard is operator-driven (needs repo creation + Pages config).