CLI quickstart
Install the Tensorant CLI, sign in, import a local dataset and create a frozen version from your terminal.
This walkthrough imports a local question-and-answer dataset, creates a frozen version and downloads its test split. You need a Tensorant account with a member or owner role and a project. Dataset preparation needs no GPU.
Install
On macOS or Linux, run:
curl -fsSL https://tensorant.io/install.sh | bashThe installer checks the downloaded wheel's SHA-256 checksum, installs uv and Python 3.12 when needed, and puts the CLI in an isolated environment in your user account. It does not need sudo. Windows users can run it inside WSL. You need Bash, curl, and either sha256sum or shasum.
Follow any PATH guidance the installer prints, or open a new terminal, then check the installation:
tensorant --version
tensorant --helpRe-run the same installer command to update to the release currently served by Tensorant. Use this command for updates rather than uv tool upgrade, because the installer installs a verified local wheel.
To inspect the script before running it:
curl -fsSL https://tensorant.io/install.sh -o tensorant-install.sh
less tensorant-install.sh
bash tensorant-install.shbash tensorant-install.sh --help shows installer options. Add --no-modify-path to leave shell startup files unchanged and follow the printed command path. Installation does not sign you in; authorize the CLI separately below.
Source and wheel installation remain supported with Python 3.12+ and uv: run uv tool install ./cli from a Tensorant source checkout, or uv tool install /path/to/tensorant_cli-0.1.0-py3-none-any.whl for a wheel you already have. No PyPI account or package registry release is needed. For a version-specific installer in CI, see Pin the CLI in CI.
Sign in and select a project
tensorant auth login --level build
tensorant auth status
tensorant projects list
tensorant projects use PROJECT_IDChoose your organization in the browser and approve Build access for importing, reviewing and creating versions. Replace PROJECT_ID with the ID from projects list. The CLI saves this project's ID for subsequent project commands. Use --project PROJECT_ID on a command to select another explicitly.
To create a project, choose a supported base model and run:
tensorant projects create support --model Qwen/Qwen2.5-1.5B-InstructThe CLI checks the model before creating the project. Select the newly returned project ID with projects use before proceeding. See Authentication and profiles for multiple organizations and CI tokens.
Import local examples
Your support.jsonl can use custom question and answer columns:
{"prompt":"How do I reset my password?","reply":"Choose Forgot password on the sign-in page and follow the email link."}
{"prompt":"Where can I see my invoices?","reply":"Open Settings, then Billing, and choose the invoice you need."}Those two rows illustrate the format; use enough varied, reviewed examples to meet your project's version requirements. Import the file with explicit column mappings:
tensorant sources import ./support.jsonl \
--mapping-json '{"mode":"qa","question":"prompt","answer":"reply"}'
tensorant sources list
tensorant examples list --status pendingLocal files are uploaded directly from your machine through a one-time link. Tensorant accepts the same file formats and limits as the console, up to 25 MB per file. The result reports added examples, duplicates, warnings and problems. For larger datasets, split the file or use the Hugging Face import command.
Importing without --approve leaves examples for review. Inspect them in the CLI or console, then approve selected IDs:
tensorant examples approve EXAMPLE_ID_1 EXAMPLE_ID_2If your data has already been reviewed, adding --approve to the import approves only examples that pass the server's checks. Use --purpose evaluation for held-out test data so those examples are never used for training. See Training or evaluation data.
Freeze a version and retrieve its data
tensorant versions list
tensorant versions create --wait
tensorant versions list
tensorant versions show VERSION_ID
tensorant versions download VERSION_ID --split test --output ./test.jsonlversions list reports whether the approved data is ready to freeze. versions create starts a background job; --wait waits up to one hour by default. Use the returned version ID, or find it with versions list, for the next commands. A version freezes the reviewed examples and their train, validation and test assignments. Review version rules if creation reports insufficient or incompatible data.
Downloads refuse to overwrite an existing file unless you pass --force. The command writes the destination only after a successful download.
Evaluate and train
An evaluation needs an endpoint connected by your organization. Training also needs Full access, storage and a supported GPU provider. Set up those connections in the console, then follow Automation and configuration for complete baseline, training and experiment configurations.
tensorant evaluations start --config baseline.yaml --preview
tensorant auth login --level full
tensorant training gpus --provider runpod
tensorant training start --config trial.yaml --previewThe preview commands inspect readiness and costs without starting the operation. Omit --preview for an interactive confirmation, or use --yes when a script is explicitly authorized to spend. Keep runtime and price limits in training configuration. See the command reference for monitoring, cancellation and outputs.
Need a hand? Visit troubleshooting