Tuned Tensor

Quickstart

Fine-tune a small open model on a compatible NVIDIA GPU and compare it with the baseline. This local training workflow needs no Tuned Tensor account or access token.

Prerequisites

  • Node.js 22.19 or newer
  • uv
  • A Linux host with a compatible NVIDIA GPU
curl -fsSL https://tunedtensor.com/install.sh | sh
tt --version

Or npm install -g --ignore-scripts @tuned-tensor/cli. See the TT CLI docs for uninstall and source installs.

The CLI is licensed under Apache-2.0. Read the source at github.com/tunedtensor/tuned-tensor-cli. See the TT CLI reference for every command.

Step 1: Create a behaviour spec

The command below creates only tunedtensor.json:

mkdir support-adapter && cd support-adapter
tt init \
  --name "Support Adapter" \
  --model Qwen/Qwen3.5-2B \
  --profile spark

Set the model's instructions in system_prompt and replace both placeholder examples with representative input/output pairs. See the spec file guide for fields.

{
  "name": "Support Adapter",
  "description": "Handles billing, account, and technical support questions",
  "base_model": "Qwen/Qwen3.5-2B",
  "system_prompt": "Answer customer support questions for Acme. Give the next action the customer can take.",
  "guidelines": [
    "Keep responses under 150 words",
    "Answer the question directly"
  ],
  "constraints": [
    "Never promise refunds without directing to the refund policy",
    "Do not invent pricing"
  ],
  "examples": [
    {
      "input": "How do I cancel my subscription?",
      "output": "Go to Settings > Billing > Cancel Plan, then follow the confirmation steps."
    },
    {
      "input": "I was charged twice this month",
      "output": "Contact billing@example.com with both invoice IDs so the billing team can investigate."
    }
  ]
}

Step 2: Check the setup and run

tt doctor tunedtensor.json
tt validate tunedtensor.json
tt models prefetch tunedtensor.json
tt pipeline run --spec tunedtensor.json

Commands read runtime and evaluation settings from tunedtensor.json. Edit those sections in the spec to configure execution and scoring. The run evaluates the baseline, trains a LoRA adapter, then evaluates the tuned model on the same cases.

Step 3: Inspect the report

tt runs list
tt runs report <run-id>

The report compares aggregate pass rate and score, then lists improvements and regressions for each example. These results describe the evaluation cases you supplied. Test on representative cases before deciding whether to use the adapter in production.

Step 4: Verify and serve

tt models verify local-<run-id>
tt serve local-<run-id>

Use tt models activate <model-id> to make an adapter active after its run passes the generalRegression suite. You can serve a verified adapter by its ID without activating it. tt serve active requires an active adapter.

Adapter serving uses the instructions from the saved training spec. To supply that spec explicitly, pass --spec tunedtensor.json. Its instructions must match those used during training.

Optional: ask the local agent

Save your Tuned Tensor access token once for the managed agent, then ask about the run. Local training itself needs no access token:

tt auth login
tt
› What happened in my latest training run?

You can also bring your own OpenRouter key and choose any model. See Agent for /login, /model, /approve, and the instructions for coding agents.

Next steps