Skip to content
imaged

Slab / For developers

Get your model
running in your app.

Bring your model from ONNX into an app that works offline. Slab handles image preparation, inference and outputs, with native bindings for Swift, Kotlin, Java, C and Python.

30-day trial · offline inference · CPU / GPU / NPU

Small runtime. Your choice of models.

iOS device framework

arm64 · iOS / iPadOS 18+

2.8 MB
Android native library

arm64-v8a · Android 12+

6.1 MB
macOS shared library

Apple silicon · macOS 15+

2.7 MB

Approximate runtime sizes for 0.1 builds. Models and optional Qualcomm NPU libraries are separate. Download sizes differ.

What Slab takes off your plate

Get from a camera frame
to a result your app can use.

An inference call is one part of the feature. Slab also handles image resizing, normalization and camera-frame inputs, with task helpers for interpreting model outputs.

Use one SDK for that path across your mobile apps. Hardware backend selection and model protection are part of the same integration.

See camera & image examples ↗

iOS, Android and macOS

Built for the platforms you ship.

PlatformMinimumIntegrationAcceleration
iOS & iPadOS18+ · arm64Swift package · Swift / CMetal · Neural Engine
Android12 / API 31+ · arm64-v8aAAR · Kotlin / Java / CVulkan · Qualcomm Hexagon
macOS15+ · Apple siliconShared library · C / Python / SwiftMetal · Neural Engine

Your model or a gallery starting point.

Convert supported ONNX models, or start with prepared packs for vision, OCR, language and other tasks. Each gallery entry includes model-specific instructions and license terms.

Browse ready-to-run models ↗

Choose your platform and language.

Start with the Swift package, Android AAR or macOS library. The setup guides cover installation and backend configuration, including Qualcomm NPU setup on Android.

Platform requirements & setup ↗

One complete integration

Image in.
Classifications out.

This Swift function opens a model, prepares an image, runs inference and returns the top five classes. Input size, normalization and labels come from the model pack.

  1. 01 / Configure. Attach your runtime license.
  2. 02 / Open. Load a model and prepare its backend.
  3. 03 / Run. Give Slab an image and use the results.

For repeated inference, retain the session instead of reopening the model. Run inference off the main thread.

Swift package setup ↗
Classify.swift
// Classify an image and return the five most likely classes.
//
// The model file carries its own preprocessing (input size, color order,
// normalization) and labels, so the app only passes an image.

import Foundation
import SlabSwift

func classify(modelPath: String, imagePath: String, license: String) throws -> [SlabClassification] {
    let config = try SlabConfig(cacheDirectory: NSTemporaryDirectory(), license: license)
    let session = try SlabSession(config: config, path: modelPath, warmup: true)

    let output = try session.run(SlabInput(frame: try SlabFrame(contentsOf: imagePath)))
    print("\(output.backendUsed.map { "\($0)" } ?? "?"), \(output.latencyMs) ms")
    return output.topK(5)   // label is "" when the model has no labels
}

Use a licensed app, the SlabSwift package, a classification pack and a local image. The complete setup is linked alongside the example.

More of the integration, handled

Build the feature.
Slab handles the inference pipeline.

Use the device’s acceleration

Slab checks model and device capabilities before selecting a backend. Use automatic selection or choose an engine explicitly for your application.

Protect the model you trained

Built-in model protection is included in the Slab license. Evaluate your proprietary model with protection enabled as part of the same integration.

Reuse your model across platforms

Convert to a .slab model pack and use it across supported platforms. Native language bindings share the same approach to configuration, sessions and results.

Use the benchmark tools to compare backends for your model. Your application can choose the configuration that fits its latency and memory requirements.

Measured, model by model

Real models.
Published measurements.

See the model, hardware and test conditions behind each result. Gallery pages bring benchmarks and runnable examples together so you can reproduce the evaluation on your own hardware.

MobileNetV3-Large

Image classification · Apple M1 Max · FP16 weights · 224 × 224 input

Model & complete measurements ↗
CPU
7.99 ms

Session open: 7 ms

Metal GPU
2.43 ms

Session open: 106 ms

Neural Engine
1.31 ms

Session open: 641 ms

Median model runtime over 100 warm runs, measured 28 October 2026 on macOS 26.6.2. Image preprocessing excluded. Use the gallery’s methodology to compare on your target hardware.

Your first evaluation

Run your first model with Slab.

Start with MobileNetV3-Large and the classification example above, or choose a gallery model closer to your own feature.

  1. 01

    Download the SDK.

    Choose your platform and follow its package setup. Add Slab to an app you can run on your target device.

    Get SDK 0.1.0 ↗
  2. 02

    Get a trial license.

    Create an account, register your application and copy its trial license into your app.

    Start a 30-day trial ↗
  3. 03

    Run a gallery model.

    Download the Standard pack and a sample image. Pass their local paths and your license to the classification function.

    Get the example model ↗

Stuck during the trial? Ask the Slab team in your dashboard. For license errors, see the troubleshooting guide.

One product. Every installation.

One annual price.
Room to grow.

Launch your product and grow its audience on the same Slab license. Unlimited installations let you price your own product with confidence.

  • Unlimited installations of your licensed product
  • A full year of integration and SDK bug support
  • iOS, Android and macOS deployments
  • Built-in model protection
  • Your branding and your customer relationship

Slab annual license

$3,000USD / year

Per product · unlimited installations

Start a 30-day trial

No credit card required. Evaluate before purchasing.

One license covers one product, including its development builds and flavors. Separate products have separate licenses.

Bring your own model or choose from the public gallery. Each gallery entry lists its model license.

What’s included & how renewal works

A full year of support included

Build with support
from the Slab team.

Get help with your integration and SDK bugs from the people behind Slab. Your dashboard keeps the report, our replies and progress together.

Get help with Slab

Help during evaluation.

A conversion error or unexpected result should lead to an answer. Share it during your trial so we can help identify what needs attention.

Production issues come first.

Tell us how the issue affects your application. We prioritize production blockers, crashes and incorrect results.

Follow the work through.

See investigation updates, available workarounds and the release containing a fix. Reply in the same thread when you have more to share.

Questions about support & renewals ↗

Need to bring a product or purchasing colleague into the decision?

Share the product overview ↗