> ## Documentation Index
> Fetch the complete documentation index at: https://docs.priorlabs.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> TabPFN-3 and later versions support up to 1,000,000 rows, subject to feature count and checkpoint/API limits.
> For large datasets, use per-estimator subsampling, e.g. inference_config={"SUBSAMPLE_SAMPLES": 100_000}, in TabPFNClassifier or TabPFNRegressor from tabpfn or tabpfn_client.
> Pass raw pandas DataFrames to fit and predict. Categorical strings/categories, raw text, and missing feature values are handled automatically; no manual integer/one-hot encoding, imputation, scaling, or outlier removal is needed.

# Model backends

> Model backends for TabPFN-Rel.

> [!NOTE]
>
> Looking for usage documentation? Check out [Relational predictions](https://docs.priorlabs.ai/capabilities/relational.md).

## `TabPFNRelModel`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L91)

Shared `tabpfn-rel` implementation; the registered variants pin the backend.

***

## `TabPFNRelModel.fit`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L97)

Build DFS features, apply the enabled extras, then fit the TFM.

The explicitly constructed `CacheConfig` determines whether DFS reads,
fills, or computes privately; this model does not override that policy.

```python theme={null}
TabPFNRelModel.fit(
    task: EntityTask,
    db: Database,
    train_table: Table,
    val_table: Table | None,
    *,
    seed: int,
    time_limit: float | None = None,
) -> None
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `train_table` | `Table` | Required | — |
| `val_table` | `Table \| None` | Required | — |
| `seed` | `int` | Required | — |
| `time_limit` | `float \| None` | `None` | — |

**Returns**

| Type | Description |
| - | - |
| `None` | — |

***

## `TabPFNRelModel.predict`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L149)

Build + extend DFS features for `table` and return TFM predictions.

```python theme={null}
TabPFNRelModel.predict(
    task: EntityTask,
    db: Database,
    table: Table,
) -> np.ndarray
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `table` | `Table` | Required | — |

**Returns**

| Type | Description |
| - | - |
| `np.ndarray` | — |

***

## `TabPFNRelModel.warm_cache`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L155)

Populate the feature cache for this config's fit + predict, without the TFM.

Runs exactly the `build_dfs_features` + feature-pipeline calls [`fit`](https://docs.priorlabs.ai/api-reference/python/tabpfn-rel/models#tabpfnrelmodel-fit) and
[`predict`](https://docs.priorlabs.ai/api-reference/python/tabpfn-rel/models#tabpfnrelmodel-predict) make (same cache keys), so a later eval reads them instead of
recomputing. Construct the model with an explicit fill config; needs only CPU.
The shared public command is `relarena_core.featurization.warm_cache`.

```python theme={null}
TabPFNRelModel.warm_cache(
    task: EntityTask,
    db: Database,
    train_table: Table,
    eval_table: Table,
) -> None
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `train_table` | `Table` | Required | — |
| `eval_table` | `Table` | Required | — |

**Returns**

| Type | Description |
| - | - |
| `None` | — |

***

## `TabPFNRelClientModel`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L205)

`tabpfn-rel` through the hosted TabPFN API, with raw anchor-table text.

***

## `TabPFNRelClientModel.fit`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L97)

Build DFS features, apply the enabled extras, then fit the TFM.

The explicitly constructed `CacheConfig` determines whether DFS reads,
fills, or computes privately; this model does not override that policy.

```python theme={null}
TabPFNRelClientModel.fit(
    task: EntityTask,
    db: Database,
    train_table: Table,
    val_table: Table | None,
    *,
    seed: int,
    time_limit: float | None = None,
) -> None
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `train_table` | `Table` | Required | — |
| `val_table` | `Table \| None` | Required | — |
| `seed` | `int` | Required | — |
| `time_limit` | `float \| None` | `None` | — |

**Returns**

| Type | Description |
| - | - |
| `None` | — |

***

## `TabPFNRelClientModel.predict`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L149)

Build + extend DFS features for `table` and return TFM predictions.

```python theme={null}
TabPFNRelClientModel.predict(
    task: EntityTask,
    db: Database,
    table: Table,
) -> np.ndarray
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `table` | `Table` | Required | — |

**Returns**

| Type | Description |
| - | - |
| `np.ndarray` | — |

***

## `TabPFNRelClientModel.warm_cache`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L155)

Populate the feature cache for this config's fit + predict, without the TFM.

Runs exactly the `build_dfs_features` + feature-pipeline calls [`fit`](https://docs.priorlabs.ai/api-reference/python/tabpfn-rel/models#tabpfnrelclientmodel-fit) and
[`predict`](https://docs.priorlabs.ai/api-reference/python/tabpfn-rel/models#tabpfnrelclientmodel-predict) make (same cache keys), so a later eval reads them instead of
recomputing. Construct the model with an explicit fill config; needs only CPU.
The shared public command is `relarena_core.featurization.warm_cache`.

```python theme={null}
TabPFNRelClientModel.warm_cache(
    task: EntityTask,
    db: Database,
    train_table: Table,
    eval_table: Table,
) -> None
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `train_table` | `Table` | Required | — |
| `eval_table` | `Table` | Required | — |

**Returns**

| Type | Description |
| - | - |
| `None` | — |

***

## `TabPFNRelLocalModel`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L198)

`tabpfn-rel` on the local TabPFN v3, without text features.

***

## `TabPFNRelLocalModel.fit`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L97)

Build DFS features, apply the enabled extras, then fit the TFM.

The explicitly constructed `CacheConfig` determines whether DFS reads,
fills, or computes privately; this model does not override that policy.

```python theme={null}
TabPFNRelLocalModel.fit(
    task: EntityTask,
    db: Database,
    train_table: Table,
    val_table: Table | None,
    *,
    seed: int,
    time_limit: float | None = None,
) -> None
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `train_table` | `Table` | Required | — |
| `val_table` | `Table \| None` | Required | — |
| `seed` | `int` | Required | — |
| `time_limit` | `float \| None` | `None` | — |

**Returns**

| Type | Description |
| - | - |
| `None` | — |

***

## `TabPFNRelLocalModel.predict`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L149)

Build + extend DFS features for `table` and return TFM predictions.

```python theme={null}
TabPFNRelLocalModel.predict(
    task: EntityTask,
    db: Database,
    table: Table,
) -> np.ndarray
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `table` | `Table` | Required | — |

**Returns**

| Type | Description |
| - | - |
| `np.ndarray` | — |

***

## `TabPFNRelLocalModel.warm_cache`

[ View source ](https://github.com/PriorLabs/tabpfn-rel/blob/9f807dc40be79634916f75d80f7b15b7993766af/src/tabpfn_rel/model.py#L155)

Populate the feature cache for this config's fit + predict, without the TFM.

Runs exactly the `build_dfs_features` + feature-pipeline calls [`fit`](https://docs.priorlabs.ai/api-reference/python/tabpfn-rel/models#tabpfnrellocalmodel-fit) and
[`predict`](https://docs.priorlabs.ai/api-reference/python/tabpfn-rel/models#tabpfnrellocalmodel-predict) make (same cache keys), so a later eval reads them instead of
recomputing. Construct the model with an explicit fill config; needs only CPU.
The shared public command is `relarena_core.featurization.warm_cache`.

```python theme={null}
TabPFNRelLocalModel.warm_cache(
    task: EntityTask,
    db: Database,
    train_table: Table,
    eval_table: Table,
) -> None
```

**Parameters**

| Parameter | Type | Default | Description |
| - | - | - | - |
| `task` | `EntityTask` | Required | — |
| `db` | `Database` | Required | — |
| `train_table` | `Table` | Required | — |
| `eval_table` | `Table` | Required | — |

**Returns**

| Type | Description |
| - | - |
| `None` | — |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.