Skip to content

Core concepts

This page explains the handful of ideas that the rest of Tuneline Studio is built on: pipelines, steps, artifacts, runs, caching, targets and keys.

Pipeline

A pipeline is a recipe for producing a model. It is a graph of steps connected by links, drawn on a canvas: data flows in at the top (for example Load dataset and Base model), passes through training and evaluation, and ends with an export or a deployment.

A typical pipeline looks like this:

data → base model → fine-tune (SFT, DPO or GRPO) → evaluation → quality gate → merge / GGUF / Hub → endpoint

You create pipelines on the Pipelines page with New pipeline, either from a template (for example Sanctions alert triage or CPU smoke test) or from a blank canvas. The pipeline is saved automatically as you edit it. See The pipeline editor.

Steps (blocks, nodes)

Each box on the canvas is a step. The docs and the app also call them blocks or nodes; they mean the same thing. Tuneline Studio has 24 step types in six categories:

Category Examples
Data Load dataset, Clean and dedupe, Format as chat, Format as preference pairs, Format as vision chat, Train / validation / test split, Merge datasets, Generate synthetic data
Model Base model, Registered model
Train Fine-tune (SFT), Preference tuning (DPO / ORPO / KTO), Vision fine-tune (SFT), Reinforcement tuning (GRPO)
Evaluate Evaluate on test set, Benchmarks (lm-eval), Prompt-injection test, Quality gate
Export Merge adapter, Export GGUF, Publish and register
Deploy Deploy endpoint, Ollama package, Endpoint smoke test

Every step has:

  • Typed inputs and outputs. Inputs sit at the top of the box, outputs at the bottom. Each one carries an artifact type, shown by its colour. Some inputs are optional (marked with ? on the canvas).
  • Settings with sensible defaults, edited in the inspector on the right of the editor.
  • An id such as sft or eval, used in YAML, logs and quality gate rules.
  • A runtime: GPU (training, evaluation), CPU (formatting, the quality gate) or network only (downloads, publishing).

The full list of steps and their settings is in the block reference.

Artifact types

Everything that flows along a link is an artifact, and every artifact has a type. A link can only connect an output to an input that accepts its type, which is how the editor stops you from, for example, feeding raw rows straight into a training step.

Type Colour What it is
Dataset ochre Rows loaded from a file, a URL, a golden set or the Hugging Face Hub, before formatting.
ChatDataset rose Rows in chat form (messages) or prompt/completion form, ready for SFT or evaluation.
PreferenceDataset orange A prompt with chosen and rejected answers (DPO, ORPO, SimPO), or prompt, completion and a good/bad label (KTO).
VisionDataset green Chat rows with one or more images each, for vision-language models.
Model teal A base model, optionally with a LoRA adapter, or a merged fine-tuned model.
EvalReport violet Metrics and per-example results from an evaluation.
GGUF brown Quantized GGUF files for llama.cpp, Ollama and LM Studio.
Endpoint slate A running OpenAI-compatible inference endpoint.

Some steps pass their input type through unchanged. Clean and dedupe, for example, accepts any dataset type and outputs the same type it received. The canvas shows the colour legend under the graph (Artifact types). More detail: Artifact types reference.

Runs and run numbers

A run is one execution of a pipeline. When you press Run and then Start run, Tuneline Studio takes a copy of the pipeline as it is at that moment, so later edits never change a run that already happened.

