Quickstart
Fine-tune a small open model on a compatible NVIDIA GPU and see whether it beat the baseline. No Tuned Tensor account.
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 --versionOr npm install -g --ignore-scripts @tuned-tensor/cli. See the TT CLI docs for uninstall and source installs.
The CLI is Apache-2.0 — github.com/tunedtensor/tuned-tensor-cli. See the TT CLI reference for every command.
Step 1: Create a behaviour spec
Scaffold a project. This writes tunedtensor.json and local-runner.json:
mkdir support-adapter && cd support-adapter
tt init \
--name "Support Adapter" \
--model Qwen/Qwen3.5-2B \
--profile sparkReplace both placeholder examples with different, 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": "You are a helpful customer support agent for Acme SaaS...",
"guidelines": [
"Keep responses under 150 words",
"Always acknowledge the user concern before providing a solution"
],
"constraints": [
"Never promise refunds without directing to the refund policy",
"Do not invent pricing"
],
"examples": [
{
"input": "How do I cancel my subscription?",
"output": "I understand you would like to cancel. Go to Settings > Billing > Cancel Plan."
},
{
"input": "I was charged twice this month",
"output": "I am sorry about the double charge. Please contact billing@acme.com."
}
]
}Step 2: Preflight and run
tt doctor tunedtensor.json
tt validate tunedtensor.json
tt models prefetch tunedtensor.json
tt run tunedtensor.jsonCommands discover local-runner.json beside the spec. Use --config /path/to/local-runner.json to select another configuration. 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 per-example improvements and regressions. It is evidence on those cases, not a guarantee of production improvement.
Step 4: Verify and serve
tt models verify local-<run-id>
tt models serve local-<run-id> --config local-runner.jsonActivation is optional and requires a passing generalRegression gate; without that suite, tt models activate fails closed. tt serve active also fails if nothing is activated — it does not silently serve the protected base model. Pass --spec tunedtensor.json when the server should enforce the spec instructions.
Optional: ask the local agent
The /login flow currently requires the published 0.13.1-beta.1 CLI. Opt in with curl -fsSL https://tunedtensor.com/install.sh | TT_VERSION=beta sh. Then open the shell, save a provider key, pick a model, and ask about the run:
tt
› /login openai
› /model openai/gpt-5.6-sol
› What happened in my latest training run?See Agent for /login, /model, /approve, and the coding-agent skill.
Next steps
- Local Training — datasets, regression gates, activation
- TT CLI — command reference and pipelines
- Model recommendations — Qwen, Nemotron, Muse Glimmer