Models¶
sheaf-serve ships ready-to-use backends for 20+ model types across seven domains. Each backend lives behind an extras flag — install only what you need.
Catalogue¶
| Domain | Model | Backend (backend=) |
Extras flag |
|---|---|---|---|
| Time series | Chronos2 / Chronos-Bolt | chronos2 |
time-series |
| TimesFM v2 | timesfm |
time-series |
|
| Moirai | moirai |
moirai |
|
| Tabular | TabPFN v2 | tabpfn |
tabular |
| Audio (ASR) | Whisper | whisper |
audio |
| faster-whisper | faster-whisper |
audio |
|
| Audio generation | MusicGen | musicgen |
audio-generation |
| Text-to-speech | Bark | bark |
tts |
| Kokoro | kokoro |
kokoro |
|
| Vision (embedding) | OpenCLIP | openclip |
vision |
| DINOv2 | dinov2 |
vision |
|
| Vision (segmentation) | SAM2 | sam2 |
vision |
| Vision (depth) | Depth Anything v2 | depth-anything |
vision |
| Vision (detection) | DETR / RT-DETR | detr |
vision |
| Vision (pose) | ViTPose | vitpose |
pose |
| Vision (optical flow) | RAFT | raft |
optical-flow |
| Vision (video) | VideoMAE / TimeSformer | videomae |
video |
| Image diffusion | FLUX (schnell / dev) | flux |
diffusion |
| Multimodal generation | SDXL img2img / inpaint | sdxl |
multimodal-generation |
| Cross-modal embedding | ImageBind | imagebind |
multimodal (+ git install) |
| Molecular (protein) | ESM-3 | esm3 |
molecular (Python 3.12+) |
| Genomics | Nucleotide Transformer | nucleotide-transformer |
genomics |
| Small molecule | MolFormer | molformer |
small-molecule |
| Materials | MACE-MP-0 | mace |
materials |
| Weather | GraphCast | graphcast |
weather |
| Earth observation | Prithvi-EO | prithvi |
earth-observation |
| LiDAR / 3D | PointNet | pointnet |
lidar |
Cross-cutting extras¶
| Extras flag | What it adds |
|---|---|
feast |
Feast online feature store integration (Feast →) |
modal |
Modal serverless deployment via ModalServer (Modal →) |
metrics |
Prometheus exporter (/metrics endpoint) |
tracing |
OpenTelemetry SDK + OTLP exporter |
batch |
Offline batch inference via Ray Data (Batch →) |
worker |
Async-job worker (Redis Streams) (Worker →) |
all |
Everything except narrow-Python or git-only extras |
Usage shape¶
Every model type follows the same shape:
from sheaf import ModelServer, ModelSpec
from sheaf.api.base import ModelType
server = ModelServer(models=[
ModelSpec(
name="<your-name>",
model_type=ModelType.<TYPE>,
backend="<backend-name-from-table>",
backend_kwargs={...},
),
])
server.run()
The typed request and response live in sheaf.api.<module> —
TimeSeriesRequest in sheaf.api.time_series, EmbeddingRequest in
sheaf.api.embedding, etc. Inspect a backend's request schema with
the OpenAPI export (OpenAPI →).
Quickstart examples¶
The repo ships a runnable examples/quickstart_<type>.py for every
major category — go to
examples/ on GitHub.
Adding a new backend¶
If sheaf-serve doesn't ship the backend you need, the plugin model is
deliberately small: subclass ModelBackend, decorate with
@register_backend("name"), and reference it by name from
ModelSpec.backend. Or pass the class directly via
ModelSpec.backend_cls for one-off / private backends. See
CONTRIBUTING.md
for the full walk-through.