Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.woodwide.ai/llms.txt

Use this file to discover all available pages before exploring further.

Once a model is ready, run inference to get predictions, clusters, anomaly scores, embeddings, or search results depending on the model type.

Infer (File Upload)

Upload a file and get results in the response. Best for small files.

Async Infer (File Upload)

Upload a file and poll for results. Best for larger files.

Async Infer (Dataset)

Run inference on an existing dataset. Returns a job ID for polling.

Output Formats

All inference endpoints support three output formats via the output_type parameter:
FormatContent-TypeDescription
jsonapplication/jsonColumn-oriented JSON dict. Each key maps to a list of values.
csvtext/csvStandard CSV file with one row per input instance.
parquetapplication/octet-streamApache Parquet file. Same columns as CSV. Includes model_id, model_name, model_version_id, and model_type in file-level metadata.
The specific columns returned depend on the model type:

Prediction

For binary classification, multiclass classification, and regression.
ColumnTypePresentDescription
idintegerAlwaysRow index from the input data.
predictionstring or floatAlwaysPredicted label (classification) or value (regression).
prediction_probfloatClassification onlyConfidence in the predicted class. Ranges from 0.5 to 1.0 for binary; 0 to 1.0 for multiclass. Not present for regression.
Binary classification:
{
  "id": [0, 1, 2],
  "prediction": ["yes", "no", "yes"],
  "prediction_prob": [0.88, 0.95, 0.7]
}
Multiclass classification:
{
  "id": [0, 1, 2],
  "prediction": ["cat_A", "cat_B", "cat_C"],
  "prediction_prob": [0.82, 0.91, 0.65]
}
Regression:
{
  "id": [0, 1, 2],
  "prediction": [42.5, 17.3, 89.1]
}

Clustering

ColumnTypeDescription
idintegerRow index from the input data.
cluster_labelintegerCluster assignment (0-indexed).
cluster_descriptionstringHuman-readable description of the cluster.
{
  "id": [0, 1, 2, 3],
  "cluster_label": [0, 1, 0, 2],
  "cluster_description": [
    "High-income urban professionals with frequent purchases",
    "Budget-conscious suburban families",
    "High-income urban professionals with frequent purchases",
    "Young students with occasional spending"
  ]
}

Anomaly Detection

Output depends on the anomaly_format parameter.

anomaly_format=ids_only (default)

ColumnTypeDescription
anomalous_idslist of integersRow indices flagged as anomalous.
{
  "anomalous_ids": [3, 17, 42]
}

anomaly_format=per_row

ColumnTypeDescription
idintegerRow index from the input data.
is_anomalybooleanWhether this row is flagged as anomalous.
anomaly_scorefloatAnomaly score (higher values indicate greater anomalousness).
{
  "id": [0, 1, 2, 3],
  "is_anomaly": [false, false, false, true],
  "anomaly_score": [0.021, 0.045, 0.033, 0.892]
}

Embeddings

ColumnTypeDescription
idintegerRow index from the input data.
dim_0dim_NfloatEmbedding vector dimensions. The number of dimensions depends on the model.
{
  "id": [0, 1, 2],
  "dim_0": [0.123, 0.456, -0.789],
  "dim_1": [-0.321, 0.654, 0.012],
  "dim_2": [0.111, -0.222, 0.333]
}

ColumnTypeDescription
Input row ID (key)stringRow index from the inference data.
Matched row ID (value)stringRow index of the closest match in the training dataset.
{
  "search_results": {
    "0": "42",
    "1": "17",
    "2": "103"
  }
}

Factor Analysis

Output has one row per discovered factor, not per input instance.
ColumnTypeDescription
factor_idintegerFactor index (0-indexed).
factor_descriptionstringHuman-readable description of what this factor represents.
captured_variancefloatProportion of variance in the data explained by this factor.
{
  "factor_id": [0, 1, 2],
  "factor_description": [
    "Income and spending power",
    "Geographic and urban/rural divide",
    "Age and career stage"
  ],
  "captured_variance": [0.35, 0.22, 0.15]
}