WeltPython SDK
Products: switch from Welt to another product
Open console

ModelsImplemented and planned capabilities

Implemented and planned capabilities

See which models and tasks Welt runs today, the limits each one is qualified for, and what is still planned.

The catalogue has the final word

The service catalogue is authoritative for actual task, model and configuration limits. A Python class or a named catalogue entry alone does not qualify hosted execution.

The bounded upstream TabICLv2, Kumo Tabular Medium, TabDPT 1.3 and Mitra-v2 previews each have separately qualified classification and regression tasks. Arrow / ArrowFM, CDFM and AVICI each qualify observational discovery.

Task Qualified models Notes
Classification TabICLv2, Kumo Tabular Medium, TabDPT 1.3, Mitra-v2 Predictions and class probabilities.
Regression TabICLv2, Kumo Tabular Medium, TabDPT 1.3, Mitra-v2 Returns mean points with its explicit constant-target policy.
Observational causal discovery Arrow / ArrowFM, CDFM, AVICI Finite continuous variables, no supervised target.

Each model's context shapes, prediction rows per call and classes are in Available models.

The catalogue also reports matching-worker readiness for each task. Other selected families require their own gates; no classical or older-generation fallback is permitted.

Mitra-v2 uses the explicit zero-shot recipe: prediction does not fine-tune weights. This is not a claim to reproduce publisher benchmark recipes.

Available models#

ModelTaskContext (rows × columns)Prediction rows per callClasses
Kumo Tabular Medium kumo-mediumClassification8,000 × 20, 4,000 × 40, 2,000 × 80up to 100up to 10
Kumo Tabular Medium kumo-mediumRegression8,000 × 20, 4,000 × 40, 2,000 × 80up to 100—
Mitra-v2 mitra-v2Classification4,000 × 20, 2,000 × 40, 500 × 80up to 100up to 10
Mitra-v2 mitra-v2Regression4,000 × 20, 2,000 × 40, 500 × 80up to 100—
TabICLv2 tabicl-v2Classification8,000 × 20, 4,000 × 40, 2,000 × 80up to 100up to 10
TabICLv2 tabicl-v2Regression8,000 × 20, 4,000 × 40, 2,000 × 80up to 100—
TabDPT 1.3 tabdpt-1.3Classification500 × 20up to 100up to 10
TabDPT 1.3 tabdpt-1.3Regression500 × 20up to 100—
AVICI aviciCausal discovery1,000 × 20, 500 × 40——
CDFM cdfmCausal discovery8,000 × 20, 4,000 × 40, 2,000 × 80——
Arrow / ArrowFM arrowCausal discovery8,000 × 20, 4,000 × 40, 2,000 × 80——

Public catalogue snapshot from 2026-10-15. Context is the training table the model conditions on, or the whole table for causal discovery. It fits when its rows and columns are both within one listed shape, so wider tables take fewer rows. Supervised columns count features without the target; causal discovery counts every variable. Causal discovery needs at least 2 rows and 2 variables. Batch prediction handles larger prediction sets. The live catalogue is authoritative: Client().models() reports current limits and readiness.

What "context" means depends on the task:

A shape caps both axes at once. TabICLv2 refuses 6,000 rows × 30 features (plus the target): 8,000 × 20 is too narrow and 4,000 × 40 too short. Use 4,000 rows or 20 features instead.

Behavior boundaries#

