Skip to content

Bring your own predictions: the last resort

ParleML's engine covers the common problems — tabular classification and regression, forecasting, anomalies and clusters, ranking and recommendation, association rules — with feature engineering, search, ensembling, calibration and explanations built in. Building your own model is the last resort, and only for what the engine truly lacks: a model family it does not have, a custom loss, a constraint it cannot express.

Before you reach for it, check that no ParleML lever does the job (get_playbook("iterate")): recipe SQL for features, column roles, the template or preset (describe_platform), the split, the metric, the decision layer. Say in your notes which levers you tried.

The rules

  1. Train on ParleML's data. Materialise the training table with a recipe (author_recipe(action="materialize")) and train on exactly that dataset, so the rows your predictions refer to are rows ParleML knows.
  2. Train in the user's repository, with their tools — never inside ParleML.
  3. Import predictions, never a model file. register_model(action="import_predictions", workspace_id, params={name, reference_dataset_id, prediction_column, target, task_type, label_column, positive_class, sensitive_features, notes, csv_text | file_path}). A model file is unpickled to inspect it, which runs its code, so only a person imports one.
  4. Say why in notes: what the engine lacked, which levers you tried, what the imported model adds.
  5. It is judged like any model. ParleML explains and compares the imported predictions with the same checks as a native run; release is a person's decision, in the ParleML UI.

file_path works only when this MCP server runs locally (stdio) and only under its working directory; a hosted server cannot read your files — send the CSV as csv_text. Files are capped at 20 MB.