Overview

What is FlashML?

FlashML turns a trained ONNX model into a hosted inference API, so students and small teams can use their models without building deployment infrastructure first.

The short version

You bring a trained model exported to ONNX. FlashML handles upload storage, bundle validation, model version tracking, and the hosted runtime endpoint. The result is a model ID you can send inputs to with POST /v1/models/:id/infer.

ONNX is a portable model format that allows trained models from frameworks like PyTorch or TensorFlow to run in a standardized inference runtime.

Problem

Deploying a model usually requires building an API server, packaging runtime dependencies, provisioning compute, managing uploads, and maintaining inference infrastructure.

FlashML

FlashML gives you one upload workflow and one inference API for supported ONNX image and text models.

Result

After validation, your model is immediately callable from scripts, apps, demos, or class projects.

A concrete example

A text sentiment classifier might start as a small folder with an ONNX model, preprocessing instructions, and class labels.

sentiment-model/
  model.onnx
  preprocess.json
  labels.txt
tar -czf sentiment-model.tar.gz -C sentiment-model .

flashml upload sentiment-model.tar.gz
POST /v1/models/model_123/infer
{
  "text": "The checkout flow was fast and reliable."
}
{
  "prediction": "positive",
  "confidence": 0.9821,
  "scores": [
    { "label": "positive", "score": 0.9821 },
    { "label": "negative", "score": 0.0179 }
  ]
}

How the pieces fit together

Step 1

Train or export an ONNX model

Step 2

Package model files

Step 3

Upload to FlashML

Step 4

Call the inference API

ONNX model bundle->FlashML validation->Versioned model ID->Inference API

What you bring

A model bundle

Upload one .tar.gz archive containing one ONNX model, one preprocess.json, and optional labels or tokenizer files.

A task declaration

Tell FlashML the model modality and task, such as text classification, text embedding, image classification, or image object detection.

What FlashML handles

Upload storage

Large model files go directly to object storage through a short-lived presigned upload URL.

Validation

FlashML checks the bundle shape, required files, declared task, and preprocessing configuration before creating the model record.

Versioning

Models are tracked by name and version, so repeated uploads can create new versions without replacing old records unexpectedly.

Inference routing

FlashML chooses the correct runtime path from the model's stored modality and task when you call the inference endpoint.

After upload completes

There is no separate deploy button. When the completion request returns a model with status: validated, the model is ready to infer immediately using the returned model ID.

Base URL

https://api.flashml.dev

API version

/v1

Main endpoint

POST /v1/models/:id/infer

Where to go next