Each run gets a run number (Run #12). Numbers count up across all of your runs, not per pipeline. A run also records where it ran, the GPU, its logs, metrics, evaluation reports, artifacts and, for paid providers, its cost.

A run moves through these statuses:

Run status Meaning
Queued Created and waiting to start (for example, waiting for your computer or your notebook).
Launching Tuneline Studio is starting the job at the provider.
Running The runner is working through the steps.
Succeeded Every step finished (or was reused from the cache, or deliberately skipped).
Failed A step failed, the job stopped, or it could not start. The run page shows why.
Cancelled You cancelled it, or it reached its time or cost limit.

Step statuses

Inside a run, each step has its own status. You see it in colour on the canvas, on the run page and in the live banner above the editor.

Step status On the canvas Meaning
queued grey dot Waiting for earlier steps.
running accent border, pulsing dot, progress bar Working now; the step shows a message such as step 124/200 · loss 0.438 and a percentage.
succeeded green Finished and produced its outputs.
cached dashed slate-blue border Nothing changed since an earlier run, so its earlier results were reused.
failed red Something went wrong; the message and logs say what.
skipped faded Not run because an earlier step failed, or a quality gate stopped the steps after it.
cancelled faded Stopped because the run was cancelled.

Caching: reuse cached steps

Fine-tuning is expensive, so Tuneline Studio avoids redoing work. Before each step runs, the runner computes a fingerprint from:

  • the step type and version,
  • the settings that affect its output,
  • the fingerprints of everything connected to its inputs,
  • the content of external inputs (for example the checksum of an uploaded file, or the exact commit of a Hub model).

If an earlier run already produced results with the same fingerprint, the step is marked cached and those results are reused. Change one setting on the training step and only that step and the steps after it run again; the data preparation above it stays cached.

Some things to know:

  • The option is called Reuse cached steps in the Run dialog, and it is on by default. Turn it off to force every step to run.
  • Settings that don't change the result, such as the Hugging Face repository name or how often to log, are left out of the fingerprint. Renaming a repository does not retrain a model.
  • A few steps always run, because their job is to act, not to compute: Quality gate, Publish and register, Deploy endpoint, Ollama package and Endpoint smoke test. The inspector marks them "always runs".
  • Cached results live in your Hugging Face account (models in your model repositories, intermediate datasets in a private dataset repository named tuneline-cache), so a Hugging Face token is needed for caching to work across machines.

Targets: where a run runs

A target is the place where a run executes. You choose it each time you start a run.

Target Cost What you need
Modal Paid per second; the Starter plan includes $30 of compute a month Modal token ID and secret
RunPod Paid per second RunPod API key
Hugging Face Jobs Paid, billed to your Hugging Face account Hugging Face token
Kaggle Free (2× T4 GPUs, about 30 GPU hours a week) Kaggle API token, phone-verified Kaggle account
Notebook Free tiers available (Colab, Lightning or any Jupyter) Nothing: you download a notebook and run it
My computer Free A one-time setup of your computer

Details and advice on choosing: Running pipelines and Run on your own computer.

API keys: yours, billed to you

Tuneline Studio does not sell compute. Every run uses your own accounts:

  • GPU time is billed by the provider (Modal, RunPod, Hugging Face) directly to you.
  • Models, adapters and GGUF files are pushed to your Hugging Face account.
  • Keys are saved under Settings → API keys, stored encrypted, and the app only ever shows their last four characters.

A Hugging Face token with write access is needed for almost every pipeline. Other keys are needed only for the target you pick or for particular steps; for example, Deploy endpoint needs a RunPod key when it serves on RunPod Serverless. The editor lists the keys a pipeline uses and whether each one is saved. See API keys and security.

Registry

The Registry holds every model version you decide to keep, with its scores, model card, stage (Staging, Production or Archived) and lineage: which dataset version and which run produced it, and where it is deployed. The Publish and register step adds a new version automatically at the end of a run. You can also start a new pipeline from a registered model with the Registered model step. See Registry.

Deployments

A deployment is a running OpenAI-compatible endpoint for one of your models, on RunPod Serverless, Hugging Face Inference Endpoints or Modal. You can create one from the Deployments page or with the Deploy endpoint step at the end of a pipeline. Endpoints scale down when idle, and you are billed by the provider for the time they run. See Deployments.

Golden sets

A golden set is a small, hand-picked collection of example conversations with the answers you expect. You build golden sets in the Playground (for example with Save to golden set on a good answer) and use them in pipelines: Load dataset can read a golden set as its source, so you can evaluate every new model on the same trusted examples. See Playground and Evaluation and quality gates.

How a run works

This is what happens between pressing Start run and seeing results.

  1. The studio saves your graph. Any unsaved edits are saved first, so the run uses exactly what you see.
  2. The server compiles a run spec. It checks the pipeline again (every input connected, types match, settings valid), checks that the keys the pipeline and the target need are saved, fills in every default, and stores the result on the run together with a new run number.
  3. The job is launched on the target. For Modal, RunPod, Hugging Face Jobs and Kaggle, Tuneline Studio starts the job with your keys. For Notebook you download a notebook and run it; for My computer your worker picks the run up.
  4. The runner executes the steps. Inside the job, the Tuneline runner installs itself, reads the spec, and works through the steps in order. For each step it first checks the cache, then either reuses earlier results or runs the step.
  5. Status, logs and metrics stream back live. Every couple of seconds the runner reports step statuses, progress messages, log lines and training metrics. The pipeline editor and the run page update as they arrive; you never need to refresh.
  6. Artifacts go to your Hugging Face account. Adapters, merged models and GGUF files are pushed to your account (private by default), and the run's Artifacts tab links to them.

If a step fails, the steps that depend on it are skipped and the run ends as failed. You can fix the problem and run again; thanks to caching, the steps that already succeeded are reused. To follow a run while it happens, see Monitoring runs.