Behavior Current boundary
Classification: preparation, prediction, probabilities and reopening Available with the qualified classifier. Metadata pins the model, configuration and seed.
Regression: preparation, prediction and reopening Qualified TabICLv2, Kumo Tabular Medium, TabDPT 1.3 and Mitra-v2 tasks return finite points in target units; classes and probabilities are absent. See the task-specific regression guide.
DataFrame, array, CSV and Parquet input Scalar cells. A named schema aligns columns safely. Files are currently loaded into memory; Parquet needs the optional reader.
Durable jobs Explicit submission, polling, reconnection and cancellation. A local wait timeout leaves durable work running.
Usage Logical operation IDs, lifecycle and attempt workload metadata, and nullable credits and rate_card_version. Event count is not fit count. See usage accounting.
Model swapping Available between the qualified TabICLv2, Kumo Tabular Medium, TabDPT 1.3 and Mitra-v2 tasks. A new model needs a new fit. See model selection.
Cross-validated evaluations Up to 8 classification or regression models (or every eligible one) on the same seeded folds, 2–10 folds, with a leaderboard, fold metrics, seven-day out-of-fold predictions, an HTML report and signed report links. Each training fold must fit the model limits above; larger tables are refused unless you opt into sample_rows. No time-ordered splits yet. See evaluations.
Resumable files and true large batch jobs Released sync and async upload-session, chunk and file resume, and batch methods. The server sets the enabled formats, parser envelopes and batch limits. Estimator file convenience reads still load into memory.
Metadata export, recipes and deletion plans export_metadata() returns pinned server provenance. Recipes and deletion plans require released routes. There is no executable, context or credential export.
Causal discovery and Ergodic ArrowFM is a bounded observational preview (limits in the table above), native DAG, owned scores and durable reopening. to_ergodic() converts a declared native DAG into an ergodic graph with welt-client[ergodic] (ergodic>=0.2,<0.3). CDFM preserves native directed output and its adaptive threshold. AVICI preserves native directed output and strict >0.5 decoding with fixed native PRNG 0. CDFM and AVICI both refuse to convert any graph that is not a declared DAG, including acyclic directed output. The remaining engines are gated.
Confidence and conformal Native probabilities are not calibrated coverage or conformal intervals; conformal comes later.
What do the scikit-learn, version and cache checks cover?

The sklearn cloning, Pipeline and cross-validation checks establish specific supported behavior. They do not cover all formats and tasks, or the complete scikit-learn 1.6–<2 matrix.

Version retirement requires an explicit migration path. Existing predictors remain pinned, and a changed model needs a new fit. Cache presence is derived execution state, distinct from durable predictor ownership and cold restoration.

Upload and batch resources#

Both Client and AsyncClient have these methods:

On AsyncClient you await the equivalents, including upload, file and batch submission. Job.result() and AsyncJob.result() return batch manifests with explicit partial row ranges. batch_payload() retrieves authenticated JSON until it expires.

Keep the upload ID

Keep upload IDs before sending bytes, so you can recover an interrupted upload.

File reads and hashing in the async helper are local blocking I/O. The low-level chunk methods let you schedule disk I/O independently.

These methods need server support

These released methods require server support. Inspect workspace limits and model readiness before submitting work; a client method does not enable a server format or model. Account and payment controls remain browser-authorized.

See the agent CLI reference.

Compatibility with ergodic#

ergodic identifies and estimates effects on a Welt graph, locally. This is the same table as the ergodic compatibility page. The link between the packages is a versioned graph format, not a package version.

ergodic welt-client Graph format Python for the Welt link
0.2.x 0.13 or later ergodic.graph/1 3.11, 3.12, 3.13
0.1.x none none none

Only a graph that Welt declares a native DAG converts:

Welt model Native graph In ergodic 0.2.0
arrow DAG Converts. ergodic.welt.discover returns it as a DiscoveryResult.
cdfm Directed, may hold cycles Refused before paying by default. With an explicit decoder=, its scores are decoded locally into a DAG labelled decoded.
avici Directed, may hold cycles Refused before paying by default. With an explicit decoder=, its scores are decoded locally into a DAG labelled decoded.

to_ergodic() in this SDK never decodes: it refuses cdfm and avici results. A decoded graph is the decoder's choice, not the model's claim. See Discover in Welt, estimate in ergodic.

Next steps#

Documentation

Search SDK 0.13.1

Search this SDK version by task, method or error.