---
title: "Schema"
sidebar_label: "Schema"
description: "The clika_runtime.runtime Schema class."
---

<!-- Generated by tools/api_reference/generate_api_docs.py. Do not edit. -->

A node's I/O contract: the input slots a request feeds and the output slots the node produces (TensorSpec entries), plus whether the node keeps per-session state and emits per-step chunks.

## `input_names` (property)

The input slot names, in order.

## `inputs` (property)

The input slots, in order.

## `output_names` (property)

The output slot names, in order.

## `outputs` (property)

The output slots, in order.

## `stateful` (property)

True when the node keeps per-session state.

## `supports_streaming` (property)

True when the node emits per-step chunks.

## `__init__`

```python
__init____init__(self, inputs: collections.abc.Sequence[clika_runtime._core.TensorSpec] = [], outputs: collections.abc.Sequence[clika_runtime._core.TensorSpec] = [], *, stateful: bool = False, supports_streaming: bool = False) -> None
```

__init__(self, inputs: collections.abc.Sequence[clika_runtime._core.TensorSpec] = [], outputs: collections.abc.Sequence[clika_runtime._core.TensorSpec] = [], *, stateful: bool = False, supports_streaming: bool = False) -> None

inputs / outputs are TensorSpec lists (-1 dims are dynamic). stateful=True declares per-session state (the node's make_state is called once per session); supports_streaming=True declares that iterate steps emit chunks a streamed request receives.

## `find_input`

```python
find_inputfind_input(self, name: str) -> clika_runtime._core.TensorSpec | None
```

find_input(self, name: str) -> clika_runtime._core.TensorSpec | None

The input slot named `name`, or None.

## `find_output`

```python
find_outputfind_output(self, name: str) -> clika_runtime._core.TensorSpec | None
```

find_output(self, name: str) -> clika_runtime._core.TensorSpec | None

The output slot named `name`, or None.
