A churn model whose features you can actually see
Build churn features from Postgres events and Parquet snapshots, catch a leaky window visually, and score the holdout with ONNX — on one canvas.
Drop a million-row Parquet batch on the canvas, reuse the exact normalize step the model trained with, and stream it through an ONNX inference node. LSD writes scored Parquet plus a metrics dashboard, and every intermediate stays cached for inspection.
A propensity model, trained wherever you like — sklearn, XGBoost, PyTorch — and exported to ONNX. Once a month a fresh extract of every customer lands as Parquet, and someone has to turn propensity.onnx plus a million rows into a scored table the warehouse can join by morning.
Batch scoring fails at the seams, not in the model. The scoring script reimplements the preprocessing "close enough", a column arrives as int64 instead of float32, and the job exits 0 while producing garbage. Nobody notices until the campaign underperforms.
LSD closes both seams. The model's input signature is part of the pipeline, so a mismatch is a red node, not a silent cast. And preprocessing isn't reimplemented at all — the training pipeline's normalize step is dropped in and reused with its fitted parameters intact.
Three things. The ONNX file, the batch (Parquet or Arrow — both land as the same typed entity), and the normalize step exported from training. Everything in the walkthrough happens on one canvas, and every intermediate — raw, normalized, scored — stays cached. So when someone asks why account 48,201 scored 0.97, you click through the nodes and answer from the data, not from memory.
Drag `customers_2026-06.parquet` onto the canvas — 1.04M rows appear as a typed entity with a live preview and per-column stats. An Arrow feed works identically if the batch comes straight from your warehouse exporter.
Import the @shape normalize step saved from the training pipeline instead of rewriting it. Its fitted means and scales come along as cached params, and the preview shows standardized columns immediately — zero train/serve skew by construction.
Drop `propensity.onnx` on the canvas and LSD reads its input signature. Map entity columns to the model's expected tensor — any dtype or column-order mismatch flags the node red before a single row is scored.
Hit run and the inference step streams the entity through ONNX Runtime in 64k-row batches. A progress bar tracks throughput, and scores append as a new `p_convert` column you can preview while the run is still going.
Point the @deliver export at `scored/` and toggle the report on. You get one scored Parquet file plus a dashboard — score distribution, null counts, rows per second, and drift against the training feature stats.
Ingest the million-row batch from Parquet or an Arrow feed as one typed entity.
Apply the exact normalize step the model was trained with, fitted params included.
Stream rows through ONNX Runtime and write scored Parquet plus a metrics dashboard.
Build churn features from Postgres events and Parquet snapshots, catch a leaky window visually, and score the holdout with ONNX — on one canvas.
Model post-closure pit-lake rebound in LSD — krige borehole heads against a NetCDF recharge grid and deliver a live 3D drawdown model plus report.
Validate 63 LAS drillhole logs against collar surveys, krige a lithology block model, and export one glTF the whole team can open.
Turn raw LAS/LAZ sweeps from a mobile robot into a nav-ready occupancy grid and 3D map — registration to export with zero scripts.
Sync CSV sensor logs with live REST telemetry, flag outliers and dropouts, and score every robot pass/fail before the field trial.
Turn folders of line-scan images and a label CSV into an ONNX defect-segmentation pipeline with overlay QA and a per-coil defect report.
Turn GeoTIFF orthomosaics into a stitched land-cover raster with per-class area stats, using tiled ONNX segmentation you can preview at every step.
Align CMM measurement points to a nominal CAD mesh, compute point-to-surface deviation, and export a color-mapped glTF model with a pass/fail report.
Resample a week of machine sensor logs, baseline each tag, and flag drift and step changes on a live dashboard with a ranked maintenance shortlist.
Join a live meter feed to 85 campus building meshes, aggregate it hourly, and paint a 3D heat-map that repaints as energy use shifts, plus a weekly report.
Calibrate live strain telemetry, place gauges on the bridge mesh from a CSV, and color the structure by stress live — plus an alert log on every exceedance.
Turn a CT DICOM series into an ONNX organ segmentation you QA in 3D, then export an annotated volume and a per-organ volumetrics report.
Drag `customers_2026-06.parquet` onto the canvas — 1.04M rows appear as a typed entity with a live preview and per-column stats. An Arrow feed works identically if the batch comes straight from your warehouse exporter.
Import the @shape normalize step saved from the training pipeline instead of rewriting it. Its fitted means and scales come along as cached params, and the preview shows standardized columns immediately — zero train/serve skew by construction.
Hit run and the inference step streams the entity through ONNX Runtime in 64k-row batches. A progress bar tracks throughput, and scores append as a new `p_convert` column you can preview while the run is still going.
Point the @deliver export at `scored/` and toggle the report on. You get one scored Parquet file plus a dashboard — score distribution, null counts, rows per second, and drift against the training feature stats.