Command reference
Tensorant CLI commands for projects, files, versions, training, evaluations, experiments, serving and downloads.
Use tensorant --help or tensorant COMMAND SUBCOMMAND --help for exact arguments. IDs shown below are placeholders for IDs returned by Tensorant. Project commands use --project PROJECT_ID, a configuration file's project_id where supported, or the profile's saved default, in that order.
Global flags --profile NAME, --server URL and --json are accepted before or after the command. --json writes machine-readable output; see Output and exit codes.
Authentication and projects
| Command | Purpose |
|---|---|
auth login --level read |
Browser sign-in; choose read, build or full |
auth login --token-stdin |
Read and save a personal token from standard input |
auth status |
Verify credentials against the service and show the account |
auth logout |
Revoke and remove the saved credential |
projects list |
List accessible projects |
projects show PROJECT_ID |
Inspect one project |
projects use PROJECT_ID |
Verify and save the default project |
projects create NAME --model MODEL_ID |
Check the model and create a project; optional --goal, --instructions, --use-case |
project is an alias of projects. Authentication and profiles describes token precedence and organization selection.
Sources and review
tensorant sources import ./support.csv --project PROJECT_ID --mapping mapping.yaml
tensorant sources import ./held-out.jsonl --purpose evaluation --approve
tensorant sources list --offset 0 --limit 25
tensorant examples list --status pending --limit 20
tensorant examples approve EXAMPLE_ID_1 EXAMPLE_ID_2
tensorant examples reject EXAMPLE_ID_3The mapping file is a JSON or YAML object of column names, for example:
mode: qa
question: prompt
answer: replyFor preference pairs, use mode: preference with prompt, chosen and rejected column mappings. --mapping-json accepts the same object inline. Omit both to let Tensorant recognize supported column names. --approve approves only examples that pass checks.
Import a Hugging Face dataset with explicit subset and split:
tensorant sources import-hf DATASET_ID --config SUBSET --split train \
--max-rows 500 --target-split train --waitFor this command, --config means the Hugging Face subset name, not a configuration file. Use --revision to pin a 40-character commit, --offset or --random-seed to select rows, --mapping for columns and --approve for prior-reviewed data. Held-out upstream splits must remain held out. Obtain dataset subsets, revisions and mappings from the console or MCP dataset preview tools.
sources list supports --search. examples list supports --status, --search, --category, --issue and --import-id, with --offset and --limit for paging. Review results may shorten long content; use the console for detailed editing. Approval and rejection accept up to 500 explicit IDs per request.
Versions
| Command | Purpose |
|---|---|
versions list |
List frozen versions and readiness to create one |
versions create --wait |
Freeze approved examples and wait for the background job |
versions show VERSION_ID |
Inspect coverage and token readiness; optional --max-seq-length |
versions download VERSION_ID --split test --output test.jsonl |
Download a frozen split |
Versions are immutable snapshots. See Versions and splits for data requirements and split rules.
Training and runs
tensorant training gpus --provider runpod --purpose training
tensorant training start --config trial.yaml --preview
tensorant training start --config trial.yaml --yes --wait
tensorant runs list
tensorant runs show RUN_ID
tensorant runs watch RUN_ID --timeout 14400
tensorant runs logs RUN_ID --json
tensorant runs retry RUN_ID --preview
tensorant runs cancel RUN_IDTraining configuration supports SFT and DPO, LoRA and QLoRA, provider and GPU choice, hyperparameters, time limits and hourly-price limits. A full run requires its completed baseline ID. See configuration examples.
runs logs returns all logs and metric history retained by the server. It is a snapshot, not a continuous stream. runs watch considers completed or awaiting_endpoint a successful end to training; the latter still needs an endpoint to evaluate it. runs retry starts a new run from a failed or cancelled run's settings after a fresh spending preview, once its GPU cleanup is complete; it also accepts --yes and --wait. Cancellation requests release the GPU; inspect status to confirm cleanup.
Evaluations and experiments
| Command | Purpose |
|---|---|
evaluations list |
List a project's baseline and tuned evaluations |
evaluations show EVALUATION_ID |
Show status, scores and a page of results, with --offset and --limit |
evaluations start --config baseline.yaml --preview |
Preview requests and costs for a baseline or trained run |
evaluations start --config baseline.yaml --yes --wait |
Confirm and wait for evaluation |
evaluations compare BASELINE_ID TUNED_ID |
Compare the primary metric on the same frozen version |
experiments create --config experiment.yaml |
Persist a draft without starting a GPU |
experiments list |
List project experiments |
experiments show EXPERIMENT_ID |
Inspect configuration, stage, progress and result |
experiments start EXPERIMENT_ID --preview |
Preview starting or continuing a persisted experiment |
experiments watch EXPERIMENT_ID |
Wait until completion or a state requiring attention |
experiments cancel EXPERIMENT_ID |
Request cancellation and cleanup |
Comparison supports --outcome all|improved|unchanged|regressed, --order example|change, --group-by category|recipe|source, and pagination. --min-delta and --require-confidence enable CI quality gates. Comparison rows may be shortened; export evaluations for the full answers.
Experiment start also supports --maximum-compute-estimate-usd, --accept-warnings, --yes and --wait. See durable experiments for a complete configuration and approval behavior.
Activity and background jobs
tensorant activity
tensorant activity --project PROJECT_ID
tensorant jobs show JOB_ID
tensorant jobs watch JOB_ID
tensorant jobs cancel JOB_IDActivity shows organization GPU usage and, with a project, recent jobs. A background job can represent an import, generation, evaluation or version creation. Job cancellation preserves work already stored and does not stop a GPU. Use runs cancel, deployments stop or experiments cancel for the corresponding compute workflow.
Watch commands and commands with --wait use --poll-interval of at least 30 seconds and --timeout in seconds. Interrupting a watch leaves work running on Tensorant.
Serving and published models
| Command | Purpose |
|---|---|
deployments list |
List test deployments, optionally limited by project |
deployments start --config deployment.yaml --preview |
Preview a test deployment; omit --preview to confirm interactively |
deployments stop DEPLOYMENT_ID |
Stop a test deployment and release its GPU |
models check MODEL_ID |
Check access and compatibility, optionally with --revision |
models list |
List published models |
models publish --config published-model.yaml --preview |
Preview publishing a model; requires an owner's Full grant |
Deployment and publishing configurations match the respective start_deployment and publish_model MCP tools, using flat arguments. A temporary deployment configuration is:
project_id: PROJECT_ID
run_id: RUN_ID
gpu: NVIDIA GeForce RTX 4090
max_hours: 0.5
idle_minutes: 5
max_hourly_price: 1
context_length: 4096Omit run_id to deploy the project's base model. Once deployments list shows it ready, evaluate it through endpoint: managed:DEPLOYMENT_ID. Stop it after evaluation.
An always-on publishing configuration is:
project_id: PROJECT_ID
name: support
run_id: RUN_ID
mode: always
gpu: NVIDIA GeForce RTX 4090
days: 1
max_hourly_price: 1
context_length: 4096For wake-on-request publishing, set mode: wake, omit days, choose a pool from training gpus --purpose serverless, and optionally set workers_max, keep_warm_seconds and max_starts_per_day. Both start commands support --yes for explicit noninteractive spending approval. Serving uses RunPod. Manage application API keys and advanced model settings in the console; see Deployments and Publishing.
Downloads
tensorant runs download RUN_ID --output ./adapter.zip
tensorant runs bundle RUN_ID --output ./training-bundle.zip
tensorant versions download VERSION_ID --split train --output ./train.jsonl
tensorant versions download VERSION_ID --split validation --output ./validation.jsonl
tensorant evaluations export EVALUATION_ID --output ./evaluation.jsonRead access permits these downloads. They use authenticated HTTP requests to the MCP service, and organization access is rechecked on the server. Downloads are audited. runs download retrieves a trained adapter, not the base model's weights; runs bundle retrieves the training bundle. Evaluation exports include the full report and answers.
Use --output or -o for the local destination. The CLI streams to a temporary file and places it at the destination only after success. It refuses an existing destination unless you explicitly pass --force. Files must already be available; these commands do not rerun training or evaluation.
Need a hand? Visit troubleshooting