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

# bioptimus.models.backbones

Backbone feature-extractor models (H-Optimus-1, M-Optimus, Tissue-Seg, …).

Model specifications are loaded from YAML config files in the `configs/` directory. The [`Backbone`](/sdk-reference/models/backbones#backbone) factory wires them together with a pluggable client so that a single `Backbone(...)` call works for any backend (HTTP, AWS, GCP, …).

**Example**:

```python theme={null}
backbone = Backbone("h1", base_url="http://localhost:8080")
backbone = Backbone("h1", backend="aws", endpoint_name="prod")
```

## Backbone

```python theme={null}
class Backbone(model: str = 'h1',
               backend: Backend | str = Backend.REMOTE,
               **kwargs: Any)
```

Factory for creating backbone endpoint models.

Model identity (spec, endpoint path) is read from YAML config files. The factory pairs each config with a pluggable client backend to produce a ready-to-use [`EndpointModel`](/sdk-reference/models/endpoint_model#endpointmodel).

Usage:

```python theme={null}
>>> Backbone("h1", base_url="http://localhost:8080")
>>> Backbone("h1", backend="aws", endpoint_name="ep")
>>> Backbone("h1", backend="huggingface")
>>> Backbone.available_backbones()
['h0', 'h0-mini', 'h1', 'm-optimus', 'tissue-seg']
>>> Backbone.available_backbones(backend="huggingface")
['h0', 'h0-mini', 'h1']
```

## Backend

```python theme={null}
class Backend(str, Enum)
```

Supported inference backends.

***

#### available\_backbones

```python theme={null}
@classmethod
def available_backbones(cls,
                        backend: Backend | str | None = None) -> List[str]
```

Returns registered backbone names, optionally filtered by backend.

<ParamField body="backend">
  If given, restrict the result to models the backend can serve. Only the `"huggingface"` backend is restrictive — it serves the embedding backbones that declare a `huggingface` build recipe (`h0-mini`, `h0`, `h1`). The `"remote"`, `"aws"` and `"local"` backends can serve any registered model, so they return the full list.
</ParamField>

**Returns**:

Sorted list of backbone names.

**Raises**:

* `KeyError` - If `backend` is not a recognised backend.


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